[Pkg-alsa-devel] Bug#1017424: alsa-ucm-conf: Please add support for the Lenovo C630 laptop (ARM64)

Gunnar Wolf gwolf at gwolf.org
Tue Aug 16 03:38:28 BST 2022


Package: alsa-ucm-conf
Version: 1.2.7.2-1
Severity: wishlist
Tags: patch

Please consider applying the diff I am attaching. The Lenovo C630
laptop (ARM64-based) does not have sound support otherwise. I
understand this patch has been offered upstream, but got no reply
whatsoever.

I am sending this as a diff, but is available at Steev Klimaszewski
Salsa repository, commit 4b2c846, at:

    https://salsa.debian.org/steev/alsa-ucm-conf

Thanks in advance,

  - Gunnar.

-- System Information:
Debian Release: bookworm/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 5.16.0-3-amd64 (SMP w/8 CPU threads; PREEMPT)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages alsa-ucm-conf depends on:
ii  libasound2  1.2.7.2-1

alsa-ucm-conf recommends no packages.

alsa-ucm-conf suggests no packages.

-- no debconf information
-------------- next part --------------
diff --git a/debian/changelog b/debian/changelog
index e5c2829..43406d4 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+alsa-ucm-conf (1.2.7.2-1linaro1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Add C630 support
+
+ -- Steev Klimaszewski <steev at kali.org>  Thu, 04 Aug 2022 22:11:09 -0500
+
 alsa-ucm-conf (1.2.7.2-1) unstable; urgency=medium
 
   * New upstream release.
diff --git a/debian/patches/0001-ucm2-DB845c-fixes-HDMI-select-card-and-HiFi-set-Digi.patch b/debian/patches/0001-ucm2-DB845c-fixes-HDMI-select-card-and-HiFi-set-Digi.patch
new file mode 100644
index 0000000..c12855e
--- /dev/null
+++ b/debian/patches/0001-ucm2-DB845c-fixes-HDMI-select-card-and-HiFi-set-Digi.patch
@@ -0,0 +1,36 @@
+From 4bdcd82538daa39aed454f89a21734603d113b63 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= <anibal.limon at linaro.org>
+Date: Mon, 31 Aug 2020 17:31:08 -0500
+Subject: [PATCH] ucm2: DB845c fixes HDMI select card and HiFi set DigitalVol
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: An?bal Lim?n <anibal.limon at linaro.org>
+---
+ ucm2/Qualcomm/sdm845/HDMI.conf | 10 +++++++++-
+ ucm2/Qualcomm/sdm845/HiFi.conf |  3 +++
+ 2 files changed, 12 insertions(+), 1 deletion(-)
+
+diff --git a/ucm2/Qualcomm/sdm845/HDMI.conf b/ucm2/Qualcomm/sdm845/HDMI.conf
+index 1844883..61be0da 100644
+--- a/ucm2/Qualcomm/sdm845/HDMI.conf
++++ b/ucm2/Qualcomm/sdm845/HDMI.conf
+@@ -19,8 +19,16 @@ SectionDevice."HDMI" {
+ 	#Name "HDMI"
+ 	Comment "HDMI Digital Stereo Output"
+ 
++	EnableSequence [
++	]
++
++	DisableSequence [
++	]
++
++
+ 	Value {
+-		PlaybackPCM "hw:${CardId}"
++		PlaybackPCM "hw:${CardId},0"
+ 		PlaybackPriority 200
+ 	}
++
+ }
diff --git a/debian/patches/0003-ucm.conf-support-KernelModule-CardLongName.conf-path.patch b/debian/patches/0003-ucm.conf-support-KernelModule-CardLongName.conf-path.patch
new file mode 100644
index 0000000..49f02b0
--- /dev/null
+++ b/debian/patches/0003-ucm.conf-support-KernelModule-CardLongName.conf-path.patch
@@ -0,0 +1,28 @@
+From: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
+Date: Fri, 29 Jan 2021 15:31:35 +0300
+Subject: ucm.conf: support KernelModule/CardLongName.conf paths
+
+Add support for 'ucm2/module/${KernelModule}/${CardLongName}.conf'
+paths.
+
+Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
+Change-Id: Ib006691e4b384543f97897c03fe575f8278e66f5
+---
+ ucm2/ucm.conf | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/ucm2/ucm.conf b/ucm2/ucm.conf
+index 9e78df1..a9613a2 100644
+--- a/ucm2/ucm.conf
++++ b/ucm2/ucm.conf
+@@ -53,6 +53,10 @@ If.driver {
+ 			False {
+ 				Define.KernelModulePath "class/sound/card${CardNumber}/device/driver/module"
+ 				Define.KernelModule "$${sys:$KernelModulePath}"
++				UseCasePath.modulelongname {
++					Directory "module/${var:KernelModule}"
++					File "${CardLongName}.conf"
++				}
+ 				UseCasePath.module {
+ 					Directory "module"
+ 					File "${var:KernelModule}.conf"
diff --git a/debian/patches/0004-module-add-new-symlink-for-Qualcomm-sdm845-driver.patch b/debian/patches/0004-module-add-new-symlink-for-Qualcomm-sdm845-driver.patch
new file mode 100644
index 0000000..6d46996
--- /dev/null
+++ b/debian/patches/0004-module-add-new-symlink-for-Qualcomm-sdm845-driver.patch
@@ -0,0 +1,21 @@
+From: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
+Date: Fri, 29 Jan 2021 15:32:06 +0300
+Subject: module: add new symlink for Qualcomm/sdm845 driver
+
+Add module/snd_soc_sdm845 -> Qualcomm/sdm845 link.
+
+Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
+Change-Id: I5325033f47ee131499ed406ec56284bbf2f58b8d
+---
+ ucm2/module/snd_soc_sdm845 | 1 +
+ 1 file changed, 1 insertion(+)
+ create mode 120000 ucm2/module/snd_soc_sdm845
+
+diff --git a/ucm2/module/snd_soc_sdm845 b/ucm2/module/snd_soc_sdm845
+new file mode 120000
+index 0000000..6800b66
+--- /dev/null
++++ b/ucm2/module/snd_soc_sdm845
+@@ -0,0 +1 @@
++../Qualcomm/sdm845
+\ No newline at end of file
diff --git a/debian/patches/0005-ucm2-codecs-lpass-add-codec-sequences-for-wsa-and-va.patch b/debian/patches/0005-ucm2-codecs-lpass-add-codec-sequences-for-wsa-and-va.patch
new file mode 100644
index 0000000..bd4e0d6
--- /dev/null
+++ b/debian/patches/0005-ucm2-codecs-lpass-add-codec-sequences-for-wsa-and-va.patch
@@ -0,0 +1,78 @@
+From d5c17abadba6ff0cf71e95d36ba890631fa686ea Mon Sep 17 00:00:00 2001
+From: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
+Date: Fri, 20 Nov 2020 12:12:48 +0000
+Subject: [PATCH 1/2] ucm2: codecs: lpass: add codec sequences for wsa and va
+ macro
+
+Add enable/disable codec sequence for Qualcomm Low Power Audio
+Subsystem (LPASS) Codec WSA and VA Macros.
+
+Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
+---
+ ucm2/codecs/lpass/va-macro/DMIC0DisableSeq.conf    |  5 +++++
+ ucm2/codecs/lpass/va-macro/DMIC0EnableSeq.conf     |  5 +++++
+ ucm2/codecs/lpass/wsa-macro/SpeakerDisableSeq.conf | 10 ++++++++++
+ ucm2/codecs/lpass/wsa-macro/SpeakerEnableSeq.conf  | 10 ++++++++++
+ 4 files changed, 30 insertions(+)
+ create mode 100644 ucm2/codecs/lpass/va-macro/DMIC0DisableSeq.conf
+ create mode 100644 ucm2/codecs/lpass/va-macro/DMIC0EnableSeq.conf
+ create mode 100644 ucm2/codecs/lpass/wsa-macro/SpeakerDisableSeq.conf
+ create mode 100644 ucm2/codecs/lpass/wsa-macro/SpeakerEnableSeq.conf
+
+diff --git a/ucm2/codecs/lpass/va-macro/DMIC0DisableSeq.conf b/ucm2/codecs/lpass/va-macro/DMIC0DisableSeq.conf
+new file mode 100644
+index 000000000000..ec3f45aae34f
+--- /dev/null
++++ b/ucm2/codecs/lpass/va-macro/DMIC0DisableSeq.conf
+@@ -0,0 +1,5 @@
++DisableSequence [
++	cset "name='VA DMIC MUX0' ZERO"
++	cset "name='VA_DEC0 Volume' 0"
++	cset "name='VA_AIF1_CAP Mixer DEC0' 0"
++]
+diff --git a/ucm2/codecs/lpass/va-macro/DMIC0EnableSeq.conf b/ucm2/codecs/lpass/va-macro/DMIC0EnableSeq.conf
+new file mode 100644
+index 000000000000..bd6e8f589ce9
+--- /dev/null
++++ b/ucm2/codecs/lpass/va-macro/DMIC0EnableSeq.conf
+@@ -0,0 +1,5 @@
++EnableSequence [
++	cset "name='VA DMIC MUX0' DMIC0"
++	cset "name='VA_AIF1_CAP Mixer DEC0' 1"
++	cset "name='VA_DEC0 Volume' 100"
++]
+diff --git a/ucm2/codecs/lpass/wsa-macro/SpeakerDisableSeq.conf b/ucm2/codecs/lpass/wsa-macro/SpeakerDisableSeq.conf
+new file mode 100644
+index 000000000000..1f27d4cebbc4
+--- /dev/null
++++ b/ucm2/codecs/lpass/wsa-macro/SpeakerDisableSeq.conf
+@@ -0,0 +1,10 @@
++DisableSequence [
++	cset "name='WSA_RX0 Digital Volume' 0"
++	cset "name='WSA_RX1 Digital Volume' 0"
++	cset "name='WSA_COMP1 Switch' 0"
++	cset "name='WSA_COMP2 Switch' 0"
++	cset "name='WSA_RX0 INP0' ZERO"
++	cset "name='WSA_RX1 INP0' ZERO"
++	cset "name='WSA RX0 MUX' ZERO"
++	cset "name='WSA RX1 MUX' ZERO"
++]
+diff --git a/ucm2/codecs/lpass/wsa-macro/SpeakerEnableSeq.conf b/ucm2/codecs/lpass/wsa-macro/SpeakerEnableSeq.conf
+new file mode 100644
+index 000000000000..618bab45ba3a
+--- /dev/null
++++ b/ucm2/codecs/lpass/wsa-macro/SpeakerEnableSeq.conf
+@@ -0,0 +1,10 @@
++EnableSequence [
++	cset "name='WSA RX0 MUX' AIF1_PB"
++	cset "name='WSA RX1 MUX' AIF1_PB"
++	cset "name='WSA_RX0 INP0' RX0"
++	cset "name='WSA_RX1 INP0' RX1"
++	cset "name='WSA_COMP1 Switch' 1"
++	cset "name='WSA_COMP2 Switch' 1"
++	cset "name='WSA_RX0 Digital Volume' 68"
++	cset "name='WSA_RX1 Digital Volume' 68"
++]
+-- 
+2.29.2
+
diff --git a/debian/patches/0007-ucm2-module-add-snd_soc_sm8250-symlink.patch b/debian/patches/0007-ucm2-module-add-snd_soc_sm8250-symlink.patch
new file mode 100644
index 0000000..30d61c4
--- /dev/null
+++ b/debian/patches/0007-ucm2-module-add-snd_soc_sm8250-symlink.patch
@@ -0,0 +1,19 @@
+From: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
+Date: Fri, 29 Jan 2021 15:41:39 +0300
+Subject: ucm2/module: add snd_soc_sm8250 symlink
+
+Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
+Change-Id: I9818a19ef812d715d65345ea3733f635d5505c2e
+---
+ ucm2/module/snd_soc_sm8250 | 1 +
+ 1 file changed, 1 insertion(+)
+ create mode 120000 ucm2/module/snd_soc_sm8250
+
+diff --git a/ucm2/module/snd_soc_sm8250 b/ucm2/module/snd_soc_sm8250
+new file mode 120000
+index 0000000..faf64f1
+--- /dev/null
++++ b/ucm2/module/snd_soc_sm8250
+@@ -0,0 +1 @@
++../Qualcomm/sm8250
+\ No newline at end of file
diff --git a/debian/patches/sdm845-add-lenovo-yoga-c630-support.patch b/debian/patches/sdm845-add-lenovo-yoga-c630-support.patch
new file mode 100644
index 0000000..e528c2c
--- /dev/null
+++ b/debian/patches/sdm845-add-lenovo-yoga-c630-support.patch
@@ -0,0 +1,128 @@
+From 291da3276c8a09b2e76ab331f8ff0375e831d58b Mon Sep 17 00:00:00 2001
+From: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
+Date: Tue, 2 Feb 2021 16:55:29 +0000
+Subject: [PATCH 2/2] sdm845: add LENOVO Yoga C630 support
+
+LENOVO YOGA C630 has MultiMedia1 dai setup as primary Playback so add required
+HiFi configuration as well.
+
+Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
+---
+ ucm2/Qualcomm/sdm845/HiFi-MM1.conf            | 77 +++++++++++++++++++
+ .../sdm845/Lenovo-YOGA-C630-13Q50.conf        | 10 +++
+ ...81JL-LenovoYOGAC630_13Q50-LNVNB161216.conf |  1 +
+ 3 files changed, 88 insertions(+)
+ create mode 100644 ucm2/Qualcomm/sdm845/HiFi-MM1.conf
+ create mode 100644 ucm2/Qualcomm/sdm845/Lenovo-YOGA-C630-13Q50.conf
+ create mode 120000 ucm2/conf.d/sdm845/LENOVO-81JL-LenovoYOGAC630_13Q50-LNVNB161216.conf
+
+diff --git a/ucm2/Qualcomm/sdm845/HiFi-MM1.conf b/ucm2/Qualcomm/sdm845/HiFi-MM1.conf
+new file mode 100644
+index 0000000..886fe2d
+--- /dev/null
++++ b/ucm2/Qualcomm/sdm845/HiFi-MM1.conf
+@@ -0,0 +1,77 @@
++# Use case configuration for LenovoYOGAC6301.
++# Author: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
++
++SectionVerb {
++
++	EnableSequence [
++		cset "name='SLIMBUS_0_RX Audio Mixer MultiMedia1' 1"
++		cset "name='SLIMBUS_1_RX Audio Mixer MultiMedia3' 1"
++		cset "name='MultiMedia2 Mixer SLIMBUS_0_TX' 1"
++	]
++
++	Include.wcde.File "/codecs/wcd934x/DefaultEnableSeq.conf"
++	Include.wsae.File "/codecs/wsa881x/DefaultEnableSeq.conf"
++
++	Include.wcdd {
++		File "/codecs/wcd934x/DefaultDisableSeq.conf"
++		Before.DisableSequence "0"
++	}
++
++	DisableSequence [
++		cset "name='SLIMBUS_0_RX Audio Mixer MultiMedia1' 0"
++		cset "name='SLIMBUS_1_RX Audio Mixer MultiMedia3' 0"
++		cset "name='MultiMedia2 Mixer SLIMBUS_0_TX' 0"
++	]
++
++	Value {
++		TQ "HiFi"
++	}
++}
++
++SectionDevice."Speaker" {
++	Comment "Speaker playback"
++	
++	Include.wcdspke.File "/codecs/wcd934x/SpeakerEnableSeq.conf"
++	Include.wcdspkd.File "/codecs/wcd934x/SpeakerDisableSeq.conf"
++	Include.wsaspke.File "/codecs/wsa881x/SpeakerEnableSeq.conf"
++	Include.wsaspkd.File "/codecs/wsa881x/SpeakerDisableSeq.conf"
++	
++
++	Value {
++		PlaybackPriority 100
++		PlaybackPCM "hw:${CardId},0"
++		PlaybackMixer "default:${CardId}"
++		PlaybackMixerElem "Speaker Digital"
++	}
++}
++
++SectionDevice."Headphones" {
++	Comment "Headphones playback"
++
++	Include.wcdhpe.File "/codecs/wcd934x/HeadphoneEnableSeq.conf"
++	Include.wcdhpd.File "/codecs/wcd934x/HeadphoneDisableSeq.conf"
++
++	Value {
++		PlaybackPriority 200
++		PlaybackPCM "hw:${CardId},2"
++		PlaybackMixer "default:${CardId}"
++		PlaybackMixerElem "HP Digital"
++	}
++}
++
++SectionDevice."Mic" {
++	Comment "Mic"
++
++	Include.wcdmice.File "/codecs/wcd934x/HeadphoneMicEnableSeq.conf"
++	Include.wcdmicd.File "/codecs/wcd934x/HeadphoneMicDisableSeq.conf"
++
++	DisableSequence [
++		cset "name='AMIC MUX0' ZERO"
++	]
++	
++	Value {
++		CapturePriority 100
++		CapturePCM "hw:${CardId},1"
++		CaptureMixerElem "ADC2"
++	}
++}
+diff --git a/ucm2/Qualcomm/sdm845/Lenovo-YOGA-C630-13Q50.conf b/ucm2/Qualcomm/sdm845/Lenovo-YOGA-C630-13Q50.conf
+new file mode 100644
+index 0000000..227a1d0
+--- /dev/null
++++ b/ucm2/Qualcomm/sdm845/Lenovo-YOGA-C630-13Q50.conf
+@@ -0,0 +1,10 @@
++Syntax 4
++
++SectionUseCase."HiFi" {
++	File "/Qualcomm/sdm845/HiFi-MM1.conf"
++	Comment "HiFi quality Music."
++}
++
++Include.card-init.File "/lib/card-init.conf"
++Include.ctl-remap.File "/lib/ctl-remap.conf"
++Include.codec-init.File "/codecs/wcd934x/init.conf"
+diff --git a/ucm2/conf.d/sdm845/LENOVO-81JL-LenovoYOGAC630_13Q50-LNVNB161216.conf b/ucm2/conf.d/sdm845/LENOVO-81JL-LenovoYOGAC630_13Q50-LNVNB161216.conf
+new file mode 120000
+index 0000000..6db2236
+--- /dev/null
++++ b/ucm2/conf.d/sdm845/LENOVO-81JL-LenovoYOGAC630_13Q50-LNVNB161216.conf
+@@ -0,0 +1 @@
++../../Qualcomm/sdm845/Lenovo-YOGA-C630-13Q50.conf
+\ No newline at end of file
+-- 
+2.34.1
+
diff --git a/debian/patches/series b/debian/patches/series
index 0583a96..c496a27 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,10 @@
 0001-ucm2-add-PinePhone-configuration.patch
 0002-ucm2-add-PineTab-configuration.patch
 0003-ucm2-add-improved-Librem-5-profiles.patch
+0001-ucm2-DB845c-fixes-HDMI-select-card-and-HiFi-set-Digi.patch
+0003-ucm.conf-support-KernelModule-CardLongName.conf-path.patch
+0004-module-add-new-symlink-for-Qualcomm-sdm845-driver.patch
+0005-ucm2-codecs-lpass-add-codec-sequences-for-wsa-and-va.patch
+0007-ucm2-module-add-snd_soc_sm8250-symlink.patch
+sdm845-add-lenovo-yoga-c630-support.patch
+ucm2-codes-wcd834x-add-enable-disable-seq.patch
diff --git a/debian/patches/ucm2-codes-wcd834x-add-enable-disable-seq.patch b/debian/patches/ucm2-codes-wcd834x-add-enable-disable-seq.patch
new file mode 100644
index 0000000..0f6ccce
--- /dev/null
+++ b/debian/patches/ucm2-codes-wcd834x-add-enable-disable-seq.patch
@@ -0,0 +1,167 @@
+From 596af31125f1da77148810f979025124b89262ec Mon Sep 17 00:00:00 2001
+From: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
+Date: Tue, 2 Feb 2021 16:52:50 +0000
+Subject: [PATCH 1/2] ucm2: codecs: wcd934x: Add enable disable sequences
+
+Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla at linaro.org>
+---
+ ucm2/codecs/wcd934x/DefaultEnableSeq.conf     | 16 ++++--------
+ ucm2/codecs/wcd934x/HeadphoneDisableSeq.conf  | 14 ++++++-----
+ ucm2/codecs/wcd934x/HeadphoneEnableSeq.conf   | 14 ++++++-----
+ .../wcd934x/HeadphoneMicDisableSeq.conf       |  6 +++--
+ .../codecs/wcd934x/HeadphoneMicEnableSeq.conf |  7 +++---
+ ucm2/codecs/wcd934x/SpeakerDisableSeq.conf    |  6 ++---
+ ucm2/codecs/wcd934x/SpeakerEnableSeq.conf     |  4 +--
+ ucm2/codecs/wcd934x/init.conf                 | 25 +++++++++++++++++++
+ 8 files changed, 59 insertions(+), 33 deletions(-)
+ create mode 100644 ucm2/codecs/wcd934x/init.conf
+
+diff --git a/ucm2/codecs/wcd934x/DefaultEnableSeq.conf b/ucm2/codecs/wcd934x/DefaultEnableSeq.conf
+index 4b6f3e7..2dc5f2e 100644
+--- a/ucm2/codecs/wcd934x/DefaultEnableSeq.conf
++++ b/ucm2/codecs/wcd934x/DefaultEnableSeq.conf
+@@ -1,16 +1,10 @@
+ EnableSequence [
++	cset "name='SLIM RX0 MUX' AIF1_PB"
+ 	cset "name='SLIM RX1 MUX' AIF1_PB"
+-	cset "name='SLIM RX2 MUX' AIF1_PB"
+-	cset "name='SLIM RX6 MUX' ZERO"
+-	cset "name='SLIM RX7 MUX' ZERO"
+-	cset "name='SLIM RX3 MUX' ZERO"
+-	cset "name='SLIM RX4 MUX' ZERO"
+-	cset "name='SLIM RX5 MUX' ZERO"
+-	cset "name='AIF1_CAP Mixer SLIM TX0' 1"
++	cset "name='SLIM RX2 MUX' AIF2_PB"
++	cset "name='SLIM RX3 MUX' AIF2_PB"
++
+ 
+-	cset "name='RX INT7_1 MIX1 INP0' RX1"
+-	cset "name='RX INT8_1 MIX1 INP0' RX2"
+-	cset "name='RX INT1_2 MUX' RX1"
+-	cset "name='RX INT2_2 MUX' RX2"
++	cset "name='AIF1_CAP Mixer SLIM TX0' 1"
+ 	cset "name='CDC_IF TX0 MUX' DEC0"
+ ]
+diff --git a/ucm2/codecs/wcd934x/HeadphoneDisableSeq.conf b/ucm2/codecs/wcd934x/HeadphoneDisableSeq.conf
+index 0206e87..16b4625 100644
+--- a/ucm2/codecs/wcd934x/HeadphoneDisableSeq.conf
++++ b/ucm2/codecs/wcd934x/HeadphoneDisableSeq.conf
+@@ -1,6 +1,8 @@
+-cset "name='COMP1 Switch' 0"
+-cset "name='COMP2 Switch' 0"
+-cset "name='RX1 Digital Volume' 0"
+-cset "name='RX2 Digital Volume' 0"
+-cset "name='RX INT1 DEM MUX' ZERO"
+-cset "name='RX INT2 DEM MUX' ZERO"
++DisableSequence [
++	cset "name='COMP1 Switch' 0"
++	cset "name='COMP2 Switch' 0"
++	cset "name='RX INT1_1 MIX1 INP0' ZERO"
++	cset "name='RX INT2_1 MIX1 INP0' ZERO"
++	cset "name='RX INT1 DEM MUX' NORMAL_DSM_OUT"
++	cset "name='RX INT2 DEM MUX' NORMAL_DSM_OUT"
++]
+diff --git a/ucm2/codecs/wcd934x/HeadphoneEnableSeq.conf b/ucm2/codecs/wcd934x/HeadphoneEnableSeq.conf
+index 5ce7950..500527d 100644
+--- a/ucm2/codecs/wcd934x/HeadphoneEnableSeq.conf
++++ b/ucm2/codecs/wcd934x/HeadphoneEnableSeq.conf
+@@ -1,6 +1,8 @@
+-cset "name='COMP1 Switch' 1"
+-cset "name='COMP2 Switch' 1"
+-cset "name='RX INT1 DEM MUX' CLSH_DSM_OUT"
+-cset "name='RX INT2 DEM MUX' CLSH_DSM_OUT"
+-cset "name='RX1 Digital Volume' 68"
+-cset "name='RX2 Digital Volume' 68"
++EnableSequence [
++	cset "name='COMP1 Switch' 1"
++	cset "name='COMP2 Switch' 1"
++	cset "name='RX INT1_1 MIX1 INP0' RX2"
++	cset "name='RX INT2_1 MIX1 INP0' RX3"
++	cset "name='RX INT1 DEM MUX' CLSH_DSM_OUT"
++	cset "name='RX INT2 DEM MUX' CLSH_DSM_OUT"
++]
+diff --git a/ucm2/codecs/wcd934x/HeadphoneMicDisableSeq.conf b/ucm2/codecs/wcd934x/HeadphoneMicDisableSeq.conf
+index 5558446..fa87c47 100644
+--- a/ucm2/codecs/wcd934x/HeadphoneMicDisableSeq.conf
++++ b/ucm2/codecs/wcd934x/HeadphoneMicDisableSeq.conf
+@@ -1,2 +1,4 @@
+-cset "name='AMIC MUX0' ZERO"
+-cset "name='ADC2 Volume' 0"
++DisableSequence [
++	cset "name='AMIC MUX0' ZERO"
++	cset "name='ADC2 Volume' 0"
++]
+diff --git a/ucm2/codecs/wcd934x/HeadphoneMicEnableSeq.conf b/ucm2/codecs/wcd934x/HeadphoneMicEnableSeq.conf
+index ad43830..a40c580 100644
+--- a/ucm2/codecs/wcd934x/HeadphoneMicEnableSeq.conf
++++ b/ucm2/codecs/wcd934x/HeadphoneMicEnableSeq.conf
+@@ -1,3 +1,4 @@
+-cset "name='AMIC MUX0' ADC2"
+-cset "name='ADC2 Volume' 12"
+-cset "name='ADC MUX0' AMIC"
++EnableSequence [
++	cset "name='AMIC MUX0' ADC2"
++	cset "name='ADC MUX0' AMIC"
++]
+diff --git a/ucm2/codecs/wcd934x/SpeakerDisableSeq.conf b/ucm2/codecs/wcd934x/SpeakerDisableSeq.conf
+index 92f9dea..0d2e011 100644
+--- a/ucm2/codecs/wcd934x/SpeakerDisableSeq.conf
++++ b/ucm2/codecs/wcd934x/SpeakerDisableSeq.conf
+@@ -1,6 +1,6 @@
+ DisableSequence [
+-	cset "name='RX7 Digital Volume' 0"
+-	cset "name='RX8 Digital Volume' 0"
+ 	cset "name='COMP7 Switch' 0"
+ 	cset "name='COMP8 Switch' 0"
+-]
+\ No newline at end of file
++	cset "name='RX INT7_1 MIX1 INP0' ZERO"
++	cset "name='RX INT8_1 MIX1 INP0' ZERO"
++]
+diff --git a/ucm2/codecs/wcd934x/SpeakerEnableSeq.conf b/ucm2/codecs/wcd934x/SpeakerEnableSeq.conf
+index 2d8d01a..587e7c2 100644
+--- a/ucm2/codecs/wcd934x/SpeakerEnableSeq.conf
++++ b/ucm2/codecs/wcd934x/SpeakerEnableSeq.conf
+@@ -1,6 +1,6 @@
+ EnableSequence [
+ 	cset "name='COMP7 Switch' 1"
+ 	cset "name='COMP8 Switch' 1"
+-	cset "name='RX7 Digital Volume' 80"
+-	cset "name='RX8 Digital Volume' 80"
++	cset "name='RX INT7_1 MIX1 INP0' RX0"
++	cset "name='RX INT8_1 MIX1 INP0' RX1"
+ ]
+diff --git a/ucm2/codecs/wcd934x/init.conf b/ucm2/codecs/wcd934x/init.conf
+new file mode 100644
+index 0000000..aa8e46a
+--- /dev/null
++++ b/ucm2/codecs/wcd934x/init.conf
+@@ -0,0 +1,25 @@
++# WCD934X specific volume control settings
++
++BootSequence [
++	cset "name='RX1 Digital Volume' 80"
++	cset "name='RX2 Digital Volume' 80"
++	cset "name='RX7 Digital Volume' 80"
++	cset "name='RX8 Digital Volume' 80"
++	cset "name='ADC2 Volume' 12"
++]
++
++LibraryConfig.remap.Config {
++
++	ctl.default.map {
++		# Merge two mono controls into one stereo
++		"name='HP Digital Volume'" {
++			"name='RX1 Digital Volume'".vindex.0 0
++			"name='RX2 Digital Volume'".vindex.1 0
++		}
++		"name='Speaker Digital Volume'" {
++			"name='RX7 Digital Volume'".vindex.0 0
++			"name='RX8 Digital Volume'".vindex.1 0
++		}
++	}
++}
++
+-- 
+2.34.1
+


More information about the Pkg-alsa-devel mailing list