diff options
Diffstat (limited to 'recipes-bsp/alsa-state')
-rw-r--r-- | recipes-bsp/alsa-state/alsa-state.bbappend | 40 | ||||
-rw-r--r-- | recipes-bsp/alsa-state/alsa-state/colibri-imx7-emmc/asound.state | 259 | ||||
-rw-r--r-- | recipes-bsp/alsa-state/alsa-state/colibri-imx7/asound.state | 259 | ||||
-rw-r--r-- | recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dahlia.conf | 250 | ||||
-rw-r--r-- | recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dahlia.state (renamed from recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound.state) | 0 | ||||
-rw-r--r-- | recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dev.conf | 250 | ||||
-rw-r--r-- | recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dev.state | 729 | ||||
-rw-r--r-- | recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dahlia.conf | 250 | ||||
-rw-r--r-- | recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dahlia.state | 519 | ||||
-rw-r--r-- | recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dev.conf | 250 | ||||
-rw-r--r-- | recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dev.state | 729 |
11 files changed, 3515 insertions, 20 deletions
diff --git a/recipes-bsp/alsa-state/alsa-state.bbappend b/recipes-bsp/alsa-state/alsa-state.bbappend index 05bfa70..5a1cef7 100644 --- a/recipes-bsp/alsa-state/alsa-state.bbappend +++ b/recipes-bsp/alsa-state/alsa-state.bbappend @@ -1,4 +1,40 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/alsa-state/:" -#make this machine specific, as we have different codecs with different settings -PACKAGE_ARCH = "${MACHINE_ARCH}" +# make this machine specific, as we have different codecs with different settings +PACKAGE_ARCH_tdx = "${MACHINE_ARCH}" + +SRC_URI_append_mx8m_tdx = " \ + file://asound-dev.conf \ + file://asound-dahlia.conf \ + file://asound-dev.state \ + file://asound-dahlia.state \ +" + +FILES_${PN} += "${sysconfdir}/asound-*.conf" + +do_install_append_mx8m_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}_mx8m_tdx () { +} + +pkg_postinst_ontarget_${PN}_mx8m_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/colibri-imx7-emmc/asound.state b/recipes-bsp/alsa-state/alsa-state/colibri-imx7-emmc/asound.state index a578e3d..8497618 100644 --- a/recipes-bsp/alsa-state/alsa-state/colibri-imx7-emmc/asound.state +++ b/recipes-bsp/alsa-state/alsa-state/colibri-imx7-emmc/asound.state @@ -1,4 +1,4 @@ -state.imx7colibrisgtl { +state.imx7sgtl5000 { control.1 { iface MIXER name 'PCM Playback Volume' @@ -45,6 +45,16 @@ state.imx7colibrisgtl { } control.5 { iface MIXER + name 'Capture Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.6 { + iface MIXER name 'Headphone Playback Volume' value.0 103 value.1 103 @@ -59,7 +69,17 @@ state.imx7colibrisgtl { dbvalue.1 0 } } - control.6 { + control.7 { + iface MIXER + name 'Headphone Playback Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.8 { iface MIXER name 'Headphone Playback ZC Switch' value true @@ -69,7 +89,7 @@ state.imx7colibrisgtl { count 1 } } - control.7 { + control.9 { iface MIXER name 'Mic Volume' value 0 @@ -83,7 +103,202 @@ state.imx7colibrisgtl { dbvalue.0 0 } } - control.8 { + control.10 { + iface MIXER + name 'Lineout Playback Volume' + value.0 18 + value.1 18 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 31' + dbmin -1550 + dbmax 0 + dbvalue.0 -650 + dbvalue.1 -650 + } + } + control.11 { + iface MIXER + name 'Lineout Playback Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.12 { + iface MIXER + name 'DAP Main channel' + value 32768 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 65535' + dbmin 0 + dbmax 65535 + dbvalue.0 32768 + } + } + control.13 { + iface MIXER + name 'DAP Mix channel' + value 0 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 65535' + dbmin 0 + dbmax 65535 + dbvalue.0 0 + } + } + control.14 { + iface MIXER + name 'AVC Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.15 { + iface MIXER + name 'AVC Hard Limiter Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.16 { + iface MIXER + name 'AVC Max Gain Volume' + value 1 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 2' + dbmin 0 + dbmax 1200 + dbvalue.0 600 + } + } + control.17 { + iface MIXER + name 'AVC Integrator Response' + value 1 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 3' + } + } + control.18 { + iface MIXER + name 'AVC Threshold Volume' + value 12 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 96' + dbmin 0 + dbmax 9600 + dbvalue.0 1200 + } + } + control.19 { + iface MIXER + name 'BASS 0' + value 47 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 95' + dbmin -1175 + dbmax 1200 + dbvalue.0 0 + } + } + control.20 { + iface MIXER + name 'BASS 1' + value 47 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 95' + dbmin -1175 + dbmax 1200 + dbvalue.0 0 + } + } + control.21 { + iface MIXER + name 'BASS 2' + value 47 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 95' + dbmin -1175 + dbmax 1200 + dbvalue.0 0 + } + } + control.22 { + iface MIXER + name 'BASS 3' + value 47 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 95' + dbmin -1175 + dbmax 1200 + dbvalue.0 0 + } + } + control.23 { + iface MIXER + name 'BASS 4' + value 47 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 95' + dbmin -1175 + dbmax 1200 + dbvalue.0 0 + } + } + control.24 { + iface MIXER + name 'Capture Mux' + value MIC_IN + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 MIC_IN + item.1 LINE_IN + } + } + control.25 { iface MIXER name 'Headphone Mux' value DAC @@ -95,16 +310,42 @@ state.imx7colibrisgtl { item.1 LINE_IN } } - control.9 { + control.26 { iface MIXER - name 'Capture Mux' - value MIC_IN + name 'Digital Input Mux' + value I2S comment { access 'read write' type ENUMERATED count 1 - item.0 MIC_IN - item.1 LINE_IN + item.0 ADC + item.1 I2S + item.2 Rsvrd + item.3 DAP + } + } + control.27 { + iface MIXER + name 'DAP Mux' + value ADC + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 ADC + item.1 I2S + } + } + control.28 { + iface MIXER + name 'DAP MIX Mux' + value ADC + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 ADC + item.1 I2S } } } diff --git a/recipes-bsp/alsa-state/alsa-state/colibri-imx7/asound.state b/recipes-bsp/alsa-state/alsa-state/colibri-imx7/asound.state index a578e3d..8497618 100644 --- a/recipes-bsp/alsa-state/alsa-state/colibri-imx7/asound.state +++ b/recipes-bsp/alsa-state/alsa-state/colibri-imx7/asound.state @@ -1,4 +1,4 @@ -state.imx7colibrisgtl { +state.imx7sgtl5000 { control.1 { iface MIXER name 'PCM Playback Volume' @@ -45,6 +45,16 @@ state.imx7colibrisgtl { } control.5 { iface MIXER + name 'Capture Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.6 { + iface MIXER name 'Headphone Playback Volume' value.0 103 value.1 103 @@ -59,7 +69,17 @@ state.imx7colibrisgtl { dbvalue.1 0 } } - control.6 { + control.7 { + iface MIXER + name 'Headphone Playback Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.8 { iface MIXER name 'Headphone Playback ZC Switch' value true @@ -69,7 +89,7 @@ state.imx7colibrisgtl { count 1 } } - control.7 { + control.9 { iface MIXER name 'Mic Volume' value 0 @@ -83,7 +103,202 @@ state.imx7colibrisgtl { dbvalue.0 0 } } - control.8 { + control.10 { + iface MIXER + name 'Lineout Playback Volume' + value.0 18 + value.1 18 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 31' + dbmin -1550 + dbmax 0 + dbvalue.0 -650 + dbvalue.1 -650 + } + } + control.11 { + iface MIXER + name 'Lineout Playback Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.12 { + iface MIXER + name 'DAP Main channel' + value 32768 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 65535' + dbmin 0 + dbmax 65535 + dbvalue.0 32768 + } + } + control.13 { + iface MIXER + name 'DAP Mix channel' + value 0 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 65535' + dbmin 0 + dbmax 65535 + dbvalue.0 0 + } + } + control.14 { + iface MIXER + name 'AVC Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.15 { + iface MIXER + name 'AVC Hard Limiter Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.16 { + iface MIXER + name 'AVC Max Gain Volume' + value 1 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 2' + dbmin 0 + dbmax 1200 + dbvalue.0 600 + } + } + control.17 { + iface MIXER + name 'AVC Integrator Response' + value 1 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 3' + } + } + control.18 { + iface MIXER + name 'AVC Threshold Volume' + value 12 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 96' + dbmin 0 + dbmax 9600 + dbvalue.0 1200 + } + } + control.19 { + iface MIXER + name 'BASS 0' + value 47 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 95' + dbmin -1175 + dbmax 1200 + dbvalue.0 0 + } + } + control.20 { + iface MIXER + name 'BASS 1' + value 47 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 95' + dbmin -1175 + dbmax 1200 + dbvalue.0 0 + } + } + control.21 { + iface MIXER + name 'BASS 2' + value 47 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 95' + dbmin -1175 + dbmax 1200 + dbvalue.0 0 + } + } + control.22 { + iface MIXER + name 'BASS 3' + value 47 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 95' + dbmin -1175 + dbmax 1200 + dbvalue.0 0 + } + } + control.23 { + iface MIXER + name 'BASS 4' + value 47 + comment { + access 'read write' + type INTEGER + count 1 + range '0 - 95' + dbmin -1175 + dbmax 1200 + dbvalue.0 0 + } + } + control.24 { + iface MIXER + name 'Capture Mux' + value MIC_IN + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 MIC_IN + item.1 LINE_IN + } + } + control.25 { iface MIXER name 'Headphone Mux' value DAC @@ -95,16 +310,42 @@ state.imx7colibrisgtl { item.1 LINE_IN } } - control.9 { + control.26 { iface MIXER - name 'Capture Mux' - value MIC_IN + name 'Digital Input Mux' + value I2S comment { access 'read write' type ENUMERATED count 1 - item.0 MIC_IN - item.1 LINE_IN + item.0 ADC + item.1 I2S + item.2 Rsvrd + item.3 DAP + } + } + control.27 { + iface MIXER + name 'DAP Mux' + value ADC + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 ADC + item.1 I2S + } + } + control.28 { + iface MIXER + name 'DAP MIX Mux' + value ADC + comment { + access 'read write' + type ENUMERATED + count 1 + item.0 ADC + item.1 I2S } } } diff --git a/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dahlia.conf b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dahlia.conf new file mode 100644 index 0000000..122f912 --- /dev/null +++ b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dahlia.conf @@ -0,0 +1,250 @@ +defaults.pcm.rate_converter "linear" + +pcm.default_card{ +type hw +card "imx8mmwm8904" +} + +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_44100" +capture.pcm "dsnoop_44100" +} + +pcm.dsp0{ +type plug +slave.pcm "asymed" +} + +pcm.!default{ +type plug +route_policy "average" +slave.pcm "asymed" +} + +ctl.!default{ +type hw +card "imx8mmwm8904" +} + +ctl.mixer0{ +type hw +card "imx8mmwm8904" +} + diff --git a/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound.state b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dahlia.state index 1d3e09a..1d3e09a 100644 --- a/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound.state +++ b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dahlia.state diff --git a/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dev.conf b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dev.conf new file mode 100644 index 0000000..c0789f6 --- /dev/null +++ b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dev.conf @@ -0,0 +1,250 @@ +defaults.pcm.rate_converter "linear" + +pcm.default_card{ +type hw +card "imx8mmnau8822" +} + +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_44100" +capture.pcm "dsnoop_44100" +} + +pcm.dsp0{ +type plug +slave.pcm "asymed" +} + +pcm.!default{ +type plug +route_policy "average" +slave.pcm "asymed" +} + +ctl.!default{ +type hw +card "imx8mmnau8822" +} + +ctl.mixer0{ +type hw +card "imx8mmnau8822" +} + diff --git a/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dev.state b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dev.state new file mode 100644 index 0000000..878f82e --- /dev/null +++ b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mm/asound-dev.state @@ -0,0 +1,729 @@ +state.imx8mmnau8822 { + 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 RInversion Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.32 { + iface MIXER + name 'Speaker ZC Switch' + value.0 false + value.1 false + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.33 { + iface MIXER + name 'Speaker Playback Switch' + value.0 true + value.1 true + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.34 { + 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.35 { + iface MIXER + name 'AUXOUT Playback Switch' + value.0 true + value.1 true + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.36 { + 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.37 { + 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.38 { + 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.39 { + iface MIXER + name 'DAC 128x Oversampling Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.40 { + iface MIXER + name 'ADC 128x Oversampling Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.41 { + iface MIXER + name 'Left Output Mixer LINMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.42 { + iface MIXER + name 'Left Output Mixer LAUX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.43 { + iface MIXER + name 'Left Output Mixer LDAC Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.44 { + iface MIXER + name 'Left Output Mixer RDAC Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.45 { + iface MIXER + name 'Right Output Mixer RINMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.46 { + iface MIXER + name 'Right Output Mixer RAUX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.47 { + iface MIXER + name 'Right Output Mixer RDAC Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.48 { + iface MIXER + name 'Right Output Mixer LDAC Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.49 { + iface MIXER + name 'AUX1 Output Mixer RDAC Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.50 { + iface MIXER + name 'AUX1 Output Mixer RMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.51 { + iface MIXER + name 'AUX1 Output Mixer RINMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.52 { + iface MIXER + name 'AUX1 Output Mixer LDAC Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.53 { + iface MIXER + name 'AUX1 Output Mixer LMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.54 { + iface MIXER + name 'AUX2 Output Mixer LDAC Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.55 { + iface MIXER + name 'AUX2 Output Mixer LMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.56 { + iface MIXER + name 'AUX2 Output Mixer LINMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.57 { + iface MIXER + name 'AUX2 Output Mixer AUX1MIX Output Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.58 { + iface MIXER + name 'Left Input Mixer L2 Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.59 { + iface MIXER + name 'Left Input Mixer MicN Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.60 { + iface MIXER + name 'Left Input Mixer MicP Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.61 { + iface MIXER + name 'Right Input Mixer R2 Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.62 { + iface MIXER + name 'Right Input Mixer MicN Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.63 { + iface MIXER + name 'Right Input Mixer MicP Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.64 { + iface MIXER + name 'Digital Loopback Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } +} diff --git a/recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dahlia.conf b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dahlia.conf new file mode 100644 index 0000000..2289bd0 --- /dev/null +++ b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dahlia.conf @@ -0,0 +1,250 @@ +defaults.pcm.rate_converter "linear" + +pcm.default_card{ +type hw +card "imx8mpwm8904" +} + +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_44100" +capture.pcm "dsnoop_44100" +} + +pcm.dsp0{ +type plug +slave.pcm "asymed" +} + +pcm.!default{ +type plug +route_policy "average" +slave.pcm "asymed" +} + +ctl.!default{ +type hw +card "imx8mpwm8904" +} + +ctl.mixer0{ +type hw +card "imx8mpwm8904" +} + diff --git a/recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dahlia.state b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dahlia.state new file mode 100644 index 0000000..194c7bf --- /dev/null +++ b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dahlia.state @@ -0,0 +1,519 @@ +state.imx8mpwm8904 { + 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-imx8mp/asound-dev.conf b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dev.conf new file mode 100644 index 0000000..54941e3 --- /dev/null +++ b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dev.conf @@ -0,0 +1,250 @@ +defaults.pcm.rate_converter "linear" + +pcm.default_card{ +type hw +card "imx8mpnau8822" +} + +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_44100" +capture.pcm "dsnoop_44100" +} + +pcm.dsp0{ +type plug +slave.pcm "asymed" +} + +pcm.!default{ +type plug +route_policy "average" +slave.pcm "asymed" +} + +ctl.!default{ +type hw +card "imx8mpnau8822" +} + +ctl.mixer0{ +type hw +card "imx8mpnau8822" +} + diff --git a/recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dev.state b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dev.state new file mode 100644 index 0000000..125ddf7 --- /dev/null +++ b/recipes-bsp/alsa-state/alsa-state/verdin-imx8mp/asound-dev.state @@ -0,0 +1,729 @@ +state.imx8mpnau8822 { + 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 51 + value.1 51 + comment { + access 'read write' + type INTEGER + count 2 + range '0 - 63' + dbmin -5700 + dbmax 600 + dbvalue.0 -600 + dbvalue.1 -600 + } + } + control.31 { + iface MIXER + name 'Speaker RInversion Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.32 { + iface MIXER + name 'Speaker ZC Switch' + value.0 false + value.1 false + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.33 { + iface MIXER + name 'Speaker Playback Switch' + value.0 true + value.1 true + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.34 { + 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.35 { + iface MIXER + name 'AUXOUT Playback Switch' + value.0 true + value.1 true + comment { + access 'read write' + type BOOLEAN + count 2 + } + } + control.36 { + 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.37 { + 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.38 { + 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.39 { + iface MIXER + name 'DAC 128x Oversampling Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.40 { + iface MIXER + name 'ADC 128x Oversampling Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.41 { + iface MIXER + name 'Left Output Mixer LINMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.42 { + iface MIXER + name 'Left Output Mixer LAUX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.43 { + iface MIXER + name 'Left Output Mixer LDAC Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.44 { + iface MIXER + name 'Left Output Mixer RDAC Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.45 { + iface MIXER + name 'Right Output Mixer RINMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.46 { + iface MIXER + name 'Right Output Mixer RAUX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.47 { + iface MIXER + name 'Right Output Mixer RDAC Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.48 { + iface MIXER + name 'Right Output Mixer LDAC Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.49 { + iface MIXER + name 'AUX1 Output Mixer RDAC Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.50 { + iface MIXER + name 'AUX1 Output Mixer RMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.51 { + iface MIXER + name 'AUX1 Output Mixer RINMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.52 { + iface MIXER + name 'AUX1 Output Mixer LDAC Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.53 { + iface MIXER + name 'AUX1 Output Mixer LMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.54 { + iface MIXER + name 'AUX2 Output Mixer LDAC Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.55 { + iface MIXER + name 'AUX2 Output Mixer LMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.56 { + iface MIXER + name 'AUX2 Output Mixer LINMIX Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.57 { + iface MIXER + name 'AUX2 Output Mixer AUX1MIX Output Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.58 { + iface MIXER + name 'Left Input Mixer L2 Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.59 { + iface MIXER + name 'Left Input Mixer MicN Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.60 { + iface MIXER + name 'Left Input Mixer MicP Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.61 { + iface MIXER + name 'Right Input Mixer R2 Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.62 { + iface MIXER + name 'Right Input Mixer MicN Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.63 { + iface MIXER + name 'Right Input Mixer MicP Switch' + value true + comment { + access 'read write' + type BOOLEAN + count 1 + } + } + control.64 { + iface MIXER + name 'Digital Loopback Switch' + value false + comment { + access 'read write' + type BOOLEAN + count 1 + } + } +} |