From d5fad34220d5c23d957600c8310c58006bd6c594 Mon Sep 17 00:00:00 2001 From: Hiago De Franco Date: Tue, 9 Apr 2024 15:03:27 -0300 Subject: alsa: Add alsa-ucm-conf-tdx recipe Add alsa-ucm-conf-tdx (ALSA Use Case Manager with Toradex hardware configurations) recipe and dahlia/dev configuration files for Alsa UCM. The ALSA UCM is used to set different audio input/output configurations based on the audio card name used by the board. With UCM, a configuration file for codec WM8904 (Dahlia board) or codec NAU8822 (Development board) will be automatically selected during boot. This recipe is dependent on the OE upstream recipe alsa-ucm-conf. Related-to: ELB-4916 Signed-off-by: Hiago De Franco (cherry picked from commit 5183100ea2bb3fe29702f96657e05f4e905433b5) --- .../alsa-ucm-conf-tdx/verdin-nau8822-HiFi.conf | 17 +++++++++++ .../alsa/alsa-ucm-conf-tdx/verdin-nau8822.conf | 8 +++++ .../alsa/alsa-ucm-conf-tdx/verdin-wm8904-HiFi.conf | 35 ++++++++++++++++++++++ .../alsa/alsa-ucm-conf-tdx/verdin-wm8904.conf | 8 +++++ recipes-multimedia/alsa/alsa-ucm-conf-tdx_1.0.bb | 33 ++++++++++++++++++++ 5 files changed, 101 insertions(+) create mode 100644 recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-nau8822-HiFi.conf create mode 100644 recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-nau8822.conf create mode 100644 recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-wm8904-HiFi.conf create mode 100644 recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-wm8904.conf create mode 100644 recipes-multimedia/alsa/alsa-ucm-conf-tdx_1.0.bb diff --git a/recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-nau8822-HiFi.conf b/recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-nau8822-HiFi.conf new file mode 100644 index 0000000..42aeffd --- /dev/null +++ b/recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-nau8822-HiFi.conf @@ -0,0 +1,17 @@ +# Use case configuration for Toradex Verdin Development Carrier Board + +SectionDevice."Headphones" { + Comment "Headphones" + + BootSequence [ + cset "name='Headphone Volume' 50%" + ] + + EnableSequence [ + cset "name='Headphone Switch' on" + ] + + DisableSequence [ + cset "name='Headphone Switch' off" + ] +} diff --git a/recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-nau8822.conf b/recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-nau8822.conf new file mode 100644 index 0000000..fc3466b --- /dev/null +++ b/recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-nau8822.conf @@ -0,0 +1,8 @@ +# Use case configuration for Toradex Verdin Development Carrier Board + +Syntax 4 + +SectionUseCase."HiFi" { + File "/Toradex/nau8822/verdin-nau8822-HiFi.conf" + Comment "Default" +} diff --git a/recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-wm8904-HiFi.conf b/recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-wm8904-HiFi.conf new file mode 100644 index 0000000..f4486cb --- /dev/null +++ b/recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-wm8904-HiFi.conf @@ -0,0 +1,35 @@ +# Use case configuration for Toradex Dahlia Carrier Board + +SectionDevice."Headphone" { + Comment "Headphone" + + BootSequence [ + cset "name='Headphone Volume' 50%" + ] + + EnableSequence [ + cset "name='Headphone Switch' on" + ] + + DisableSequence [ + cset "name='Headphone Switch' off" + ] +} + +SectionDevice."Microphone" { + Comment "Microphone" + + BootSequence [ + cset "name='Left Capture Inverting Mux' 'IN1L'" + cset "name='Right Capture Inverting Mux' 'IN1R'" + cset "name='Capture Volume' 31" + ] + + EnableSequence [ + cset "name='Capture Switch' on" + ] + + DisableSequence [ + cset "name='Capture Switch' off" + ] +} diff --git a/recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-wm8904.conf b/recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-wm8904.conf new file mode 100644 index 0000000..64b68ce --- /dev/null +++ b/recipes-multimedia/alsa/alsa-ucm-conf-tdx/verdin-wm8904.conf @@ -0,0 +1,8 @@ +# Use case configuration for Toradex Dahlia Carrier Board + +Syntax 4 + +SectionUseCase."HiFi" { + File "/Toradex/wm8904/verdin-wm8904-HiFi.conf" + Comment "Default" +} diff --git a/recipes-multimedia/alsa/alsa-ucm-conf-tdx_1.0.bb b/recipes-multimedia/alsa/alsa-ucm-conf-tdx_1.0.bb new file mode 100644 index 0000000..06b19c5 --- /dev/null +++ b/recipes-multimedia/alsa/alsa-ucm-conf-tdx_1.0.bb @@ -0,0 +1,33 @@ +SUMMARY = "ALSA Use Case Manager configuration for Toradex Hardware" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/BSD-3-Clause;md5=550794465ba0ec5312d6919e203a55f9" + +RDEPENDS:${PN} = "alsa-ucm-conf" + +SRC_URI = "\ + file://verdin-nau8822-HiFi.conf \ + file://verdin-nau8822.conf \ + file://verdin-wm8904-HiFi.conf \ + file://verdin-wm8904.conf \ +" + +do_install () { + wm8904_dir="${D}${datadir}/alsa/ucm2/Toradex/wm8904" + nau8822_dir="${D}${datadir}/alsa/ucm2/Toradex/nau8822" + + install -d $wm8904_dir + install -m 0644 ${WORKDIR}/verdin-wm8904-HiFi.conf $wm8904_dir + install -m 0644 ${WORKDIR}/verdin-wm8904.conf $wm8904_dir + + install -d $nau8822_dir + install -m 0644 ${WORKDIR}/verdin-nau8822-HiFi.conf $nau8822_dir + install -m 0644 ${WORKDIR}/verdin-nau8822.conf $nau8822_dir + + install -d "${D}${datadir}/alsa/ucm2/conf.d/simple-card" + ln -fsr ${wm8904_dir}/verdin-wm8904.conf \ + "${D}${datadir}/alsa/ucm2/conf.d/simple-card" + ln -fsr ${nau8822_dir}/verdin-nau8822.conf \ + "${D}${datadir}/alsa/ucm2/conf.d/simple-card" +} + +FILES:${PN} = "${datadir}" -- cgit v1.2.3