diff options
author | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2023-04-12 18:25:36 +0200 |
---|---|---|
committer | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2023-04-12 18:25:36 +0200 |
commit | cd5cf0e5ada33f8a2df7e641037c3d8971c8fb4e (patch) | |
tree | f0c65fefd319456682992a3a0a979f81951e7064 /recipes-bsp | |
parent | fe6310ad86d33fd049a1bae4b60eed7b044d6832 (diff) |
alsa-state: add bbappend with verdin-am62 specific asound.conf/state files
Add bbappend with verdin-am62 specific asound.conf and asound.state
files both for the Dahlia (no such device tree during bring-up as of
yet) and the Development board.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Diffstat (limited to 'recipes-bsp')
5 files changed, 1778 insertions, 0 deletions
diff --git a/recipes-bsp/alsa-state/alsa-state.bbappend b/recipes-bsp/alsa-state/alsa-state.bbappend new file mode 100644 index 0000000..822ab1c --- /dev/null +++ b/recipes-bsp/alsa-state/alsa-state.bbappend @@ -0,0 +1,40 @@ +FILESEXTRAPATHS:prepend := "${THISDIR}/alsa-state/:" + +# make this machine specific, as we have different codecs with different settings +PACKAGE_ARCH:tdx = "${MACHINE_ARCH}" + +SRC_URI:append:am62xx:tdx = " \ + file://asound-dahlia.conf \ + file://asound-dahlia.state \ + file://asound-dev.conf \ + file://asound-dev.state \ +" + +FILES:${PN} += "${sysconfdir}/asound-*.conf" + +do_install:append:am62xx:tdx () { + # Remove the default asound.conf, we need set up asound.conf dynamically + # at runtime to support both dev/dahlia boards. + rm -f ${D}${sysconfdir}/asound.conf + rm -f ${D}${localstatedir}/lib/alsa/asound.state + install -m 0644 ${WORKDIR}/asound-*.conf ${D}${sysconfdir} + install -m 0644 ${WORKDIR}/asound-*.state ${D}${localstatedir}/lib/alsa +} + +# Invalidate the default pkg_postinst in oe-core, this ensures our ontarget +# postinst to be the only one to run during package installation. +pkg_postinst:${PN}:am62xx:tdx () { +} + +pkg_postinst_ontarget:${PN}:am62xx:tdx () { + if grep -q "Development" /proc/device-tree/model; then + board="dev" + else + board="dahlia" + fi + + mv /etc/asound-$board.conf /etc/asound.conf + mv /var/lib/alsa/asound-$board.state /var/lib/alsa/asound.state + rm -f /etc/asound-*.conf + rm -f /var/lib/alsa/asound-*.state +} diff --git a/recipes-bsp/alsa-state/alsa-state/verdin-am62/asound-dahlia.conf b/recipes-bsp/alsa-state/alsa-state/verdin-am62/asound-dahlia.conf new file mode 100644 index 0000000..b487974 --- /dev/null +++ b/recipes-bsp/alsa-state/alsa-state/verdin-am62/asound-dahlia.conf @@ -0,0 +1,250 @@ +defaults.pcm.rate_converter "linear" + +pcm.default_card{ +type hw +card "verdinwm8904" +} + +pcm.dmix_48000{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 48000 +} +} + +pcm.dmix_44100{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 44100 +} +} + +pcm.dmix_32000{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 32000 +} +} + +pcm.dmix_24000{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 24000 +} +} + +pcm.dmix_22050{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 22050 +} +} + +pcm.dmix_16000{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 16000 +} +} + +pcm.dmix_12000{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 12000 +} +} + +pcm.dmix_11025{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 11025 +} +} + +pcm.dmix_8000{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 8000 +} +} + +pcm.!dsnoop_48000{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 48000 +} +} + +pcm.!dsnoop_44100{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 44100 +} +} + +pcm.!dsnoop_32000{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 32000 +} +} + +pcm.!dsnoop_24000{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 24000 +} +} + +pcm.!dsnoop_22050{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 22050 +} +} + +pcm.!dsnoop_16000{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 16000 +} +} + +pcm.!dsnoop_12000{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 12000 +} +} + +pcm.!dsnoop_11025{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 11025 +} +} + +pcm.!dsnoop_8000{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 8000 +} +} + +pcm.asymed{ +type asym +playback.pcm "dmix_48000" +capture.pcm "dsnoop_48000" +} + +pcm.dsp0{ +type plug +slave.pcm "asymed" +} + +pcm.!default{ +type plug +route_policy "average" +slave.pcm "asymed" +} + +ctl.!default{ +type hw +card "verdinwm8904" +} + +ctl.mixer0{ +type hw +card "verdinwm8904" +} + diff --git a/recipes-bsp/alsa-state/alsa-state/verdin-am62/asound-dahlia.state b/recipes-bsp/alsa-state/alsa-state/verdin-am62/asound-dahlia.state new file mode 100644 index 0000000..cb4455b --- /dev/null +++ b/recipes-bsp/alsa-state/alsa-state/verdin-am62/asound-dahlia.state @@ -0,0 +1,519 @@ +state.verdinwm8904 { + control.1 { + iface MIXER + name 'EQ1 Volume' + value 12 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 24' + dbmin -1200 + dbmax 1200 + dbvalue.0 0 + } + } + control.2 { + iface MIXER + name 'EQ2 Volume' + value 12 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 24' + dbmin -1200 + dbmax 1200 + dbvalue.0 0 + } + } + control.3 { + iface MIXER + name 'EQ3 Volume' + value 12 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 24' + dbmin -1200 + dbmax 1200 + dbvalue.0 0 + } + } + control.4 { + iface MIXER + name 'EQ4 Volume' + value 12 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 24' + dbmin -1200 + dbmax 1200 + dbvalue.0 0 + } + } + control.5 { + iface MIXER + name 'EQ5 Volume' + value 12 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 24' + dbmin -1200 + dbmax 1200 + dbvalue.0 0 + } + } + control.6 { + iface MIXER + name 'Digital Capture Volume' + value.0 96 + value.1 96 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 119' + dbmin -9999999 + dbmax 1725 + dbvalue.0 0 + dbvalue.1 0 + } + } + control.7 { + iface MIXER + name 'Left Caputure Mode' + value Single-Ended + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 Single-Ended + item.1 'Differential Line' + item.2 'Differential Mic' + } + } + control.8 { + iface MIXER + name 'Right Capture Mode' + value Single-Ended + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 Single-Ended + item.1 'Differential Line' + item.2 'Differential Mic' + } + } + control.9 { + iface MIXER + name 'Capture Volume' + value.0 24 + value.1 24 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 31' + } + } + control.10 { + iface MIXER + name 'Capture Switch' + value.0 true + value.1 true + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.11 { + iface MIXER + name 'High Pass Filter Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.12 { + iface MIXER + name 'High Pass Filter Mode' + value Hi-fi + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 Hi-fi + item.1 'Voice 1' + item.2 'Voice 2' + item.3 'Voice 3' + } + } + control.13 { + iface MIXER + name 'ADC 128x OSR Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.14 { + iface MIXER + name 'Digital Playback Boost Volume' + value 0 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 3' + dbmin 0 + dbmax 1800 + dbvalue.0 0 + } + } + control.15 { + iface MIXER + name 'Digital Playback Volume' + value.0 88 + value.1 88 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 96' + dbmin -9999999 + dbmax 0 + dbvalue.0 -600 + dbvalue.1 -600 + } + } + control.16 { + iface MIXER + name 'Headphone Volume' + value.0 43 + value.1 43 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 63' + dbmin -5700 + dbmax 600 + dbvalue.0 -1400 + dbvalue.1 -1400 + } + } + control.17 { + iface MIXER + name 'Headphone Switch' + value.0 true + value.1 true + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.18 { + iface MIXER + name 'Headphone ZC Switch' + value.0 true + value.1 true + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.19 { + iface MIXER + name 'Line Output Volume' + value.0 0 + value.1 0 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 63' + dbmin -5700 + dbmax 600 + dbvalue.0 -5700 + dbvalue.1 -5700 + } + } + control.20 { + iface MIXER + name 'Line Output Switch' + value.0 false + value.1 false + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.21 { + iface MIXER + name 'Line Output ZC Switch' + value.0 true + value.1 true + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.22 { + iface MIXER + name 'EQ Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.23 { + iface MIXER + name 'DRC Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.24 { + iface MIXER + name 'DRC Path' + value ADC + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 ADC + item.1 DAC + } + } + control.25 { + iface MIXER + name 'DAC OSRx2 Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.26 { + iface MIXER + name 'DAC Deemphasis Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.27 { + iface MIXER + name 'Digital Sidetone Volume' + value.0 0 + value.1 0 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 15' + dbmin -3600 + dbmax 900 + dbvalue.0 -3600 + dbvalue.1 -3600 + } + } + control.28 { + iface MIXER + name 'Left Capture Mux' + value IN1L + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 IN1L + item.1 IN2L + item.2 IN3L + } + } + control.29 { + iface MIXER + name 'Left Capture Inverting Mux' + value IN1L + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 IN1L + item.1 IN2L + item.2 IN3L + } + } + control.30 { + iface MIXER + name 'Right Capture Mux' + value IN1R + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 IN1R + item.1 IN2R + item.2 IN3R + } + } + control.31 { + iface MIXER + name 'Right Capture Inverting Mux' + value IN1R + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 IN1R + item.1 IN2R + item.2 IN3R + } + } + control.32 { + iface MIXER + name 'AIFOUTL Mux' + value Left + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 Left + item.1 Right + } + } + control.33 { + iface MIXER + name 'AIFOUTR Mux' + value Right + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 Left + item.1 Right + } + } + control.34 { + iface MIXER + name 'DACL Mux' + value Left + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 Left + item.1 Right + } + } + control.35 { + iface MIXER + name 'DACR Mux' + value Right + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 Left + item.1 Right + } + } + control.36 { + iface MIXER + name 'Left Sidetone' + value None + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 None + item.1 Left + item.2 Right + } + } + control.37 { + iface MIXER + name 'Right Sidetone' + value None + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 None + item.1 Left + item.2 Right + } + } + control.38 { + iface MIXER + name 'HPL Mux' + value DAC + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 DAC + item.1 Bypass + } + } + control.39 { + iface MIXER + name 'HPR Mux' + value DAC + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 DAC + item.1 Bypass + } + } + control.40 { + iface MIXER + name 'LINEL Mux' + value DAC + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 DAC + item.1 Bypass + } + } + control.41 { + iface MIXER + name 'LINER Mux' + value DAC + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 DAC + item.1 Bypass + } + } +} diff --git a/recipes-bsp/alsa-state/alsa-state/verdin-am62/asound-dev.conf b/recipes-bsp/alsa-state/alsa-state/verdin-am62/asound-dev.conf new file mode 100644 index 0000000..9a85c0f --- /dev/null +++ b/recipes-bsp/alsa-state/alsa-state/verdin-am62/asound-dev.conf @@ -0,0 +1,250 @@ +defaults.pcm.rate_converter "linear" + +pcm.default_card{ +type hw +card "verdinnau8822" +} + +pcm.dmix_48000{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 48000 +} +} + +pcm.dmix_44100{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 44100 +} +} + +pcm.dmix_32000{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 32000 +} +} + +pcm.dmix_24000{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 24000 +} +} + +pcm.dmix_22050{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 22050 +} +} + +pcm.dmix_16000{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 16000 +} +} + +pcm.dmix_12000{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 12000 +} +} + +pcm.dmix_11025{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 11025 +} +} + +pcm.dmix_8000{ +type dmix +ipc_key 5678293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 8000 +} +} + +pcm.!dsnoop_48000{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 48000 +} +} + +pcm.!dsnoop_44100{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 44100 +} +} + +pcm.!dsnoop_32000{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 32000 +} +} + +pcm.!dsnoop_24000{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 24000 +} +} + +pcm.!dsnoop_22050{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 22050 +} +} + +pcm.!dsnoop_16000{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 16000 +} +} + +pcm.!dsnoop_12000{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 12000 +} +} + +pcm.!dsnoop_11025{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 11025 +} +} + +pcm.!dsnoop_8000{ +type dsnoop +ipc_key 5778293 +ipc_key_add_uid yes +slave{ +pcm "default_card" +period_time 40000 +format S16_LE +rate 8000 +} +} + +pcm.asymed{ +type asym +playback.pcm "dmix_48000" +capture.pcm "dsnoop_48000" +} + +pcm.dsp0{ +type plug +slave.pcm "asymed" +} + +pcm.!default{ +type plug +route_policy "average" +slave.pcm "asymed" +} + +ctl.!default{ +type hw +card "verdinnau8822" +} + +ctl.mixer0{ +type hw +card "verdinnau8822" +} + diff --git a/recipes-bsp/alsa-state/alsa-state/verdin-am62/asound-dev.state b/recipes-bsp/alsa-state/alsa-state/verdin-am62/asound-dev.state new file mode 100644 index 0000000..da26936 --- /dev/null +++ b/recipes-bsp/alsa-state/alsa-state/verdin-am62/asound-dev.state @@ -0,0 +1,719 @@ +state.verdinnau8822 { + control.1 { + iface MIXER + name 'ADC Companding' + value Off + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 Off + item.1 NC + item.2 u-law + item.3 A-law + } + } + control.2 { + iface MIXER + name 'DAC Companding' + value Off + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 Off + item.1 NC + item.2 u-law + item.3 A-law + } + } + control.3 { + iface MIXER + name 'EQ Function' + value Playback + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 Capture + item.1 Playback + } + } + control.4 { + iface MIXER + name 'EQ Parameters' + value '012c002c002c002c002c' + comment { + access 'read write' + type BYTES + count 10 + } + } + control.5 { + iface MIXER + name 'DAC Inversion Switch' + value.0 false + value.1 false + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.6 { + iface MIXER + name 'PCM Volume' + value.0 215 + value.1 215 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 255' + dbmin -9999999 + dbmax 0 + dbvalue.0 -2000 + dbvalue.1 -2000 + } + } + control.7 { + iface MIXER + name 'High Pass Filter Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.8 { + iface MIXER + name 'High Pass Cut Off' + value 0 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 7' + } + } + control.9 { + iface MIXER + name 'ADC Inversion Switch' + value.0 false + value.1 false + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.10 { + iface MIXER + name 'ADC Volume' + value.0 255 + value.1 255 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 255' + dbmin -9999999 + dbmax 0 + dbvalue.0 0 + dbvalue.1 0 + } + } + control.11 { + iface MIXER + name 'DAC Limiter Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.12 { + iface MIXER + name 'DAC Limiter Decay' + value 3 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 15' + } + } + control.13 { + iface MIXER + name 'DAC Limiter Attack' + value 2 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 15' + } + } + control.14 { + iface MIXER + name 'DAC Limiter Threshold' + value 0 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 7' + } + } + control.15 { + iface MIXER + name 'DAC Limiter Volume' + value 0 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 12' + dbmin 0 + dbmax 1200 + dbvalue.0 0 + } + } + control.16 { + iface MIXER + name 'ALC Mode' + value Normal + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 Normal + item.1 Limiter + } + } + control.17 { + iface MIXER + name 'ALC Enable Switch' + value Off + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 Off + item.1 Right + item.2 Left + item.3 Both + } + } + control.18 { + iface MIXER + name 'ALC Min Gain' + value 0 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 7' + } + } + control.19 { + iface MIXER + name 'ALC Max Gain' + value 7 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 7' + } + } + control.20 { + iface MIXER + name 'ALC Hold' + value 0 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 10' + } + } + control.21 { + iface MIXER + name 'ALC Target' + value 11 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 15' + } + } + control.22 { + iface MIXER + name 'ALC Decay' + value 3 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 10' + } + } + control.23 { + iface MIXER + name 'ALC Attack' + value 2 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 10' + } + } + control.24 { + iface MIXER + name 'ALC Noise Gate Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.25 { + iface MIXER + name 'ALC Noise Gate Threshold' + value 0 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 7' + } + } + control.26 { + iface MIXER + name 'PGA ZC Switch' + value.0 false + value.1 false + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.27 { + iface MIXER + name 'PGA Volume' + value.0 16 + value.1 16 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 63' + dbmin -1200 + dbmax 3525 + dbvalue.0 0 + dbvalue.1 0 + } + } + control.28 { + iface MIXER + name 'Headphone ZC Switch' + value.0 false + value.1 false + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.29 { + iface MIXER + name 'Headphone Playback Switch' + value.0 true + value.1 true + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.30 { + iface MIXER + name 'Headphone Volume' + value.0 57 + value.1 57 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 63' + dbmin -5700 + dbmax 600 + dbvalue.0 0 + dbvalue.1 0 + } + } + control.31 { + iface MIXER + name 'Speaker ZC Switch' + value.0 false + value.1 false + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.32 { + iface MIXER + name 'Speaker Playback Switch' + value.0 true + value.1 true + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.33 { + iface MIXER + name 'Speaker Volume' + value.0 57 + value.1 57 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 63' + dbmin -5700 + dbmax 600 + dbvalue.0 0 + dbvalue.1 0 + } + } + control.34 { + iface MIXER + name 'AUXOUT Playback Switch' + value.0 true + value.1 true + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.35 { + iface MIXER + name 'PGA Boost Volume' + value.0 1 + value.1 1 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 1' + dbmin 0 + dbmax 2000 + dbvalue.0 2000 + dbvalue.1 2000 + } + } + control.36 { + iface MIXER + name 'L2/R2 Boost Volume' + value.0 0 + value.1 0 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 7' + dbmin -9999999 + dbmax 600 + dbvalue.0 -9999999 + dbvalue.1 -9999999 + } + } + control.37 { + iface MIXER + name 'Aux Boost Volume' + value.0 0 + value.1 0 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 7' + dbmin -9999999 + dbmax 600 + dbvalue.0 -9999999 + dbvalue.1 -9999999 + } + } + control.38 { + iface MIXER + name 'DAC 128x Oversampling Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.39 { + iface MIXER + name 'ADC 128x Oversampling Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.40 { + iface MIXER + name 'Left Output Mixer LINMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.41 { + iface MIXER + name 'Left Output Mixer LAUX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.42 { + iface MIXER + name 'Left Output Mixer LDAC Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.43 { + iface MIXER + name 'Left Output Mixer RDAC Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.44 { + iface MIXER + name 'Right Output Mixer RINMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.45 { + iface MIXER + name 'Right Output Mixer RAUX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.46 { + iface MIXER + name 'Right Output Mixer RDAC Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.47 { + iface MIXER + name 'Right Output Mixer LDAC Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.48 { + iface MIXER + name 'AUX1 Output Mixer RDAC Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.49 { + iface MIXER + name 'AUX1 Output Mixer RMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.50 { + iface MIXER + name 'AUX1 Output Mixer RINMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.51 { + iface MIXER + name 'AUX1 Output Mixer LDAC Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.52 { + iface MIXER + name 'AUX1 Output Mixer LMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.53 { + iface MIXER + name 'AUX2 Output Mixer LDAC Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.54 { + iface MIXER + name 'AUX2 Output Mixer LMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.55 { + iface MIXER + name 'AUX2 Output Mixer LINMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.56 { + iface MIXER + name 'AUX2 Output Mixer AUX1MIX Output Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.57 { + iface MIXER + name 'Left Input Mixer L2 Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.58 { + iface MIXER + name 'Left Input Mixer MicN Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.59 { + iface MIXER + name 'Left Input Mixer MicP Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.60 { + iface MIXER + name 'Right Input Mixer R2 Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.61 { + iface MIXER + name 'Right Input Mixer MicN Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.62 { + iface MIXER + name 'Right Input Mixer MicP Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.63 { + iface MIXER + name 'Digital Loopback Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } +} |