[PATCH alsa-ucm-conf 1/2] bytcr-wm5102: Add support for speakers connected to HPOUT2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On the Lenovo Yoga Tab 3 YT3-X90 the speaker amplifiers are connected
to the HPOUT2 output pins instead of the the SPK output pins.

Check for "cfg-spk:hpout2" in the components string which indicates
this setup and add a ucm2/codecs/wm5102/HPOut2-Speaker.conf file
for this setup.

Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
---
 ucm2/Intel/bytcr-wm5102/HiFi.conf      | 11 ++++++++++-
 ucm2/codecs/wm5102/EnableSeq.conf      |  2 ++
 ucm2/codecs/wm5102/HPOut2-Speaker.conf | 22 ++++++++++++++++++++++
 3 files changed, 34 insertions(+), 1 deletion(-)
 create mode 100644 ucm2/codecs/wm5102/HPOut2-Speaker.conf

diff --git a/ucm2/Intel/bytcr-wm5102/HiFi.conf b/ucm2/Intel/bytcr-wm5102/HiFi.conf
index 1269868..2afc757 100644
--- a/ucm2/Intel/bytcr-wm5102/HiFi.conf
+++ b/ucm2/Intel/bytcr-wm5102/HiFi.conf
@@ -21,7 +21,16 @@ SectionVerb {
 	}
 }
 
-Include.spk.File "/codecs/wm5102/Speaker.conf"
+If.spk {
+	Condition {
+		Type String
+		Haystack "${CardComponents}"
+		Needle "cfg-spk:hpout2"
+	}
+	True.Include.hpout2.File "/codecs/wm5102/HPOut2-Speaker.conf"
+	False.Include.spk.File "/codecs/wm5102/Speaker.conf"
+}
+
 Include.hp.File "/codecs/wm5102/HeadPhones.conf"
 Include.mic.File "/codecs/wm5102/IN3-InternalMic.conf"
 Include.headset.File "/codecs/wm5102/IN1-HeadsetMic.conf"
diff --git a/ucm2/codecs/wm5102/EnableSeq.conf b/ucm2/codecs/wm5102/EnableSeq.conf
index 6a857a2..87cb3bb 100644
--- a/ucm2/codecs/wm5102/EnableSeq.conf
+++ b/ucm2/codecs/wm5102/EnableSeq.conf
@@ -4,6 +4,8 @@ EnableSequence [
 	cset "name='SPKOUTR Input 1' AIF1RX2"
 	cset "name='HPOUT1L Input 1' AIF1RX1"
 	cset "name='HPOUT1R Input 1' AIF1RX2"
+	cset "name='HPOUT2L Input 1' AIF1RX1"
+	cset "name='HPOUT2R Input 1' AIF1RX2"
 
 	# Both mics are quite soft by default, boost then
 	cset "name='IN1L Volume' 28"
diff --git a/ucm2/codecs/wm5102/HPOut2-Speaker.conf b/ucm2/codecs/wm5102/HPOut2-Speaker.conf
new file mode 100644
index 0000000..375f9ba
--- /dev/null
+++ b/ucm2/codecs/wm5102/HPOut2-Speaker.conf
@@ -0,0 +1,22 @@
+SectionDevice."Speaker" {
+	Comment "Speakers"
+
+	Value {
+		PlaybackPriority 100
+		PlaybackPCM "hw:${CardId}"
+	}
+
+	ConflictingDevice [
+		"Headphones"
+	]
+
+	EnableSequence [
+		cset "name='HPOUT2 Digital Switch' on"
+		cset "name='Speaker Switch' on"
+	]
+
+	DisableSequence [
+		cset "name='HPOUT2 Digital Switch' off"
+		cset "name='Speaker Switch' off"
+	]
+}
-- 
2.41.0




[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux