]> git.alsa-project.org Git - alsa-ucm-conf.git/commitdiff
ucm2: MediaTek: mt8390-evk: Add support for SOF
authorNícolas F. R. A. Prado <nfraprado@collabora.com>
Tue, 25 Feb 2025 18:10:49 +0000 (15:10 -0300)
committerJaroslav Kysela <perex@perex.cz>
Sat, 22 Mar 2025 17:52:48 +0000 (18:52 +0100)
Add support for MT8390 EVK with the SOF enabled. The only differences
compared to the UCM with SOF disabled is the device number for playback
and capture, which uses the PCMs for the SOF instead, and the number of
channels for capture, which is stereo rather than mono.

Define those parameters as variables for each case, with and without
SOF, and move the common intialization to an init.conf, so the UCM can
be shared by both.

Closes: https://github.com/alsa-project/alsa-ucm-conf/pull/513
Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
ucm2/MediaTek/mt8390-evk/HiFi.conf
ucm2/MediaTek/mt8390-evk/init.conf [new file with mode: 0644]
ucm2/MediaTek/mt8390-evk/mt8390-evk.conf
ucm2/MediaTek/mt8390-evk/sof/sof-mt8390-evk.conf [new file with mode: 0644]
ucm2/conf.d/sof-mt8390-evk/sof-mt8390-evk.conf [new symlink]

index a94adb0cf136d33a4013a3bb7ed0a68e6092cba2..d5ad0c7081d2525c0542c0cbb000724dab73fc55 100644 (file)
@@ -68,7 +68,7 @@ SectionDevice."Speaker" {
        Value {
                PlaybackPriority 400
                PlaybackChannels 2
-               PlaybackPCM "hw:${CardId},0"
+               PlaybackPCM "hw:${CardId},${var:PlayDevN}"
        }
 }
 
@@ -90,7 +90,7 @@ SectionDevice."Headphones" {
        Value {
                PlaybackPriority 500
                PlaybackChannels 2
-               PlaybackPCM "hw:${CardId},0"
+               PlaybackPCM "hw:${CardId},${var:PlayDevN}"
                JackControl "Headphone Jack"
        }
 }
@@ -108,8 +108,8 @@ SectionDevice."Headset" {
 
        Value {
                CapturePriority 500
-               CaptureChannels 1
-               CapturePCM "hw:${CardId},10"
+               CaptureChannels "${var:CapChanN}"
+               CapturePCM "hw:${CardId},${var:CapDevN}"
                JackControl "Headset Mic Jack"
        }
 }
@@ -127,8 +127,8 @@ SectionDevice."Mic1" {
 
        Value {
                CapturePriority 400
-               CaptureChannels 1
-               CapturePCM "hw:${CardId},10"
+               CaptureChannels "${var:CapChanN}"
+               CapturePCM "hw:${CardId},${var:CapDevN}"
        }
 }
 
@@ -180,4 +180,4 @@ SectionDevice."Line4" {
                PlaybackChannels 8
                PlaybackPCM "hw:${CardId},6"
        }
-}
\ No newline at end of file
+}
diff --git a/ucm2/MediaTek/mt8390-evk/init.conf b/ucm2/MediaTek/mt8390-evk/init.conf
new file mode 100644 (file)
index 0000000..e2d56e2
--- /dev/null
@@ -0,0 +1,45 @@
+Syntax 4
+
+SectionUseCase."HiFi" {
+       File "/MediaTek/mt8390-evk/HiFi.conf"
+       Comment "Play high quality music"
+}
+
+BootSequence [
+       cset "name='HP Mux' Audio Playback"
+       cset "name='LOL Mux' Open"
+       cset "name='MISO0_MUX' UL1_CH1"
+       cset "name='MISO1_MUX' UL1_CH1"
+       cset "name='ADC_L_Mux' Left Preamplifier"
+       cset "name='PGA_L_Mux' AIN1"
+       cset "name='HDMI_OUT_MUX' Connect"
+       cset "name='DPTX_OUT_MUX' Disconnect"
+       cset "name='ETDM_OUT1_Clock_Source' a1sys_a2sys"
+       cset "name='ETDM_OUT2_Clock_Source' a1sys_a2sys"
+       cset "name='ETDM_OUT3_Clock_Source' a1sys_a2sys"
+       cset "name='ETDM_IN1_Clock_Source' a1sys_a2sys"
+       cset "name='ETDM_IN2_Clock_Source' a1sys_a2sys"
+       cset "name='Lineout Volume' 10"
+       cset "name='Headset Volume' 2"
+       cset "name='PGA1 Volume' 4"
+       cset "name='O000 I000 Switch' on"
+       cset "name='O001 I001 Switch' on"
+       cset "name='O002 I004 Switch' on"
+       cset "name='O003 I006 Switch' on"
+       cset "name='O034 I168 Switch' on"
+       cset "name='O035 I169 Switch' on"
+       cset "name='O036 I012 Switch' on"
+       cset "name='O037 I013 Switch' on"
+       cset "name='O040 I002 Switch' on"
+       cset "name='O041 I003 Switch' on"
+       cset "name='O048 I022 Switch' on"
+       cset "name='O049 I023 Switch' on"
+       cset "name='O050 I024 Switch' on"
+       cset "name='O051 I025 Switch' on"
+       cset "name='O052 I026 Switch' on"
+       cset "name='O053 I027 Switch' on"
+       cset "name='O054 I028 Switch' on"
+       cset "name='O055 I029 Switch' on"
+       cset "name='O176 I070 Switch' on"
+       cset "name='O177 I071 Switch' on"
+]
\ No newline at end of file
index e2d56e2c25d8e168a2166349a8d451ba82f5e521..d2f285c33833e62659fe0550625ca1d2b9ae065a 100644 (file)
@@ -1,45 +1,9 @@
 Syntax 4
 
-SectionUseCase."HiFi" {
-       File "/MediaTek/mt8390-evk/HiFi.conf"
-       Comment "Play high quality music"
+Define {
+       PlayDevN "0"
+       CapDevN "10"
+       CapChanN "1"
 }
 
-BootSequence [
-       cset "name='HP Mux' Audio Playback"
-       cset "name='LOL Mux' Open"
-       cset "name='MISO0_MUX' UL1_CH1"
-       cset "name='MISO1_MUX' UL1_CH1"
-       cset "name='ADC_L_Mux' Left Preamplifier"
-       cset "name='PGA_L_Mux' AIN1"
-       cset "name='HDMI_OUT_MUX' Connect"
-       cset "name='DPTX_OUT_MUX' Disconnect"
-       cset "name='ETDM_OUT1_Clock_Source' a1sys_a2sys"
-       cset "name='ETDM_OUT2_Clock_Source' a1sys_a2sys"
-       cset "name='ETDM_OUT3_Clock_Source' a1sys_a2sys"
-       cset "name='ETDM_IN1_Clock_Source' a1sys_a2sys"
-       cset "name='ETDM_IN2_Clock_Source' a1sys_a2sys"
-       cset "name='Lineout Volume' 10"
-       cset "name='Headset Volume' 2"
-       cset "name='PGA1 Volume' 4"
-       cset "name='O000 I000 Switch' on"
-       cset "name='O001 I001 Switch' on"
-       cset "name='O002 I004 Switch' on"
-       cset "name='O003 I006 Switch' on"
-       cset "name='O034 I168 Switch' on"
-       cset "name='O035 I169 Switch' on"
-       cset "name='O036 I012 Switch' on"
-       cset "name='O037 I013 Switch' on"
-       cset "name='O040 I002 Switch' on"
-       cset "name='O041 I003 Switch' on"
-       cset "name='O048 I022 Switch' on"
-       cset "name='O049 I023 Switch' on"
-       cset "name='O050 I024 Switch' on"
-       cset "name='O051 I025 Switch' on"
-       cset "name='O052 I026 Switch' on"
-       cset "name='O053 I027 Switch' on"
-       cset "name='O054 I028 Switch' on"
-       cset "name='O055 I029 Switch' on"
-       cset "name='O176 I070 Switch' on"
-       cset "name='O177 I071 Switch' on"
-]
\ No newline at end of file
+Include.init.File "/MediaTek/mt8390-evk/init.conf"
diff --git a/ucm2/MediaTek/mt8390-evk/sof/sof-mt8390-evk.conf b/ucm2/MediaTek/mt8390-evk/sof/sof-mt8390-evk.conf
new file mode 100644 (file)
index 0000000..81df033
--- /dev/null
@@ -0,0 +1,9 @@
+Syntax 4
+
+Define {
+       PlayDevN "16"
+       CapDevN "18"
+       CapChanN "2"
+}
+
+Include.init.File "/MediaTek/mt8390-evk/init.conf"
diff --git a/ucm2/conf.d/sof-mt8390-evk/sof-mt8390-evk.conf b/ucm2/conf.d/sof-mt8390-evk/sof-mt8390-evk.conf
new file mode 120000 (symlink)
index 0000000..b8fe868
--- /dev/null
@@ -0,0 +1 @@
+../../MediaTek/mt8390-evk/sof/sof-mt8390-evk.conf
\ No newline at end of file