fb9370
From 2667378a6b9120d99e44f783ac4d247fb683d83c Mon Sep 17 00:00:00 2001
fb9370
From: =?UTF-8?q?N=C3=ADcolas=20F=2E=20R=2E=20A=2E=20Prado?=
fb9370
 <nfraprado@collabora.com>
fb9370
Date: Thu, 24 Mar 2022 18:13:45 -0400
fb9370
Subject: [PATCH 01/21] ucm2: Add support for MT8192 Asurada Spherion
fb9370
 Chromebook
fb9370
MIME-Version: 1.0
fb9370
Content-Type: text/plain; charset=UTF-8
fb9370
Content-Transfer-Encoding: 8bit
fb9370
fb9370
Add support for the Acer Chromebook 514 CP514-2H, powered by MediaTek
fb9370
Kompanio 820 (MT8192). This machine uses a MT6359 PMIC, with RT1015P as
fb9370
speaker codec and RT5682 as headphone codec.
fb9370
fb9370
Fixes: https://github.com/alsa-project/alsa-ucm-conf/pull/217
fb9370
Signed-off-by: NĂ­colas F. R. A. Prado <nfraprado@collabora.com>
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 .../mt8192/mt6359-rt1015p-rt5682/HiFi.conf    | 88 +++++++++++++++++++
fb9370
 .../mt8192/mt6359-rt1015p-rt5682/init.conf    | 24 +++++
fb9370
 .../mt8192_mt6359_rt1015p_rt5682.conf         | 11 +++
fb9370
 .../mt8192_mt6359_rt1015p_rt5682.conf         |  1 +
fb9370
 4 files changed, 124 insertions(+)
fb9370
 create mode 100644 ucm2/MediaTek/mt8192/mt6359-rt1015p-rt5682/HiFi.conf
fb9370
 create mode 100644 ucm2/MediaTek/mt8192/mt6359-rt1015p-rt5682/init.conf
fb9370
 create mode 100644 ucm2/MediaTek/mt8192/mt6359-rt1015p-rt5682/mt8192_mt6359_rt1015p_rt5682.conf
fb9370
 create mode 120000 ucm2/conf.d/mt8192_mt6359/mt8192_mt6359_rt1015p_rt5682.conf
fb9370
fb9370
diff --git a/ucm2/MediaTek/mt8192/mt6359-rt1015p-rt5682/HiFi.conf b/ucm2/MediaTek/mt8192/mt6359-rt1015p-rt5682/HiFi.conf
fb9370
new file mode 100644
fb9370
index 0000000..cf0d2c1
fb9370
--- /dev/null
fb9370
+++ b/ucm2/MediaTek/mt8192/mt6359-rt1015p-rt5682/HiFi.conf
fb9370
@@ -0,0 +1,88 @@
fb9370
+SectionVerb {
fb9370
+	EnableSequence [
fb9370
+		disdevall ""
fb9370
+	]
fb9370
+
fb9370
+	Value {
fb9370
+		TQ "HiFi"
fb9370
+	}
fb9370
+}
fb9370
+
fb9370
+SectionDevice."Speaker" {
fb9370
+	Comment "Speaker"
fb9370
+
fb9370
+	EnableSequence [
fb9370
+		cset "name='Speakers Switch' 1"
fb9370
+	]
fb9370
+
fb9370
+	DisableSequence [
fb9370
+		cset "name='Speakers Switch' 0"
fb9370
+	]
fb9370
+
fb9370
+	Value {
fb9370
+		PlaybackPCM "hw:${CardId},0"
fb9370
+		PlaybackPriority 100
fb9370
+	}
fb9370
+}
fb9370
+
fb9370
+SectionDevice."Headphones" {
fb9370
+	Comment "Headphones"
fb9370
+
fb9370
+	EnableSequence [
fb9370
+		cset "name='Headphone Jack Switch' 1"
fb9370
+	]
fb9370
+
fb9370
+	DisableSequence [
fb9370
+		cset "name='Headphone Jack Switch' 0"
fb9370
+	]
fb9370
+
fb9370
+	Value {
fb9370
+		PlaybackPCM "hw:${CardId},3"
fb9370
+		JackControl "Headphone Jack"
fb9370
+		PlaybackMixerElem "DAC1"
fb9370
+		PlaybackPriority 200
fb9370
+	}
fb9370
+}
fb9370
+
fb9370
+SectionDevice."Mic" {
fb9370
+	Comment "Internal Microphone"
fb9370
+
fb9370
+	EnableSequence [
fb9370
+		cset "name='MTKAIF_DMIC Switch' 1"
fb9370
+	]
fb9370
+
fb9370
+	DisableSequence [
fb9370
+		cset "name='MTKAIF_DMIC Switch' 0"
fb9370
+	]
fb9370
+
fb9370
+	Value {
fb9370
+		CapturePCM "hw:${CardId},10"
fb9370
+		CapturePriority 100
fb9370
+	}
fb9370
+}
fb9370
+
fb9370
+SectionDevice."Headset" {
fb9370
+	Comment "Headset Microphone"
fb9370
+
fb9370
+	EnableSequence [
fb9370
+		cset "name='Headset Mic Switch' 1"
fb9370
+		cset "name='STO1 ADC Capture Switch' 1"
fb9370
+		cset "name='RECMIX1L CBJ Switch' 1"
fb9370
+		cset "name='Stereo1 ADC MIXL ADC1 Switch' 1"
fb9370
+		cset "name='Stereo1 ADC MIXR ADC1 Switch' 1"
fb9370
+	]
fb9370
+
fb9370
+	DisableSequence [
fb9370
+		cset "name='STO1 ADC Capture Switch' 0"
fb9370
+		cset "name='RECMIX1L CBJ Switch' 0"
fb9370
+		cset "name='Stereo1 ADC MIXL ADC1 Switch' 0"
fb9370
+		cset "name='Stereo1 ADC MIXR ADC1 Switch' 0"
fb9370
+		cset "name='Headset Mic Switch' 0"
fb9370
+	]
fb9370
+
fb9370
+	Value {
fb9370
+		CapturePCM  "hw:${CardId},11"
fb9370
+		JackControl "Headset Mic Jack"
fb9370
+		CapturePriority 200
fb9370
+	}
fb9370
+}
fb9370
diff --git a/ucm2/MediaTek/mt8192/mt6359-rt1015p-rt5682/init.conf b/ucm2/MediaTek/mt8192/mt6359-rt1015p-rt5682/init.conf
fb9370
new file mode 100644
fb9370
index 0000000..b53178e
fb9370
--- /dev/null
fb9370
+++ b/ucm2/MediaTek/mt8192/mt6359-rt1015p-rt5682/init.conf
fb9370
@@ -0,0 +1,24 @@
fb9370
+BootSequence [
fb9370
+	# Speaker
fb9370
+	cset "name='I2S3_CH1 DL1_CH1' 1"
fb9370
+	cset "name='I2S3_CH2 DL1_CH2' 1"
fb9370
+	cset "name='I2S3_HD_Mux' 1"
fb9370
+
fb9370
+	# Headphone
fb9370
+	cset "name='I2S9_CH1 DL3_CH1' 1"
fb9370
+	cset "name='I2S9_CH2 DL3_CH2' 1"
fb9370
+	cset "name='I2S9_HD_Mux' 1"
fb9370
+
fb9370
+	# Internal Mic
fb9370
+	cset "name='UL1_CH1 ADDA_UL_CH1' 1"
fb9370
+	cset "name='UL1_CH2 ADDA_UL_CH2' 1"
fb9370
+	cset "name='UL_SRC_MUX' DMIC"
fb9370
+
fb9370
+	# Headset Mic
fb9370
+	cset "name='UL2_CH1 I2S8_CH1' 1"
fb9370
+	cset "name='UL2_CH2 I2S8_CH2' 1"
fb9370
+	cset "name='I2S8_HD_Mux' 1"
fb9370
+	cset "name='Stereo1 ADC L1 Mux' 1"
fb9370
+	cset "name='Stereo1 ADC R1 Mux' 1"
fb9370
+	cset "name='CBJ Boost Volume' 3"
fb9370
+]
fb9370
diff --git a/ucm2/MediaTek/mt8192/mt6359-rt1015p-rt5682/mt8192_mt6359_rt1015p_rt5682.conf b/ucm2/MediaTek/mt8192/mt6359-rt1015p-rt5682/mt8192_mt6359_rt1015p_rt5682.conf
fb9370
new file mode 100644
fb9370
index 0000000..b4e124d
fb9370
--- /dev/null
fb9370
+++ b/ucm2/MediaTek/mt8192/mt6359-rt1015p-rt5682/mt8192_mt6359_rt1015p_rt5682.conf
fb9370
@@ -0,0 +1,11 @@
fb9370
+Comment "MT8192 MT6359 RT1015P RT5682 sound card"
fb9370
+Syntax 4
fb9370
+
fb9370
+SectionUseCase."HiFi" {
fb9370
+  File "HiFi.conf"
fb9370
+  Comment "Default"
fb9370
+}
fb9370
+
fb9370
+Include.card-init.File "/lib/card-init.conf"
fb9370
+Include.ctl-remap.File "/lib/ctl-remap.conf"
fb9370
+Include.init.File "init.conf"
fb9370
diff --git a/ucm2/conf.d/mt8192_mt6359/mt8192_mt6359_rt1015p_rt5682.conf b/ucm2/conf.d/mt8192_mt6359/mt8192_mt6359_rt1015p_rt5682.conf
fb9370
new file mode 120000
fb9370
index 0000000..4425b19
fb9370
--- /dev/null
fb9370
+++ b/ucm2/conf.d/mt8192_mt6359/mt8192_mt6359_rt1015p_rt5682.conf
fb9370
@@ -0,0 +1 @@
fb9370
+../../MediaTek/mt8192/mt6359-rt1015p-rt5682/mt8192_mt6359_rt1015p_rt5682.conf
fb9370
\ No newline at end of file
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From 6dee56f11fbd48dd412179722a445416fcd779ef Mon Sep 17 00:00:00 2001
fb9370
From: Jaroslav Kysela <perex@perex.cz>
fb9370
Date: Sun, 6 Nov 2022 18:08:27 +0100
fb9370
Subject: [PATCH 02/21] ucm: USB-Audio - Add support for Focusrite Scarlett 2i2
fb9370
 gen2
fb9370
fb9370
BugLink: https://github.com/alsa-project/alsa-ucm-conf/pull/234
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ...2-HiFi.conf => Scarlett-2i-gen2-HiFi.conf} | 45 +++++++++++--------
fb9370
 .../USB-Audio/Focusrite/Scarlett-2i-gen2.conf | 22 +++++++++
fb9370
 .../Focusrite/Scarlett-2i4-gen2.conf          | 11 -----
fb9370
 ucm2/USB-Audio/USB-Audio.conf                 | 10 ++---
fb9370
 4 files changed, 53 insertions(+), 35 deletions(-)
fb9370
 rename ucm2/USB-Audio/Focusrite/{Scarlett-2i4-gen2-HiFi.conf => Scarlett-2i-gen2-HiFi.conf} (65%)
fb9370
 create mode 100644 ucm2/USB-Audio/Focusrite/Scarlett-2i-gen2.conf
fb9370
 delete mode 100644 ucm2/USB-Audio/Focusrite/Scarlett-2i4-gen2.conf
fb9370
fb9370
diff --git a/ucm2/USB-Audio/Focusrite/Scarlett-2i4-gen2-HiFi.conf b/ucm2/USB-Audio/Focusrite/Scarlett-2i-gen2-HiFi.conf
fb9370
similarity index 65%
fb9370
rename from ucm2/USB-Audio/Focusrite/Scarlett-2i4-gen2-HiFi.conf
fb9370
rename to ucm2/USB-Audio/Focusrite/Scarlett-2i-gen2-HiFi.conf
fb9370
index 5ee5076..ab69bc7 100644
fb9370
--- a/ucm2/USB-Audio/Focusrite/Scarlett-2i4-gen2-HiFi.conf
fb9370
+++ b/ucm2/USB-Audio/Focusrite/Scarlett-2i-gen2-HiFi.conf
fb9370
@@ -3,7 +3,7 @@ Include.pcm_split.File "/common/pcm/split.conf"
fb9370
 Macro [
fb9370
 	{
fb9370
 		SplitPCM {
fb9370
-			Name "scarlett2i4_stereo_out"
fb9370
+			Name "scarlett2i_stereo_out"
fb9370
 			Direction Playback
fb9370
 			Format S32_LE
fb9370
 			Channels 2
fb9370
@@ -16,7 +16,7 @@ Macro [
fb9370
 	}
fb9370
 	{
fb9370
 		SplitPCM {
fb9370
-			Name "scarlett2i4_mono_in"
fb9370
+			Name "scarlett2i_mono_in"
fb9370
 			Direction Capture
fb9370
 			Format S32_LE
fb9370
 			Channels 1
fb9370
@@ -33,7 +33,7 @@ SectionDevice."Line1" {
fb9370
 		PlaybackPriority 200
fb9370
 	}
fb9370
 	Macro.pcm_split.SplitPCMDevice {
fb9370
-		Name "scarlett2i4_stereo_out"
fb9370
+		Name "scarlett2i_stereo_out"
fb9370
 		Direction Playback
fb9370
 		HWChannels 4
fb9370
 		Channels 2
fb9370
@@ -44,21 +44,28 @@ SectionDevice."Line1" {
fb9370
 	}
fb9370
 }
fb9370
 
fb9370
-SectionDevice."Line2" {
fb9370
-	Comment "Line 3-4"
fb9370
-
fb9370
-	Value {
fb9370
-		PlaybackPriority 100
fb9370
+If.scarlett_2i4 {
fb9370
+	Condition {
fb9370
+		Type String
fb9370
+		String1 "${var:PlaybackChannels}"
fb9370
+		String2 "4"
fb9370
 	}
fb9370
-	Macro.pcm_split.SplitPCMDevice {
fb9370
-		Name "scarlett2i4_stereo_out"
fb9370
-		Direction Playback
fb9370
-		HWChannels 4
fb9370
-		Channels 2
fb9370
-		Channel0 2
fb9370
-		Channel1 3
fb9370
-		ChannelPos0 FL
fb9370
-		ChannelPos1 FR
fb9370
+	True.SectionDevice."Line2" {
fb9370
+		Comment "Line 3-4"
fb9370
+
fb9370
+		Value {
fb9370
+			PlaybackPriority 100
fb9370
+		}
fb9370
+		Macro.pcm_split.SplitPCMDevice {
fb9370
+			Name "scarlett2i_stereo_out"
fb9370
+			Direction Playback
fb9370
+			HWChannels 4
fb9370
+			Channels 2
fb9370
+			Channel0 2
fb9370
+			Channel1 3
fb9370
+			ChannelPos0 FL
fb9370
+			ChannelPos1 FR
fb9370
+		}
fb9370
 	}
fb9370
 }
fb9370
 
fb9370
@@ -69,7 +76,7 @@ SectionDevice."Mic1" {
fb9370
 		CapturePriority 200
fb9370
 	}
fb9370
 	Macro.pcm_split.SplitPCMDevice {
fb9370
-		Name "scarlett2i4_mono_in"
fb9370
+		Name "scarlett2i_mono_in"
fb9370
 		Direction Capture
fb9370
 		HWChannels 2
fb9370
 		Channels 1
fb9370
@@ -85,7 +92,7 @@ SectionDevice."Mic2" {
fb9370
 		CapturePriority 100
fb9370
 	}
fb9370
 	Macro.pcm_split.SplitPCMDevice {
fb9370
-		Name "scarlett2i4_mono_in"
fb9370
+		Name "scarlett2i_mono_in"
fb9370
 		Direction Capture
fb9370
 		HWChannels 2
fb9370
 		Channels 1
fb9370
diff --git a/ucm2/USB-Audio/Focusrite/Scarlett-2i-gen2.conf b/ucm2/USB-Audio/Focusrite/Scarlett-2i-gen2.conf
fb9370
new file mode 100644
fb9370
index 0000000..ee5b0b5
fb9370
--- /dev/null
fb9370
+++ b/ucm2/USB-Audio/Focusrite/Scarlett-2i-gen2.conf
fb9370
@@ -0,0 +1,22 @@
fb9370
+Define.PlaybackChannels 4
fb9370
+
fb9370
+If.scarlett_2i4 {
fb9370
+	Condition {
fb9370
+		Type String
fb9370
+		Haystack "${CardComponents}"
fb9370
+		Needle "USB1235:8202"
fb9370
+	}
fb9370
+	True.Define.PlaybackChannels 2
fb9370
+}
fb9370
+
fb9370
+Comment "Focusrite Scarlett 2i${var:PlaybackChannels} Gen 2"
fb9370
+
fb9370
+SectionUseCase."HiFi" {
fb9370
+    Comment "Default"
fb9370
+    File "/USB-Audio/Focusrite/Scarlett-2i-gen2-HiFi.conf"
fb9370
+}
fb9370
+
fb9370
+Define.DirectPlaybackChannels "${var:PlaybackChannels}"
fb9370
+Define.DirectCaptureChannels 2
fb9370
+
fb9370
+Include.dhw.File "/common/direct.conf"
fb9370
diff --git a/ucm2/USB-Audio/Focusrite/Scarlett-2i4-gen2.conf b/ucm2/USB-Audio/Focusrite/Scarlett-2i4-gen2.conf
fb9370
deleted file mode 100644
fb9370
index ffc296d..0000000
fb9370
--- a/ucm2/USB-Audio/Focusrite/Scarlett-2i4-gen2.conf
fb9370
+++ /dev/null
fb9370
@@ -1,11 +0,0 @@
fb9370
-Comment "Focusrite Scarlett 2i4 Gen 2"
fb9370
-
fb9370
-SectionUseCase."HiFi" {
fb9370
-    Comment "Default"
fb9370
-    File "/USB-Audio/Focusrite/Scarlett-2i4-gen2-HiFi.conf"
fb9370
-}
fb9370
-
fb9370
-Define.DirectPlaybackChannels 4
fb9370
-Define.DirectCaptureChannels 2
fb9370
-
fb9370
-Include.dhw.File "/common/direct.conf"
fb9370
diff --git a/ucm2/USB-Audio/USB-Audio.conf b/ucm2/USB-Audio/USB-Audio.conf
fb9370
index 90a88d4..3479ba1 100644
fb9370
--- a/ucm2/USB-Audio/USB-Audio.conf
fb9370
+++ b/ucm2/USB-Audio/USB-Audio.conf
fb9370
@@ -135,14 +135,14 @@ If.goxlr {
fb9370
 	True.Define.ProfileName "GoXLR/GoXLR"
fb9370
 }
fb9370
 
fb9370
-If.focusrite-scarlett-2i4-gen2 {
fb9370
+If.focusrite-scarlett-2i-gen2 {
fb9370
 	Condition {
fb9370
-		Type String
fb9370
-		Haystack "${CardComponents}"
fb9370
-		Needle "USB1235:8200"
fb9370
+		Type RegexMatch
fb9370
+		String "${CardComponents}"
fb9370
+		Regex "USB1235:820[02]"
fb9370
 	}
fb9370
 	True.Define {
fb9370
-		ProfileName "Focusrite/Scarlett-2i4-gen2"
fb9370
+		ProfileName "Focusrite/Scarlett-2i-gen2"
fb9370
 	}
fb9370
 }
fb9370
 
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From b50a903f488e3f6479001b603c1b42b2a9600882 Mon Sep 17 00:00:00 2001
fb9370
From: Manu Linares <mbarriolinares@gmail.com>
fb9370
Date: Sat, 5 Nov 2022 19:32:27 -0300
fb9370
Subject: [PATCH 04/21] ucm2: USB-Audio - Added Digidesign Mbox 3 support
fb9370
fb9370
Fixes: https://github.com/alsa-project/alsa-ucm-conf/pull/237
fb9370
Signed-off-by: Manu Linares <mbarriolinares@gmail.com>
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 .../Digidesign/Digidesign-Mbox-3-HiFi.conf    | 126 ++++++++++++++++++
fb9370
 .../Digidesign/Digidesign-Mbox-3.conf         |  11 ++
fb9370
 ucm2/USB-Audio/USB-Audio.conf                 |   9 ++
fb9370
 3 files changed, 146 insertions(+)
fb9370
 create mode 100644 ucm2/USB-Audio/Digidesign/Digidesign-Mbox-3-HiFi.conf
fb9370
 create mode 100644 ucm2/USB-Audio/Digidesign/Digidesign-Mbox-3.conf
fb9370
fb9370
diff --git a/ucm2/USB-Audio/Digidesign/Digidesign-Mbox-3-HiFi.conf b/ucm2/USB-Audio/Digidesign/Digidesign-Mbox-3-HiFi.conf
fb9370
new file mode 100644
fb9370
index 0000000..7219bea
fb9370
--- /dev/null
fb9370
+++ b/ucm2/USB-Audio/Digidesign/Digidesign-Mbox-3-HiFi.conf
fb9370
@@ -0,0 +1,126 @@
fb9370
+Include.pcm_split.File "/common/pcm/split.conf"
fb9370
+
fb9370
+Macro [
fb9370
+	{
fb9370
+		SplitPCM {
fb9370
+			Name "mbox3_stereo_out"
fb9370
+			Direction Playback
fb9370
+			Channels 2
fb9370
+			HWChannels 4
fb9370
+			HWChannelPos0 FL
fb9370
+			HWChannelPos1 FR
fb9370
+			HWChannelPos2 FL
fb9370
+			HWChannelPos3 FR
fb9370
+		}
fb9370
+	}
fb9370
+	{
fb9370
+		SplitPCM {
fb9370
+			Name "mbox3_stereo_in"
fb9370
+			Direction Capture
fb9370
+			Channels 2
fb9370
+			HWChannels 4
fb9370
+			HWChannelPos0 FL
fb9370
+			HWChannelPos1 FR
fb9370
+			HWChannelPos2 FL
fb9370
+			HWChannelPos3 FR
fb9370
+		}
fb9370
+	}
fb9370
+	{
fb9370
+		SplitPCM {
fb9370
+			Name "mbox3_mono_in"
fb9370
+			Direction Capture
fb9370
+			Channels 1
fb9370
+			HWChannels 4
fb9370
+			HWChannelPos0 MONO
fb9370
+			HWChannelPos1 MONO
fb9370
+			HWChannelPos2 MONO
fb9370
+			HWChannelPos3 MONO
fb9370
+		}
fb9370
+	}
fb9370
+]
fb9370
+
fb9370
+SectionDevice."Line1" {
fb9370
+	Comment "Main Output L/R"
fb9370
+
fb9370
+	Value {
fb9370
+		PlaybackPriority 300
fb9370
+	}
fb9370
+	Macro.pcm_split.SplitPCMDevice {
fb9370
+		Name "mbox3_stereo_out"
fb9370
+		Direction Playback
fb9370
+		HWChannels 4
fb9370
+		Channels 2
fb9370
+		Channel0 0
fb9370
+		Channel1 1
fb9370
+		ChannelPos0 FL
fb9370
+		ChannelPos1 FR
fb9370
+	}
fb9370
+}
fb9370
+
fb9370
+
fb9370
+SectionDevice."line2SPDIF" {
fb9370
+	Comment "SPDIF Out"
fb9370
+	Value {
fb9370
+		PlaybackPriority 100
fb9370
+	}
fb9370
+	Macro.pcm_split.SplitPCMDevice {
fb9370
+		Name "mbox3_stereo_out"
fb9370
+		Direction Playback
fb9370
+		HWChannels 4
fb9370
+		Channels 2
fb9370
+		Channel0 2
fb9370
+		Channel1 3
fb9370
+		ChannelPos0 FL
fb9370
+		ChannelPos1 FR
fb9370
+	}
fb9370
+}
fb9370
+
fb9370
+SectionDevice."mic1" {
fb9370
+	Comment "Mic/Line 1"
fb9370
+
fb9370
+	Value {
fb9370
+		CapturePriority 300
fb9370
+	}
fb9370
+	Macro.pcm_split.SplitPCMDevice {
fb9370
+		Name "mbox3_mono_in"
fb9370
+		Direction Capture
fb9370
+		HWChannels 4
fb9370
+		Channels 1
fb9370
+		Channel0 0
fb9370
+		ChannelPos0 MONO
fb9370
+	}
fb9370
+}
fb9370
+
fb9370
+SectionDevice."mic2" {
fb9370
+	Comment "Mic/Line 2"
fb9370
+
fb9370
+	Value {
fb9370
+		CapturePriority 200
fb9370
+	}
fb9370
+	Macro.pcm_split.SplitPCMDevice {
fb9370
+		Name "mbox3_mono_in"
fb9370
+		Direction Capture
fb9370
+		HWChannels 4
fb9370
+		Channels 1
fb9370
+		Channel0 1
fb9370
+		ChannelPos0 MONO
fb9370
+	}
fb9370
+}
fb9370
+
fb9370
+SectionDevice."mic3SPDIF" {
fb9370
+	Comment "SPDIF In"
fb9370
+
fb9370
+	Value {
fb9370
+		CapturePriority 100
fb9370
+	}
fb9370
+	Macro.pcm_split.SplitPCMDevice {
fb9370
+		Name "mbox3_stereo_in"
fb9370
+		Direction Capture
fb9370
+		HWChannels 4
fb9370
+		Channels 2
fb9370
+		Channel0 2
fb9370
+		Channel1 3
fb9370
+		ChannelPos0 FL
fb9370
+		ChannelPos1 FR
fb9370
+	}
fb9370
+}
fb9370
diff --git a/ucm2/USB-Audio/Digidesign/Digidesign-Mbox-3.conf b/ucm2/USB-Audio/Digidesign/Digidesign-Mbox-3.conf
fb9370
new file mode 100644
fb9370
index 0000000..d6e19f9
fb9370
--- /dev/null
fb9370
+++ b/ucm2/USB-Audio/Digidesign/Digidesign-Mbox-3.conf
fb9370
@@ -0,0 +1,11 @@
fb9370
+Comment "Digidesign Mbox 3"
fb9370
+
fb9370
+SectionUseCase."Mixer" {
fb9370
+	Comment "Stereo Duplex"
fb9370
+	File "/USB-Audio/Digidesign/Digidesign-Mbox-3-HiFi.conf"
fb9370
+}
fb9370
+
fb9370
+Define.DirectPlaybackChannels 4
fb9370
+Define.DirectCaptureChannels 4
fb9370
+
fb9370
+Include.dhw.File "/common/direct.conf"
fb9370
diff --git a/ucm2/USB-Audio/USB-Audio.conf b/ucm2/USB-Audio/USB-Audio.conf
fb9370
index 3479ba1..d1d70d8 100644
fb9370
--- a/ucm2/USB-Audio/USB-Audio.conf
fb9370
+++ b/ucm2/USB-Audio/USB-Audio.conf
fb9370
@@ -126,6 +126,15 @@ If.dell-desktop-rear {
fb9370
 	True.Define.ProfileName "Dell/Desktop-Rear"
fb9370
 }
fb9370
 
fb9370
+If.mbox3 {
fb9370
+	Condition {
fb9370
+		Type String
fb9370
+		Haystack "${CardComponents}"
fb9370
+		Needle "USB0dba:5000"
fb9370
+	}
fb9370
+	True.Define.ProfileName "Digidesign/Digidesign-Mbox-3"
fb9370
+}
fb9370
+
fb9370
 If.goxlr {
fb9370
 	Condition {
fb9370
 		Type RegexMatch
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From 88f232dffd54e1b9222ea76c7885445efebaa74d Mon Sep 17 00:00:00 2001
fb9370
From: "Ben Scholzen (DASPRiD)" <mail@dasprids.de>
fb9370
Date: Mon, 31 Oct 2022 17:41:02 +0100
fb9370
Subject: [PATCH 05/21] ucm2: Alc4080 - add support for ASUS ROG Strix Z790-E
fb9370
 Gaming Wifi
fb9370
fb9370
Fixes: https://github.com/alsa-project/alsa-ucm-conf/pull/235
fb9370
Signed-off-by: Ben Scholzen (DASPRiD) <mail@dasprids.de>
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf | 2 +-
fb9370
 ucm2/USB-Audio/USB-Audio.conf            | 3 ++-
fb9370
 2 files changed, 3 insertions(+), 2 deletions(-)
fb9370
fb9370
diff --git a/ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf b/ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf
fb9370
index 519f3b0..fa8d445 100644
fb9370
--- a/ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf
fb9370
+++ b/ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf
fb9370
@@ -68,7 +68,7 @@ If.spdif_dev2 {
fb9370
 	Condition {
fb9370
 		Type RegexMatch
fb9370
 		String "${CardComponents}"
fb9370
-		Regex "USB(0b05:1996|0db0:1feb)"
fb9370
+		Regex "USB(0b05:1996|0b05:1a52|0db0:1feb)"
fb9370
 	}
fb9370
 	True.Define.SpdifPCM "hw:${CardId},2"
fb9370
 }
fb9370
diff --git a/ucm2/USB-Audio/USB-Audio.conf b/ucm2/USB-Audio/USB-Audio.conf
fb9370
index d1d70d8..e30dc2b 100644
fb9370
--- a/ucm2/USB-Audio/USB-Audio.conf
fb9370
+++ b/ucm2/USB-Audio/USB-Audio.conf
fb9370
@@ -41,6 +41,7 @@ If.realtek-alc4080 {
fb9370
 		# 0b05:1a16 ASUS ROG Strix B660-F Gaming WiFi
fb9370
 		# 0b05:1a20 ASUS ROG STRIX Z690-I Gaming Wifi
fb9370
 		# 0b05:1a27 ALC4082 on ASUS ROG Maximus Z690 Hero
fb9370
+		# 0b05:1a52 ASUS ROG Strix Z790-E Gaming Wifi
fb9370
 		# 0db0:005a MSI MPG Z690 CARBON WIFI
fb9370
 		# 0db0:151f MSI X570S EDGE MAX WIFI
fb9370
 		# 0db0:1feb MSI Edge Wifi Z690
fb9370
@@ -50,7 +51,7 @@ If.realtek-alc4080 {
fb9370
 		# 0db0:a47c MSI MEG X570S Ace Max
fb9370
 		# 0db0:b202 MSI MAG Z690 Tomahawk Wifi
fb9370
 		# 0db0:d6e7 MSI MPG X670E Carbon Wifi
fb9370
-		Regex "USB((0414:a00e)|(0b05:(1996|1a(16|2[07])))|(0db0:(005a|151f|1feb|419c|82c7|a073|a47c|b202|d6e7)))"
fb9370
+		Regex "USB((0414:a00e)|(0b05:(1996|1a(16|2[07]|52)))|(0db0:(005a|151f|1feb|419c|82c7|a073|a47c|b202|d6e7)))"
fb9370
 	}
fb9370
 	True.Define.ProfileName "Realtek/ALC4080"
fb9370
 }
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From b121b63f30c24e89beec506ae1d2bac9ebb3cc61 Mon Sep 17 00:00:00 2001
fb9370
From: Jaroslav Kysela <perex@perex.cz>
fb9370
Date: Tue, 15 Nov 2022 17:49:13 +0100
fb9370
Subject: [PATCH 06/21] USB-Audio: ALC4080 - add 0db0:6cc9 MSI MPG Z590 Gaming
fb9370
 Plus device
fb9370
fb9370
BugLink: https://github.com/alsa-project/alsa-ucm-conf/issues/241
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/USB-Audio/USB-Audio.conf | 3 ++-
fb9370
 1 file changed, 2 insertions(+), 1 deletion(-)
fb9370
fb9370
diff --git a/ucm2/USB-Audio/USB-Audio.conf b/ucm2/USB-Audio/USB-Audio.conf
fb9370
index e30dc2b..89482cb 100644
fb9370
--- a/ucm2/USB-Audio/USB-Audio.conf
fb9370
+++ b/ucm2/USB-Audio/USB-Audio.conf
fb9370
@@ -46,12 +46,13 @@ If.realtek-alc4080 {
fb9370
 		# 0db0:151f MSI X570S EDGE MAX WIFI
fb9370
 		# 0db0:1feb MSI Edge Wifi Z690
fb9370
 		# 0db0:419c MSI MPG X570S Carbon Max Wifi
fb9370
+		# 0db0:6cc9 MSI MPG Z590 Gaming Plus
fb9370
 		# 0db0:82c7 MSI MEG Z690I Unify
fb9370
 		# 0db0:a073 MSI MAG X570S Torpedo Max
fb9370
 		# 0db0:a47c MSI MEG X570S Ace Max
fb9370
 		# 0db0:b202 MSI MAG Z690 Tomahawk Wifi
fb9370
 		# 0db0:d6e7 MSI MPG X670E Carbon Wifi
fb9370
-		Regex "USB((0414:a00e)|(0b05:(1996|1a(16|2[07]|52)))|(0db0:(005a|151f|1feb|419c|82c7|a073|a47c|b202|d6e7)))"
fb9370
+		Regex "USB((0414:a00e)|(0b05:(1996|1a(16|2[07]|52)))|(0db0:(005a|151f|1feb|419c|6cc9|82c7|a073|a47c|b202|d6e7)))"
fb9370
 	}
fb9370
 	True.Define.ProfileName "Realtek/ALC4080"
fb9370
 }
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From c82c400fb653292bbf0570e278d60e1ba14cc341 Mon Sep 17 00:00:00 2001
fb9370
From: Shuming Fan <shumingf@realtek.com>
fb9370
Date: Wed, 16 Nov 2022 17:36:51 +0800
fb9370
Subject: [PATCH 07/21] ucm2: sof-soundwire: add basic settings for RT1318 SDCA
fb9370
 device
fb9370
fb9370
Add support for rt1318 amplifier
fb9370
fb9370
Fixes: https://github.com/alsa-project/alsa-ucm-conf/pull/242
fb9370
Signed-off-by: Shuming Fan <shumingf@realtek.com>
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/sof-soundwire/rt1318-1.conf | 20 ++++++++++++++++++++
fb9370
 ucm2/sof-soundwire/rt1318-2.conf | 25 +++++++++++++++++++++++++
fb9370
 2 files changed, 45 insertions(+)
fb9370
 create mode 100644 ucm2/sof-soundwire/rt1318-1.conf
fb9370
 create mode 100644 ucm2/sof-soundwire/rt1318-2.conf
fb9370
fb9370
diff --git a/ucm2/sof-soundwire/rt1318-1.conf b/ucm2/sof-soundwire/rt1318-1.conf
fb9370
new file mode 100644
fb9370
index 0000000..13d77e1
fb9370
--- /dev/null
fb9370
+++ b/ucm2/sof-soundwire/rt1318-1.conf
fb9370
@@ -0,0 +1,20 @@
fb9370
+# Use case Configuration for sof-soundwire card
fb9370
+
fb9370
+SectionDevice."Speaker" {
fb9370
+	Comment	"Speaker"
fb9370
+
fb9370
+	EnableSequence [
fb9370
+		cset "name='rt1318-1 DAC Switch' 1"
fb9370
+		cset "name='Speaker Switch' on"
fb9370
+	]
fb9370
+
fb9370
+	DisableSequence [
fb9370
+		cset "name='rt1318-1 DAC Switch' 0"
fb9370
+		cset "name='Speaker Switch' off"
fb9370
+	]
fb9370
+
fb9370
+	Value {
fb9370
+	      PlaybackPriority 100
fb9370
+	      PlaybackPCM "hw:${CardId},2"
fb9370
+	}
fb9370
+}
fb9370
diff --git a/ucm2/sof-soundwire/rt1318-2.conf b/ucm2/sof-soundwire/rt1318-2.conf
fb9370
new file mode 100644
fb9370
index 0000000..5602470
fb9370
--- /dev/null
fb9370
+++ b/ucm2/sof-soundwire/rt1318-2.conf
fb9370
@@ -0,0 +1,25 @@
fb9370
+# Use case Configuration for sof-soundwire card
fb9370
+
fb9370
+SectionDevice."Speaker" {
fb9370
+	Comment	"Speaker"
fb9370
+
fb9370
+	EnableSequence [
fb9370
+		cset "name='rt1318-1 RX Channel Select' L,L"
fb9370
+		cset "name='rt1318-2 RX Channel Select' R,R"
fb9370
+
fb9370
+		cset "name='rt1318-1 DAC Switch' 1"
fb9370
+		cset "name='rt1318-2 DAC Switch' 1"
fb9370
+		cset "name='Speaker Switch' on"
fb9370
+	]
fb9370
+
fb9370
+	DisableSequence [
fb9370
+		cset "name='rt1318-1 DAC Switch' 0"
fb9370
+		cset "name='rt1318-2 DAC Switch' 0"
fb9370
+		cset "name='Speaker Switch' off"
fb9370
+	]
fb9370
+
fb9370
+	Value {
fb9370
+	      PlaybackPriority 100
fb9370
+	      PlaybackPCM "hw:${CardId},2"
fb9370
+	}
fb9370
+}
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From 998849d9510754960d808e20dad4c440adaf87ef Mon Sep 17 00:00:00 2001
fb9370
From: Clayton Craft <clayton@craftyguy.net>
fb9370
Date: Wed, 29 Jun 2022 15:23:23 -0700
fb9370
Subject: [PATCH 08/21] ucm2: add profile for the Librem 5
fb9370
MIME-Version: 1.0
fb9370
Content-Type: text/plain; charset=UTF-8
fb9370
Content-Transfer-Encoding: 8bit
fb9370
fb9370
Fixes: https://github.com/alsa-project/alsa-ucm-conf/pull/181
fb9370
Tested-by: Guido GĂ¼nther <agx@sigxcpu.org>
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/NXP/iMX8/Librem_5/HiFi.conf      | 151 ++++++++++++++++++++++++++
fb9370
 ucm2/NXP/iMX8/Librem_5/Librem 5.conf  |  25 +++++
fb9370
 ucm2/conf.d/simple-card/Librem 5.conf |   1 +
fb9370
 3 files changed, 177 insertions(+)
fb9370
 create mode 100644 ucm2/NXP/iMX8/Librem_5/HiFi.conf
fb9370
 create mode 100644 ucm2/NXP/iMX8/Librem_5/Librem 5.conf
fb9370
 create mode 120000 ucm2/conf.d/simple-card/Librem 5.conf
fb9370
fb9370
diff --git a/ucm2/NXP/iMX8/Librem_5/HiFi.conf b/ucm2/NXP/iMX8/Librem_5/HiFi.conf
fb9370
new file mode 100644
fb9370
index 0000000..55eabe3
fb9370
--- /dev/null
fb9370
+++ b/ucm2/NXP/iMX8/Librem_5/HiFi.conf
fb9370
@@ -0,0 +1,151 @@
fb9370
+SectionVerb {
fb9370
+	EnableSequence [
fb9370
+		disdevall ""
fb9370
+	]
fb9370
+
fb9370
+	Value.TQ "HiFi"
fb9370
+}
fb9370
+
fb9370
+SectionDevice."Handset" {
fb9370
+	Comment "Handset"
fb9370
+
fb9370
+	ConflictingDevice [
fb9370
+		"Headphones"
fb9370
+		"Speaker"
fb9370
+	]
fb9370
+
fb9370
+	EnableSequence [
fb9370
+		cset "name='Speaker Switch' off,on"
fb9370
+		cset "name='DAC L/R Swap Switch' on"
fb9370
+		cset "name='DAC Monomix Switch' on"
fb9370
+		cset "name='SPKOUTR PGA' DAC"
fb9370
+		cset "name='Speaker Boost Volume' 2"
fb9370
+	]
fb9370
+
fb9370
+	DisableSequence [
fb9370
+		cset "name='Speaker Switch' off,off"
fb9370
+		cset "name='DAC L/R Swap Switch' off"
fb9370
+		cset "name='DAC Monomix Switch' off"
fb9370
+		cset "name='SPKOUTR PGA' Mixer"
fb9370
+	]
fb9370
+
fb9370
+	Value {
fb9370
+		PlaybackPriority "100"
fb9370
+		PlaybackVolume "name='Speaker Volume'"
fb9370
+		PlaybackSwitch "name='Speaker Switch'"
fb9370
+		PlaybackMixerElem "Speaker"
fb9370
+		PlaybackPCM "hw:${CardId}"
fb9370
+	}
fb9370
+}
fb9370
+
fb9370
+SectionDevice."Speaker" {
fb9370
+	Comment "Speaker"
fb9370
+
fb9370
+	ConflictingDevice [
fb9370
+		"Handset"
fb9370
+		"Headphones"
fb9370
+	]
fb9370
+
fb9370
+	EnableSequence [
fb9370
+		cset "name='Speaker Switch' on,off"
fb9370
+		cset "name='DAC Monomix Switch' on"
fb9370
+		cset "name='SPKOUTL PGA' DAC"
fb9370
+		cset "name='Speaker Boost Volume' 6"
fb9370
+	]
fb9370
+
fb9370
+	DisableSequence [
fb9370
+		cset "name='Speaker Switch' off,off"
fb9370
+		cset "name='DAC Monomix Switch' off"
fb9370
+		cset "name='SPKOUTL PGA' Mixer"
fb9370
+	]
fb9370
+
fb9370
+	Value {
fb9370
+		PlaybackPriority "500"
fb9370
+		PlaybackVolume "name='Speaker Volume'"
fb9370
+		PlaybackSwitch "name='Speaker Switch'"
fb9370
+		PlaybackMixerElem "Speaker"
fb9370
+		PlaybackPCM "hw:${CardId}"
fb9370
+	}
fb9370
+}
fb9370
+
fb9370
+SectionDevice."Headphones" {
fb9370
+	Comment "Headphones"
fb9370
+
fb9370
+	ConflictingDevice [
fb9370
+		"Handset"
fb9370
+		"Speaker"
fb9370
+	]
fb9370
+
fb9370
+	EnableSequence [
fb9370
+		cset "name='Headphone Switch' on,on"
fb9370
+		cset "name='HPOUTL PGA' 0 unmute"
fb9370
+		cset "name='HPOUTR PGA' 0 unmute"
fb9370
+	]
fb9370
+
fb9370
+	DisableSequence [
fb9370
+		cset "name='Headphone Switch' off off"
fb9370
+		cset "name='HPOUTL PGA' 0 mute"
fb9370
+		cset "name='HPOUTR PGA' 0 mute"
fb9370
+	]
fb9370
+
fb9370
+	Value {
fb9370
+		PlaybackPriority "1000"
fb9370
+		PlaybackVolume "name='Headphone Volume'"
fb9370
+		PlaybackSwitch "name='Headphone Switch'"
fb9370
+		PlaybackMixerElem "Headphone"
fb9370
+		PlaybackPCM "hw:${CardId}"
fb9370
+		JackControl "Headphones Jack"
fb9370
+	}
fb9370
+}
fb9370
+
fb9370
+SectionDevice."Mic" {
fb9370
+	Comment "Internal Microphone"
fb9370
+
fb9370
+	ConflictingDevice [
fb9370
+		"Headset"
fb9370
+	]
fb9370
+
fb9370
+	EnableSequence [
fb9370
+		cset "name='ADC L/R Swap Switch' on"
fb9370
+		cset "name='Input Mode' Digital"
fb9370
+	]
fb9370
+
fb9370
+	DisableSequence [
fb9370
+		cset "name='ADC L/R Swap Switch' off"
fb9370
+	]
fb9370
+
fb9370
+	Value {
fb9370
+		CapturePriority "500"
fb9370
+		CaptureVolume "name='Digital Capture Volume'"
fb9370
+		CaptureMixerElem "Digital"
fb9370
+		CapturePCM "hw:${CardId}"
fb9370
+	}
fb9370
+}
fb9370
+
fb9370
+SectionDevice."Headset" {
fb9370
+	Comment "Headset Microphone"
fb9370
+
fb9370
+	ConflictingDevice [
fb9370
+		"Mic"
fb9370
+	]
fb9370
+
fb9370
+	EnableSequence [
fb9370
+		cset "name='Input Mode' Analog"
fb9370
+		cset "name='MIXINR PGA Switch' on,on"
fb9370
+		cset "name='Capture Switch' on,on"
fb9370
+	]
fb9370
+
fb9370
+	DisableSequence [
fb9370
+		cset "name='Capture Switch' off,off"
fb9370
+		cset "name='MIXINR PGA Switch' off,off"
fb9370
+		cset "name='Input Mode' Digital"
fb9370
+	]
fb9370
+
fb9370
+	Value {
fb9370
+		CapturePriority "100"
fb9370
+		CaptureVolume "name='Capture Volume'"
fb9370
+		CaptureMixerElem "Capture"
fb9370
+		CapturePCM "hw:${CardId}"
fb9370
+		JackControl "Headphones Jack"
fb9370
+	}
fb9370
+}
fb9370
diff --git a/ucm2/NXP/iMX8/Librem_5/Librem 5.conf b/ucm2/NXP/iMX8/Librem_5/Librem 5.conf
fb9370
new file mode 100644
fb9370
index 0000000..4d7dbd6
fb9370
--- /dev/null
fb9370
+++ b/ucm2/NXP/iMX8/Librem_5/Librem 5.conf	
fb9370
@@ -0,0 +1,25 @@
fb9370
+Syntax 2
fb9370
+
fb9370
+SectionUseCase."HiFi" {
fb9370
+	File "HiFi.conf"
fb9370
+	Comment "Default"
fb9370
+}
fb9370
+
fb9370
+BootSequence [
fb9370
+	cset "name='Digital Playback Volume' 100,100"
fb9370
+	cset "name='MIXINL IN2L Switch' off"
fb9370
+	cset "name='MIXINL IN3L Switch' off"
fb9370
+	cset "name='MIXINR IN2R Switch' off"
fb9370
+	cset "name='MIXINR IN3R Switch' off"
fb9370
+	cset "name='INPGAR IN1R Switch' off"
fb9370
+	cset "name='INPGAR IN2R Switch' off"
fb9370
+	cset "name='INPGAR IN3R Switch' on"
fb9370
+	cset "name='INPGAR IN4R Switch' off"
fb9370
+	cset "name='INPGAL IN1L Switch' off"
fb9370
+	cset "name='INPGAL IN2L Switch' off"
fb9370
+	cset "name='INPGAL IN3L Switch' off"
fb9370
+	cset "name='INPGAL IN4L Switch' off"
fb9370
+	cset "name='Input Mixer Switch' off,on"
fb9370
+	cset "name='SPKOUTL PGA' Mixer"
fb9370
+	cset "name='SPKOUTR PGA' Mixer"
fb9370
+]
fb9370
diff --git a/ucm2/conf.d/simple-card/Librem 5.conf b/ucm2/conf.d/simple-card/Librem 5.conf
fb9370
new file mode 120000
fb9370
index 0000000..c687942
fb9370
--- /dev/null
fb9370
+++ b/ucm2/conf.d/simple-card/Librem 5.conf	
fb9370
@@ -0,0 +1 @@
fb9370
+../../NXP/iMX8/Librem_5/Librem 5.conf
fb9370
\ No newline at end of file
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From 71ff24cdd2e0fecb71c2fcf8a45a1ae50233c34b Mon Sep 17 00:00:00 2001
fb9370
From: Jaroslav Kysela <perex@perex.cz>
fb9370
Date: Mon, 21 Nov 2022 09:51:54 +0100
fb9370
Subject: [PATCH 09/21] USB-Audio: allow to configure period size for PCM split
fb9370
MIME-Version: 1.0
fb9370
Content-Type: text/plain; charset=UTF-8
fb9370
Content-Transfer-Encoding: 8bit
fb9370
fb9370
The environment variable UCM_USB_PERIOD_TIME (microseconds / μs)
fb9370
can define the period size for the PCM channel split over
fb9370
the default value 10000μs.
fb9370
fb9370
BugLink: https://github.com/alsa-project/alsa-ucm-conf/pull/240
fb9370
Fixes: https://github.com/alsa-project/alsa-ucm-conf/issues/238
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/USB-Audio/USB-Audio.conf | 8 ++++++++
fb9370
 1 file changed, 8 insertions(+)
fb9370
fb9370
diff --git a/ucm2/USB-Audio/USB-Audio.conf b/ucm2/USB-Audio/USB-Audio.conf
fb9370
index 89482cb..fdc29ec 100644
fb9370
--- a/ucm2/USB-Audio/USB-Audio.conf
fb9370
+++ b/ucm2/USB-Audio/USB-Audio.conf
fb9370
@@ -4,6 +4,14 @@ Define.ProfileName ""
fb9370
 Define.MixerRemap ""
fb9370
 Define.SplitPCMPeriodTime 10000		# 10ms
fb9370
 
fb9370
+If.env1 {
fb9370
+	Condition {
fb9370
+		Type String
fb9370
+		Empty "${env:UCM_USB_PERIOD_TIME}"
fb9370
+	}
fb9370
+	False.Define.SplitPCMPeriodTime "${env:UCM_USB_PERIOD_TIME}"
fb9370
+}
fb9370
+
fb9370
 If.linked {
fb9370
 	Condition {
fb9370
 		Type RegexMatch
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From 445c079665979802d50b237fe5a55be82ffd0bd9 Mon Sep 17 00:00:00 2001
fb9370
From: Fadwa Chiby <fchiby@baylibre.com>
fb9370
Date: Fri, 22 Jul 2022 09:45:07 +0000
fb9370
Subject: [PATCH 10/21] mt8195-demo: fix soundcard initialization
fb9370
fb9370
The previous initialization in Bootsequence set all Switch
fb9370
to off after boot.
fb9370
fb9370
So remove the setting off of the Switch in the BootSequence
fb9370
and define Enable/DisableSequence in verb section for
fb9370
a proper setting.
fb9370
fb9370
Note that the controls enable access to the PCM devices
fb9370
(controls routes between Front End and Back End in ASoC).
fb9370
fb9370
Fixes: https://github.com/alsa-project/alsa-ucm-conf/pull/211
fb9370
Signed-off-by: Fadwa Chiby <fchiby@baylibre.com>
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/MediaTek/mt8195_demo/HiFi.conf        | 57 ++++++++++++++++++++++
fb9370
 ucm2/MediaTek/mt8195_demo/mt8195_demo.conf | 36 ++++----------
fb9370
 2 files changed, 66 insertions(+), 27 deletions(-)
fb9370
fb9370
diff --git a/ucm2/MediaTek/mt8195_demo/HiFi.conf b/ucm2/MediaTek/mt8195_demo/HiFi.conf
fb9370
index 95f2b51..660b4ad 100644
fb9370
--- a/ucm2/MediaTek/mt8195_demo/HiFi.conf
fb9370
+++ b/ucm2/MediaTek/mt8195_demo/HiFi.conf
fb9370
@@ -1,3 +1,60 @@
fb9370
+SectionVerb {
fb9370
+
fb9370
+	EnableSequence [
fb9370
+		cset "name='HDMI_OUT_MUX' Connect"
fb9370
+		cset "name='DPTX_OUT_MUX' Connect"
fb9370
+		cset "name='O176 I070 Switch' on"
fb9370
+		cset "name='O177 I071 Switch' on"
fb9370
+		cset "name='O034 I168 Switch' on"
fb9370
+		cset "name='O035 I169 Switch' on"
fb9370
+		cset "name='O036 I012 Switch' on"
fb9370
+		cset "name='O037 I013 Switch' on"
fb9370
+		cset "name='O072 I022 Switch' on"
fb9370
+		cset "name='O073 I023 Switch' on"
fb9370
+		cset "name='O074 I024 Switch' on"
fb9370
+		cset "name='O075 I025 Switch' on"
fb9370
+		cset "name='O076 I026 Switch' on"
fb9370
+		cset "name='O077 I027 Switch' on"
fb9370
+		cset "name='O078 I028 Switch' on"
fb9370
+		cset "name='O079 I029 Switch' on"
fb9370
+		cset "name='O002 I004 Switch' on"
fb9370
+		cset "name='O003 I005 Switch' on"
fb9370
+		cset "name='O004 I006 Switch' on"
fb9370
+		cset "name='O005 I007 Switch' on"
fb9370
+		cset "name='O006 I008 Switch' on"
fb9370
+		cset "name='O007 I009 Switch' on"
fb9370
+		cset "name='O008 I010 Switch' on"
fb9370
+		cset "name='O009 I011 Switch' on"
fb9370
+	]
fb9370
+
fb9370
+	DisableSequence [
fb9370
+		cset "name='HDMI_OUT_MUX' Disconnect"
fb9370
+		cset "name='DPTX_OUT_MUX' Disconnect"
fb9370
+		cset "name='O176 I070 Switch' off"
fb9370
+		cset "name='O177 I071 Switch' off"
fb9370
+		cset "name='O034 I168 Switch' off"
fb9370
+		cset "name='O035 I169 Switch' off"
fb9370
+		cset "name='O036 I012 Switch' off"
fb9370
+		cset "name='O037 I013 Switch' off"
fb9370
+		cset "name='O072 I022 Switch' off"
fb9370
+		cset "name='O073 I023 Switch' off"
fb9370
+		cset "name='O074 I024 Switch' off"
fb9370
+		cset "name='O075 I025 Switch' off"
fb9370
+		cset "name='O076 I026 Switch' off"
fb9370
+		cset "name='O077 I027 Switch' off"
fb9370
+		cset "name='O078 I028 Switch' off"
fb9370
+		cset "name='O079 I029 Switch' off"
fb9370
+		cset "name='O002 I004 Switch' off"
fb9370
+		cset "name='O003 I005 Switch' off"
fb9370
+		cset "name='O004 I006 Switch' off"
fb9370
+		cset "name='O005 I007 Switch' off"
fb9370
+		cset "name='O006 I008 Switch' off"
fb9370
+		cset "name='O007 I009 Switch' off"
fb9370
+		cset "name='O008 I010 Switch' off"
fb9370
+		cset "name='O009 I011 Switch' off"
fb9370
+	]
fb9370
+}
fb9370
+
fb9370
 SectionDevice."HDMI" {
fb9370
 	Comment "Hdmi/DP output"
fb9370
 
fb9370
diff --git a/ucm2/MediaTek/mt8195_demo/mt8195_demo.conf b/ucm2/MediaTek/mt8195_demo/mt8195_demo.conf
fb9370
index c23dc37..896b6dc 100644
fb9370
--- a/ucm2/MediaTek/mt8195_demo/mt8195_demo.conf
fb9370
+++ b/ucm2/MediaTek/mt8195_demo/mt8195_demo.conf
fb9370
@@ -1,4 +1,4 @@
fb9370
-Syntax 3
fb9370
+Syntax 2
fb9370
 
fb9370
 SectionUseCase."HiFi" {
fb9370
 	File "/MediaTek/mt8195_demo/HiFi.conf"
fb9370
@@ -16,12 +16,12 @@ BootSequence [
fb9370
 	cset "name='PGA_L_Mux' AIN1"
fb9370
 	cset "name='HDMI_OUT_MUX' Connect"
fb9370
 	cset "name='DPTX_OUT_MUX' Connect"
fb9370
+	# we need to enable all devices before starting PA.
fb9370
+	# In our driver we use PCM, which means that we have
fb9370
+	# to route Front End to a BackEnd and then only we can
fb9370
+	# open a device. Without linking to BE it will fail.
fb9370
 	cset "name='O176 I070 Switch' on"
fb9370
 	cset "name='O177 I071 Switch' on"
fb9370
-	cset "name='O034 I168 Switch' on"
fb9370
-	cset "name='O035 I169 Switch' on"
fb9370
-	cset "name='O036 I012 Switch' on"
fb9370
-	cset "name='O037 I013 Switch' on"
fb9370
 	cset "name='O072 I022 Switch' on"
fb9370
 	cset "name='O073 I023 Switch' on"
fb9370
 	cset "name='O074 I024 Switch' on"
fb9370
@@ -30,6 +30,10 @@ BootSequence [
fb9370
 	cset "name='O077 I027 Switch' on"
fb9370
 	cset "name='O078 I028 Switch' on"
fb9370
 	cset "name='O079 I029 Switch' on"
fb9370
+	cset "name='O034 I168 Switch' on"
fb9370
+	cset "name='O035 I169 Switch' on"
fb9370
+	cset "name='O036 I012 Switch' on"
fb9370
+	cset "name='O037 I013 Switch' on"
fb9370
 	cset "name='O002 I004 Switch' on"
fb9370
 	cset "name='O003 I005 Switch' on"
fb9370
 	cset "name='O004 I006 Switch' on"
fb9370
@@ -38,26 +42,4 @@ BootSequence [
fb9370
 	cset "name='O007 I009 Switch' on"
fb9370
 	cset "name='O008 I010 Switch' on"
fb9370
 	cset "name='O009 I011 Switch' on"
fb9370
-	cset "name='O176 I070 Switch' off"
fb9370
-	cset "name='O177 I071 Switch' off"
fb9370
-	cset "name='O034 I168 Switch' off"
fb9370
-	cset "name='O035 I169 Switch' off"
fb9370
-	cset "name='O036 I012 Switch' off"
fb9370
-	cset "name='O037 I013 Switch' off"
fb9370
-	cset "name='O072 I022 Switch' off"
fb9370
-	cset "name='O073 I023 Switch' off"
fb9370
-	cset "name='O074 I024 Switch' off"
fb9370
-	cset "name='O075 I025 Switch' off"
fb9370
-	cset "name='O076 I026 Switch' off"
fb9370
-	cset "name='O077 I027 Switch' off"
fb9370
-	cset "name='O078 I028 Switch' off"
fb9370
-	cset "name='O079 I029 Switch' off"
fb9370
-	cset "name='O002 I004 Switch' off"
fb9370
-	cset "name='O003 I005 Switch' off"
fb9370
-	cset "name='O004 I006 Switch' off"
fb9370
-	cset "name='O005 I007 Switch' off"
fb9370
-	cset "name='O006 I008 Switch' off"
fb9370
-	cset "name='O007 I009 Switch' off"
fb9370
-	cset "name='O008 I010 Switch' off"
fb9370
-	cset "name='O009 I011 Switch' off"
fb9370
 ]
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From 5c865236e8de9fd75c741892fd3bd2cff62d4f3f Mon Sep 17 00:00:00 2001
fb9370
From: Jaroslav Kysela <perex@perex.cz>
fb9370
Date: Tue, 22 Nov 2022 09:54:22 +0100
fb9370
Subject: [PATCH 11/21] USB-Audio: the environment variable UCM_USB_PERIOD_TIME
fb9370
 may be undefined
fb9370
fb9370
Fixes: 71ff24c ("USB-Audio: allow to configure period size for PCM split")
fb9370
BugLink: https://github.com/alsa-project/alsa-ucm-conf/pull/240
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/USB-Audio/USB-Audio.conf | 2 +-
fb9370
 1 file changed, 1 insertion(+), 1 deletion(-)
fb9370
fb9370
diff --git a/ucm2/USB-Audio/USB-Audio.conf b/ucm2/USB-Audio/USB-Audio.conf
fb9370
index fdc29ec..1c11da9 100644
fb9370
--- a/ucm2/USB-Audio/USB-Audio.conf
fb9370
+++ b/ucm2/USB-Audio/USB-Audio.conf
fb9370
@@ -7,7 +7,7 @@ Define.SplitPCMPeriodTime 10000		# 10ms
fb9370
 If.env1 {
fb9370
 	Condition {
fb9370
 		Type String
fb9370
-		Empty "${env:UCM_USB_PERIOD_TIME}"
fb9370
+		Empty "$${env:UCM_USB_PERIOD_TIME}"
fb9370
 	}
fb9370
 	False.Define.SplitPCMPeriodTime "${env:UCM_USB_PERIOD_TIME}"
fb9370
 }
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From 01e37f4fb7aab57e3f0051d81f5f6e5b2f15c831 Mon Sep 17 00:00:00 2001
fb9370
From: Jaroslav Kysela <perex@perex.cz>
fb9370
Date: Mon, 21 Nov 2022 10:16:57 +0100
fb9370
Subject: [PATCH 12/21] HDA: DualCodecs - handle S/PDIF without analog
fb9370
 connections
fb9370
fb9370
When no analog wires are connected, the S/PDIF output cannot be
fb9370
selected in pipewire. Handle this for motherboards without Speaker
fb9370
UCM device.
fb9370
fb9370
Fixes: https://github.com/alsa-project/alsa-ucm-conf/issues/239
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/HDA/DualCodecs/HiFi.conf | 15 +++++++++++----
fb9370
 1 file changed, 11 insertions(+), 4 deletions(-)
fb9370
fb9370
diff --git a/ucm2/HDA/DualCodecs/HiFi.conf b/ucm2/HDA/DualCodecs/HiFi.conf
fb9370
index 10c9162..8c0f403 100644
fb9370
--- a/ucm2/HDA/DualCodecs/HiFi.conf
fb9370
+++ b/ucm2/HDA/DualCodecs/HiFi.conf
fb9370
@@ -66,13 +66,20 @@ SectionDevice."Line1" {
fb9370
 		}
fb9370
 		True.Value.PlaybackMixerElem "Front"
fb9370
 	}
fb9370
-	If.1 {
fb9370
+	# make S/PDIF output working when no analog jacks are connected
fb9370
+	If.speaker {
fb9370
 		Condition {
fb9370
 			Type ControlExists
fb9370
-			Control "iface=CARD,name='Line Out Front Jack'"
fb9370
+			Control "name='Speaker Playback Switch'"
fb9370
+		}
fb9370
+		True.If.1 {
fb9370
+			Condition {
fb9370
+				Type ControlExists
fb9370
+				Control "iface=CARD,name='Line Out Front Jack'"
fb9370
+			}
fb9370
+			True.Value.JackControl "Line Out Front Jack"
fb9370
+			False.Value.JackControl "Line Out Jack"
fb9370
 		}
fb9370
-		True.Value.JackControl "Line Out Front Jack"
fb9370
-		False.Value.JackControl "Line Out Jack"
fb9370
 	}
fb9370
 }
fb9370
 
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From 79a8ec44d3dcf097f4a4492c506cbcf338324175 Mon Sep 17 00:00:00 2001
fb9370
From: Jaroslav Kysela <perex@perex.cz>
fb9370
Date: Wed, 7 Dec 2022 10:18:04 +0100
fb9370
Subject: [PATCH 13/21] ucm2: sof-hda-dsp: Update Mic LED settings
fb9370
fb9370
Users expect to turn the LED on when only internal mic is off, but
fb9370
it makes sense to turn this LED when all internal inputs are off.
fb9370
fb9370
This configuration may be changed when the affected applications
fb9370
are updated.
fb9370
fb9370
BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=2134824
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf | 12 +++++++++++-
fb9370
 1 file changed, 11 insertions(+), 1 deletion(-)
fb9370
fb9370
diff --git a/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf b/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf
fb9370
index e6a8a15..9e85914 100644
fb9370
--- a/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf
fb9370
+++ b/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf
fb9370
@@ -9,7 +9,17 @@ If.devdmic {
fb9370
 		Haystack "${CardComponents}"
fb9370
 		Needle "cfg-dmics:"
fb9370
 	}
fb9370
-	True.Define.DeviceDmic "Mic1"
fb9370
+	True {
fb9370
+		Define.DeviceDmic "Mic1"
fb9370
+		FixedBootSequence [
fb9370
+			#
fb9370
+			# users expect to turn the LED on when only internal
fb9370
+			# mic is off, but it makes sense to turn this LED
fb9370
+			# when all internal inputs are off
fb9370
+			#
fb9370
+			sysw "-/class/sound/ctl-led/mic/card${CardNumber}/detach:Capture Switch"
fb9370
+		]
fb9370
+	}
fb9370
 	True.Define.DeviceMic "Mic2"
fb9370
 }
fb9370
 
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From 9ce9ddb4a84fb467602b716575ea1d8f2bab0c39 Mon Sep 17 00:00:00 2001
fb9370
From: Jaroslav Kysela <perex@perex.cz>
fb9370
Date: Wed, 7 Dec 2022 15:00:35 +0100
fb9370
Subject: [PATCH 14/21] ucm2: HDA: Update Mic LED settings for ACP DMIC
fb9370
fb9370
Users expect to turn the LED on when only internal mic is off, but
fb9370
it makes sense to turn this LED when all internal inputs are off.
fb9370
fb9370
This configuration may be changed when the affected applications
fb9370
are updated.
fb9370
fb9370
BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=2134824
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/HDA/HDA.conf | 1 +
fb9370
 1 file changed, 1 insertion(+)
fb9370
fb9370
diff --git a/ucm2/HDA/HDA.conf b/ucm2/HDA/HDA.conf
fb9370
index 64ffe83..47dfc05 100644
fb9370
--- a/ucm2/HDA/HDA.conf
fb9370
+++ b/ucm2/HDA/HDA.conf
fb9370
@@ -55,6 +55,7 @@ If.use {
fb9370
 					cset-new "name='Mic ACP LED Capture Switch' type=bool,count=1 off"
fb9370
 					exec "-/sbin/modprobe snd_ctl_led"
fb9370
 					sysw "-/class/sound/ctl-led/mic/card${CardNumber}/attach:Mic ACP LED Capture Switch"
fb9370
+					sysw "-/class/sound/ctl-led/mic/card${CardNumber}/detach:Capture Switch"
fb9370
 				]
fb9370
 			}
fb9370
 		}
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From 3984514b25a5b2a2a09d29ad8ddbc1ad78c6a1e4 Mon Sep 17 00:00:00 2001
fb9370
From: Jaroslav Kysela <perex@perex.cz>
fb9370
Date: Wed, 7 Dec 2022 15:48:05 +0100
fb9370
Subject: [PATCH 15/21] ucm2: sof-hda-dsp - If.devdmic cleanup
fb9370
fb9370
Simplify the If.devdmic block.
fb9370
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf | 2 +-
fb9370
 1 file changed, 1 insertion(+), 1 deletion(-)
fb9370
fb9370
diff --git a/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf b/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf
fb9370
index 9e85914..7ef4f24 100644
fb9370
--- a/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf
fb9370
+++ b/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf
fb9370
@@ -11,6 +11,7 @@ If.devdmic {
fb9370
 	}
fb9370
 	True {
fb9370
 		Define.DeviceDmic "Mic1"
fb9370
+		Define.DeviceMic "Mic2"
fb9370
 		FixedBootSequence [
fb9370
 			#
fb9370
 			# users expect to turn the LED on when only internal
fb9370
@@ -20,7 +21,6 @@ If.devdmic {
fb9370
 			sysw "-/class/sound/ctl-led/mic/card${CardNumber}/detach:Capture Switch"
fb9370
 		]
fb9370
 	}
fb9370
-	True.Define.DeviceMic "Mic2"
fb9370
 }
fb9370
 
fb9370
 SectionUseCase."HiFi" {
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From e395d7b743584cba60876b6356fb3bc7834992aa Mon Sep 17 00:00:00 2001
fb9370
From: Jaroslav Kysela <perex@perex.cz>
fb9370
Date: Mon, 26 Dec 2022 09:20:51 +0100
fb9370
Subject: [PATCH 16/21] sof-soundwire: set PGA capture switch for rt715 mic in
fb9370
 BootSequence
fb9370
fb9370
Fixes: https://github.com/alsa-project/alsa-ucm-conf/issues/255
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/sof-soundwire/sof-soundwire.conf | 11 +++++++++++
fb9370
 1 file changed, 11 insertions(+)
fb9370
fb9370
diff --git a/ucm2/sof-soundwire/sof-soundwire.conf b/ucm2/sof-soundwire/sof-soundwire.conf
fb9370
index 03df16c..bdc48ff 100644
fb9370
--- a/ucm2/sof-soundwire/sof-soundwire.conf
fb9370
+++ b/ucm2/sof-soundwire/sof-soundwire.conf
fb9370
@@ -61,3 +61,14 @@ If.mic_init {
fb9370
 	}
fb9370
 	True.Include.mic_init.File "/codecs/${var:MicCodec1}/init.conf"
fb9370
 }
fb9370
+
fb9370
+If.mic_init_rt715 {
fb9370
+	Condition {
fb9370
+		Type String
fb9370
+		Needle "rt715"
fb9370
+		Haystack "${var:MicCodec1}"
fb9370
+	}
fb9370
+	True.BootSequence [
fb9370
+		cset "name='PGA5.0 5 Master Capture Switch' 1"
fb9370
+	]
fb9370
+}
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From c0b9d6fb207d533d348942e02ecdc57984eb5fc3 Mon Sep 17 00:00:00 2001
fb9370
From: Kai-Chuan Hsieh <kaichuan.hsieh@canonical.com>
fb9370
Date: Mon, 26 Dec 2022 10:24:20 +0800
fb9370
Subject: [PATCH 17/21] sof-hda-dsp: Set Dmic0 Capture Switch on
fb9370
fb9370
Internal micrphone default is off after fresh installation.
fb9370
Add operation to set the control on to align with other architecture.
fb9370
fb9370
Fixes: https://github.com/alsa-project/alsa-ucm-conf/pull/259
fb9370
Signed-off-by: Kai-Chuan Hsieh <kaichuan.hsieh@canonical.com>
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf | 1 +
fb9370
 1 file changed, 1 insertion(+)
fb9370
fb9370
diff --git a/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf b/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf
fb9370
index 7ef4f24..6887938 100644
fb9370
--- a/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf
fb9370
+++ b/ucm2/Intel/sof-hda-dsp/sof-hda-dsp.conf
fb9370
@@ -83,6 +83,7 @@ If.dmic {
fb9370
 		}
fb9370
 		True.BootSequence [
fb9370
 			cset "name='Dmic0 Capture Volume' 70%"
fb9370
+			cset "name='Dmic0 Capture Switch' on"
fb9370
 		]
fb9370
 	}
fb9370
 }
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From 1923bd19c0bef947c085e2941dd8ed2d1310731e Mon Sep 17 00:00:00 2001
fb9370
From: 13r0ck <brock@szu.email>
fb9370
Date: Mon, 19 Dec 2022 18:08:38 -0700
fb9370
Subject: [PATCH 18/21] USB-Audio: alc4080 - add MSI MAG B650I Edge WiFi (ID
fb9370
 0db0:36e7)
fb9370
fb9370
This motherboard is recognized as the thelio-r3 by System76
fb9370
fb9370
Fixes: https://github.com/alsa-project/alsa-ucm-conf/pull/254
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/USB-Audio/USB-Audio.conf | 3 ++-
fb9370
 1 file changed, 2 insertions(+), 1 deletion(-)
fb9370
fb9370
diff --git a/ucm2/USB-Audio/USB-Audio.conf b/ucm2/USB-Audio/USB-Audio.conf
fb9370
index 1c11da9..6e48f98 100644
fb9370
--- a/ucm2/USB-Audio/USB-Audio.conf
fb9370
+++ b/ucm2/USB-Audio/USB-Audio.conf
fb9370
@@ -53,6 +53,7 @@ If.realtek-alc4080 {
fb9370
 		# 0db0:005a MSI MPG Z690 CARBON WIFI
fb9370
 		# 0db0:151f MSI X570S EDGE MAX WIFI
fb9370
 		# 0db0:1feb MSI Edge Wifi Z690
fb9370
+		# 0db0:36e7 MSI MAG B650I Edge WiFi
fb9370
 		# 0db0:419c MSI MPG X570S Carbon Max Wifi
fb9370
 		# 0db0:6cc9 MSI MPG Z590 Gaming Plus
fb9370
 		# 0db0:82c7 MSI MEG Z690I Unify
fb9370
@@ -60,7 +61,7 @@ If.realtek-alc4080 {
fb9370
 		# 0db0:a47c MSI MEG X570S Ace Max
fb9370
 		# 0db0:b202 MSI MAG Z690 Tomahawk Wifi
fb9370
 		# 0db0:d6e7 MSI MPG X670E Carbon Wifi
fb9370
-		Regex "USB((0414:a00e)|(0b05:(1996|1a(16|2[07]|52)))|(0db0:(005a|151f|1feb|419c|6cc9|82c7|a073|a47c|b202|d6e7)))"
fb9370
+		Regex "USB((0414:a00e)|(0b05:(1996|1a(16|2[07]|52)))|(0db0:(005a|151f|1feb|36e7|419c|6cc9|82c7|a073|a47c|b202|d6e7)))"
fb9370
 	}
fb9370
 	True.Define.ProfileName "Realtek/ALC4080"
fb9370
 }
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From fea43c9342dd32ab93fa71b419abb97778def5c9 Mon Sep 17 00:00:00 2001
fb9370
From: Samuel Williams <samuel.williams@oriontransfer.co.nz>
fb9370
Date: Sun, 11 Dec 2022 18:30:40 +1300
fb9370
Subject: [PATCH 19/21] USB-Audio: ALC4080 - Add support for ASUS ROG Crosshair
fb9370
 X670 Extreme (ID 0b05:1a53)
fb9370
fb9370
- Confirmed working.
fb9370
fb9370
Fixes: https://github.com/alsa-project/alsa-ucm-conf/pull/249
fb9370
Signed-off-by: Samuel Williams <samuel.williams@oriontransfer.co.nz>
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/USB-Audio/USB-Audio.conf | 3 ++-
fb9370
 1 file changed, 2 insertions(+), 1 deletion(-)
fb9370
fb9370
diff --git a/ucm2/USB-Audio/USB-Audio.conf b/ucm2/USB-Audio/USB-Audio.conf
fb9370
index 6e48f98..041db9d 100644
fb9370
--- a/ucm2/USB-Audio/USB-Audio.conf
fb9370
+++ b/ucm2/USB-Audio/USB-Audio.conf
fb9370
@@ -50,6 +50,7 @@ If.realtek-alc4080 {
fb9370
 		# 0b05:1a20 ASUS ROG STRIX Z690-I Gaming Wifi
fb9370
 		# 0b05:1a27 ALC4082 on ASUS ROG Maximus Z690 Hero
fb9370
 		# 0b05:1a52 ASUS ROG Strix Z790-E Gaming Wifi
fb9370
+		# 0b05:1a53 ALC4082 on ASUS ROG Crosshair X670E Extreme
fb9370
 		# 0db0:005a MSI MPG Z690 CARBON WIFI
fb9370
 		# 0db0:151f MSI X570S EDGE MAX WIFI
fb9370
 		# 0db0:1feb MSI Edge Wifi Z690
fb9370
@@ -61,7 +62,7 @@ If.realtek-alc4080 {
fb9370
 		# 0db0:a47c MSI MEG X570S Ace Max
fb9370
 		# 0db0:b202 MSI MAG Z690 Tomahawk Wifi
fb9370
 		# 0db0:d6e7 MSI MPG X670E Carbon Wifi
fb9370
-		Regex "USB((0414:a00e)|(0b05:(1996|1a(16|2[07]|52)))|(0db0:(005a|151f|1feb|36e7|419c|6cc9|82c7|a073|a47c|b202|d6e7)))"
fb9370
+		Regex "USB((0414:a00e)|(0b05:(1996|1a(16|2[07]|5[23])))|(0db0:(005a|151f|1feb|36e7|419c|6cc9|82c7|a073|a47c|b202|d6e7)))"
fb9370
 	}
fb9370
 	True.Define.ProfileName "Realtek/ALC4080"
fb9370
 }
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From 12db78292676441dfea39c2d0e5db448ec740e2a Mon Sep 17 00:00:00 2001
fb9370
From: Adrian Rudnik <adrian@klonmaschine.de>
fb9370
Date: Thu, 8 Dec 2022 00:49:13 +0100
fb9370
Subject: [PATCH 20/21] ucm2: alc4080 - add support for MSI PRO Z790-A WIFI (ID
fb9370
 0db0:d1d7)
fb9370
fb9370
Fixes: https://github.com/alsa-project/alsa-ucm-conf/pull/248
fb9370
Signed-off-by: Adrian Rudnik <adrian@klonmaschine.de>
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/USB-Audio/USB-Audio.conf | 3 ++-
fb9370
 1 file changed, 2 insertions(+), 1 deletion(-)
fb9370
fb9370
diff --git a/ucm2/USB-Audio/USB-Audio.conf b/ucm2/USB-Audio/USB-Audio.conf
fb9370
index 041db9d..da9acd0 100644
fb9370
--- a/ucm2/USB-Audio/USB-Audio.conf
fb9370
+++ b/ucm2/USB-Audio/USB-Audio.conf
fb9370
@@ -61,8 +61,9 @@ If.realtek-alc4080 {
fb9370
 		# 0db0:a073 MSI MAG X570S Torpedo Max
fb9370
 		# 0db0:a47c MSI MEG X570S Ace Max
fb9370
 		# 0db0:b202 MSI MAG Z690 Tomahawk Wifi
fb9370
+		# 0db0:d1d7 MSI PRO Z790-A WIFI
fb9370
 		# 0db0:d6e7 MSI MPG X670E Carbon Wifi
fb9370
-		Regex "USB((0414:a00e)|(0b05:(1996|1a(16|2[07]|5[23])))|(0db0:(005a|151f|1feb|36e7|419c|6cc9|82c7|a073|a47c|b202|d6e7)))"
fb9370
+		Regex "USB((0414:a00e)|(0b05:(1996|1a(16|2[07]|5[23])))|(0db0:(005a|151f|1feb|36e7|419c|6cc9|82c7|a073|a47c|b202|d1d7|d6e7)))"
fb9370
 	}
fb9370
 	True.Define.ProfileName "Realtek/ALC4080"
fb9370
 }
fb9370
-- 
fb9370
2.39.0
fb9370
fb9370
fb9370
From d771df0333e70cd474389bade0f52a804de7b5ea Mon Sep 17 00:00:00 2001
fb9370
From: 13r0ck <bnr@tuta.io>
fb9370
Date: Tue, 22 Nov 2022 15:40:50 -0700
fb9370
Subject: [PATCH 21/21] Add: 0b05:1999 ASUS ROG Strix Z590-A Gaming WiFi
fb9370
fb9370
This model is recognized as a thelio-mira-b1 by system76
fb9370
fb9370
Fixes: https://github.com/alsa-project/alsa-ucm-conf/pull/247/
fb9370
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fb9370
---
fb9370
 ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf | 13 +++++++++++++
fb9370
 ucm2/USB-Audio/USB-Audio.conf            |  3 ++-
fb9370
 2 files changed, 15 insertions(+), 1 deletion(-)
fb9370
fb9370
diff --git a/ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf b/ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf
fb9370
index fa8d445..868e267 100644
fb9370
--- a/ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf
fb9370
+++ b/ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf
fb9370
@@ -100,6 +100,19 @@ If.msi-meg-unify {
fb9370
 	}
fb9370
 }
fb9370
 
fb9370
+If.asus-rog-strix {
fb9370
+	Condition {
fb9370
+		Type RegexMatch
fb9370
+		String "${CardComponents}"
fb9370
+		Regex "USB(0b05:1999)"
fb9370
+	}
fb9370
+	True.Define {
fb9370
+		Line1PCM "hw:${CardId},3"
fb9370
+		HeadphonesName ""
fb9370
+		SpdifName ""
fb9370
+	}
fb9370
+}
fb9370
+
fb9370
 SectionVerb {
fb9370
 	EnableSequence [
fb9370
 		disdevall ""
fb9370
diff --git a/ucm2/USB-Audio/USB-Audio.conf b/ucm2/USB-Audio/USB-Audio.conf
fb9370
index da9acd0..2a27b89 100644
fb9370
--- a/ucm2/USB-Audio/USB-Audio.conf
fb9370
+++ b/ucm2/USB-Audio/USB-Audio.conf
fb9370
@@ -46,6 +46,7 @@ If.realtek-alc4080 {
fb9370
 		String "${CardComponents}"
fb9370
 		# 0414:a00e Gigabyte Z590 Aorus Pro AX
fb9370
 		# 0b05:1996 ASUS on multiple boards (including ASUS ROG Maximus XIII)
fb9370
+		# 0b05:1999 ASUS ROG Strix Z590-A Gaming WiFi
fb9370
 		# 0b05:1a16 ASUS ROG Strix B660-F Gaming WiFi
fb9370
 		# 0b05:1a20 ASUS ROG STRIX Z690-I Gaming Wifi
fb9370
 		# 0b05:1a27 ALC4082 on ASUS ROG Maximus Z690 Hero
fb9370
@@ -63,7 +64,7 @@ If.realtek-alc4080 {
fb9370
 		# 0db0:b202 MSI MAG Z690 Tomahawk Wifi
fb9370
 		# 0db0:d1d7 MSI PRO Z790-A WIFI
fb9370
 		# 0db0:d6e7 MSI MPG X670E Carbon Wifi
fb9370
-		Regex "USB((0414:a00e)|(0b05:(1996|1a(16|2[07]|5[23])))|(0db0:(005a|151f|1feb|36e7|419c|6cc9|82c7|a073|a47c|b202|d1d7|d6e7)))"
fb9370
+		Regex "USB((0414:a00e)|(0b05:(199[69]|1a(16|2[07]|5[23])))|(0db0:(005a|151f|1feb|36e7|419c|6cc9|82c7|a073|a47c|b202|d1d7|d6e7)))"
fb9370
 	}
fb9370
 	True.Define.ProfileName "Realtek/ALC4080"
fb9370
 }
fb9370
-- 
fb9370
2.39.0
fb9370