distribution/packages/hardware/quirks/devices/Hardkernel ODROID-GO-Ultra/003-audio

261 lines
3.8 KiB
Text
Raw Normal View History

2023-04-02 00:27:13 +00:00
#!/bin/bash
# SPDX-License-Identifier: Apache-2.0
# Copyright (C) 2021-present Fewtarius (https://github.com/fewtarius)
. /etc/profile
### Set a custom device so we don't clobber it.
2023-04-02 16:30:20 +00:00
set-audio set "CUSTOM (UNMANAGED)"
2023-04-02 00:27:13 +00:00
set-audio esset "Master"
2023-05-01 23:34:27 +00:00
amixer sset 'FRDDR_A SINK 1 SEL' 'OUT 1'
amixer sset 'FRDDR_A SRC 1 EN' 'on'
amixer sset 'TDMOUT_B SRC SEL' 'IN 0'
2023-04-02 00:27:13 +00:00
2023-05-01 23:34:27 +00:00
cat <<EOF >/storage/.config/asound.conf
2023-04-02 00:27:13 +00:00
pcm.!default {
type plug
2023-05-01 23:34:27 +00:00
slave.pcm "dmixer"
2023-04-02 00:27:13 +00:00
}
pcm.dmixer {
type dmix
ipc_key 1024
slave {
pcm "hw:0,0"
period_time 0
period_size 4096
buffer_size 131072
2023-05-01 23:34:27 +00:00
rate 96000
2023-04-02 00:27:13 +00:00
}
bindings {
0 0
1 1
}
}
EOF
if [ ! -e "/storage/.config/asound.state" ]
then
cat <<EOF >/storage/.config/asound.state
state.Ultra {
control.1 {
iface MIXER
name 'Master Playback Volume'
2023-05-01 23:34:27 +00:00
value.0 223
value.1 223
2023-04-02 00:27:13 +00:00
comment {
access 'read write'
type INTEGER
count 2
2023-05-01 23:34:27 +00:00
range '0 - 252'
2023-04-02 00:27:13 +00:00
dbmin -9500
dbmax 0
2023-05-01 23:34:27 +00:00
dbvalue.0 -1094
dbvalue.1 -1094
2023-04-02 00:27:13 +00:00
}
}
control.2 {
iface MIXER
name 'Master Capture Volume'
2023-05-01 23:34:27 +00:00
value.0 226
value.1 226
2023-04-02 00:27:13 +00:00
comment {
access 'read write'
type INTEGER
count 2
range '0 - 255'
dbmin -9500
dbmax 0
2023-05-01 23:34:27 +00:00
dbvalue.0 -1081
dbvalue.1 -1081
2023-04-02 00:27:13 +00:00
}
}
control.3 {
iface MIXER
name 'Mic Capture Gain'
2023-05-01 23:34:27 +00:00
value.0 6
value.1 6
2023-04-02 00:27:13 +00:00
comment {
access 'read write'
type INTEGER
count 2
range '0 - 15'
dbmin -1800
dbmax 2700
2023-05-01 23:34:27 +00:00
dbvalue.0 0
dbvalue.1 0
2023-04-02 00:27:13 +00:00
}
}
control.4 {
iface MIXER
name 'TDMOUT_B Lane 0 Volume'
value.0 0
value.1 0
comment {
access 'read write'
type INTEGER
count 2
range '0 - 255'
}
}
control.5 {
iface MIXER
name 'TDMOUT_B Lane 1 Volume'
value.0 0
value.1 0
comment {
access 'read write'
type INTEGER
count 2
range '0 - 255'
}
}
control.6 {
iface MIXER
name 'TDMOUT_B Lane 2 Volume'
2023-04-02 16:30:20 +00:00
value.0 0
value.1 0
2023-04-02 00:27:13 +00:00
comment {
access 'read write'
type INTEGER
count 2
range '0 - 255'
}
}
control.7 {
iface MIXER
name 'TDMOUT_B Lane 3 Volume'
value.0 0
value.1 0
comment {
access 'read write'
type INTEGER
count 2
range '0 - 255'
}
}
control.8 {
iface MIXER
name 'TDMOUT_B Gain Enable Switch'
value false
comment {
access 'read write'
type BOOLEAN
count 1
}
}
control.9 {
iface MIXER
name 'FRDDR_A SRC 1 EN Switch'
value true
comment {
access 'read write'
type BOOLEAN
count 1
}
}
control.10 {
iface MIXER
name 'FRDDR_A SRC 2 EN Switch'
value false
comment {
access 'read write'
type BOOLEAN
count 1
}
}
control.11 {
iface MIXER
name 'FRDDR_A SRC 3 EN Switch'
value false
comment {
access 'read write'
type BOOLEAN
count 1
}
}
control.12 {
iface MIXER
name 'FRDDR_A SINK 1 SEL'
2023-04-02 16:30:20 +00:00
value 'OUT 1'
2023-04-02 00:27:13 +00:00
comment {
access 'read write'
type ENUMERATED
count 1
item.0 'OUT 0'
item.1 'OUT 1'
item.2 'OUT 2'
item.3 'OUT 3'
item.4 'OUT 4'
item.5 'OUT 5'
item.6 'OUT 6'
item.7 'OUT 7'
}
}
control.13 {
iface MIXER
name 'FRDDR_A SINK 2 SEL'
value 'OUT 0'
comment {
access 'read write'
type ENUMERATED
count 1
item.0 'OUT 0'
item.1 'OUT 1'
item.2 'OUT 2'
item.3 'OUT 3'
item.4 'OUT 4'
item.5 'OUT 5'
item.6 'OUT 6'
item.7 'OUT 7'
}
}
control.14 {
iface MIXER
name 'FRDDR_A SINK 3 SEL'
value 'OUT 0'
comment {
access 'read write'
type ENUMERATED
count 1
item.0 'OUT 0'
item.1 'OUT 1'
item.2 'OUT 2'
item.3 'OUT 3'
item.4 'OUT 4'
item.5 'OUT 5'
item.6 'OUT 6'
item.7 'OUT 7'
}
}
control.15 {
iface MIXER
name 'Playback Mux'
2023-04-02 16:30:20 +00:00
value SPK
2023-04-02 00:27:13 +00:00
comment {
access 'read write'
type ENUMERATED
count 1
item.0 HP
item.1 SPK
}
}
2023-05-01 23:34:27 +00:00
control.16 {
2023-04-02 00:27:13 +00:00
iface MIXER
name 'TDMOUT_B SRC SEL'
value 'IN 0'
comment {
access 'read write'
type ENUMERATED
count 1
item.0 'IN 0'
item.1 'IN 1'
item.2 'IN 2'
}
}
}
2023-05-01 23:34:27 +00:00
2023-04-02 00:27:13 +00:00
EOF
fi