aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-multimedia/alsa/alsa-lib/0007-Lenovo-YOGA-C630-13Q50-Add-ucm-for-Speaker-and-Heads.patch
blob: 0a8407162eebf51eaae28f75b98af3a760738e5d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
From 0b1e5ae38b2b27722fb85c2c7fda1e591cd4adf3 Mon Sep 17 00:00:00 2001
From: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Date: Fri, 18 Oct 2019 00:37:29 +0100
Subject: [PATCH 07/10] Lenovo-YOGA-C630-13Q50: Add ucm for Speaker and Headset

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
---
 configure.ac                                  |   1 +
 src/conf/ucm/Lenovo-YOGA-C630-13Q50/HiFi      | 113 ++++++++++++++++++
 .../Lenovo-YOGA-C630-13Q50.conf               |  13 ++
 .../ucm/Lenovo-YOGA-C630-13Q50/Makefile.am    |   4 +
 4 files changed, 131 insertions(+)
 create mode 100644 src/conf/ucm/Lenovo-YOGA-C630-13Q50/HiFi
 create mode 100644 src/conf/ucm/Lenovo-YOGA-C630-13Q50/Lenovo-YOGA-C630-13Q50.conf
 create mode 100644 src/conf/ucm/Lenovo-YOGA-C630-13Q50/Makefile.am

diff --git a/configure.ac b/configure.ac
index ebea5949..d8e6794a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -756,6 +756,7 @@ AC_OUTPUT(Makefile doc/Makefile doc/pictures/Makefile doc/doxygen.cfg \
 	  src/conf/ucm/HDAudio-Lenovo-DualCodecs/Makefile \
 	  src/conf/ucm/kblrt5660/Makefile \
 	  src/conf/ucm/LENOVO-80XF-LenovoMIIX320_10ICR-LNVNB161216/Makefile \
+	  src/conf/ucm/Lenovo-YOGA-C630-13Q50/Makefile \
 	  src/conf/ucm/PandaBoard/Makefile \
 	  src/conf/ucm/PandaBoardES/Makefile \
 	  src/conf/ucm/PAZ00/Makefile \
diff --git a/src/conf/ucm/Lenovo-YOGA-C630-13Q50/HiFi b/src/conf/ucm/Lenovo-YOGA-C630-13Q50/HiFi
new file mode 100644
index 00000000..b3ba8be0
--- /dev/null
+++ b/src/conf/ucm/Lenovo-YOGA-C630-13Q50/HiFi
@@ -0,0 +1,113 @@
+# Use case configuration for Lenovo-YOGA-C630-13Q50 board.
+# Author: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
+
+SectionVerb {
+
+	EnableSequence [
+		cdev "hw:Lenovo-YOGA-C630-13Q50"
+		cset "name='SLIM RX6 MUX' AIF1_PB"
+		cset "name='SLIM RX7 MUX' AIF1_PB"
+		cset "name='RX INT7_1 MIX1 INP0' RX6"
+		cset "name='RX INT8_1 MIX1 INP0' RX7"
+		## gain to  0dB
+		cset "name='SLIMBUS_0_RX Audio Mixer MultiMedia1' 1"
+	]
+
+	DisableSequence [
+                cdev "hw:Lenovo-YOGA-C630-13Q50"
+		cset "name='SLIMBUS_0_RX Audio Mixer MultiMedia1' 0"
+	]
+
+	# ALSA PCM
+	Value {
+		# ALSA PCM device for HiFi
+		PlaybackPCM "hw:Lenovo-YOGA-C630-13Q50,0"
+	}
+}
+
+SectionDevice."Speakers" {
+	Comment "Speakers playback"
+
+	EnableSequence [
+		cdev "hw:Lenovo-YOGA-C630-13Q50"
+		cset "name='SLIM RX6 MUX' AIF1_PB"
+		cset "name='SLIM RX7 MUX' AIF1_PB"
+		cset "name='SLIM RX1 MUX' ZERO"
+		cset "name='SLIM RX2 MUX' ZERO"
+		cset "name='RX INT7_1 MIX1 INP0' RX6"
+		cset "name='RX INT8_1 MIX1 INP0' RX7"
+		cset "name='SLIMBUS_0_RX Audio Mixer MultiMedia1' 1"
+		cset "name='COMP7 Switch' 1"
+		cset "name='COMP8 Switch' 1"
+		## Speakers		
+		cset "name='SpkrLeft COMP Switch' 1"
+		cset "name='SpkrLeft BOOST Switch' 1"
+		cset "name='SpkrLeft DAC Switch' 1"
+		cset "name='SpkrLeft VISENSE Switch' 0"
+		cset "name='SpkrRight COMP Switch' 1"
+		cset "name='SpkrRight BOOST Switch' 1"
+		cset "name='SpkrRight DAC Switch' 1"
+		cset "name='SpkrRight VISENSE Switch' 0"
+	]
+
+	DisableSequence [
+		cdev "hw:Lenovo-YOGA-C630-13Q50"
+		cset "name='SLIM RX6 MUX' ZERO"
+		cset "name='SLIM RX7 MUX' ZERO"
+		cset "name='COMP7 Switch' 0"
+		cset "name='COMP8 Switch' 0"
+		cset "name='SLIMBUS_0_RX Audio Mixer MultiMedia1' 0"
+		cset "name='SpkrLeft DAC Switch' 0"
+		cset "name='SpkrLeft COMP Switch' 0"
+		cset "name='SpkrLeft BOOST Switch' 0"
+		cset "name='SpkrLeft VISENSE Switch' 0"
+		cset "name='SpkrRight DAC Switch' 0"
+		cset "name='SpkrRight COMP Switch' 0"
+		cset "name='SpkrRight BOOST Switch' 0"
+		cset "name='SpkrRight VISENSE Switch' 0"
+	]
+
+	Value {
+		PlaybackChannels "2"
+	}
+}
+
+SectionDevice."HeadPhones" {
+	Comment "HeadPhones playback"
+
+	EnableSequence [
+		cdev "hw:Lenovo-YOGA-C630-13Q50"
+		cset "name='SLIM RX1 MUX' AIF1_PB"
+		cset "name='SLIM RX2 MUX' AIF1_PB"
+		cset "name='SLIM RX7 MUX' ZERO"
+		cset "name='SLIM RX6 MUX' ZERO"
+		cset "name='RX INT1_2 MUX' RX1"
+		cset "name='RX INT2_2 MUX' RX2"
+		cset "name='SLIMBUS_0_RX Audio Mixer MultiMedia1' 1"
+		cset "name='COMP1 Switch' 1"
+		cset "name='COMP2 Switch' 1"
+		cset "name='RX1 Digital Volume' 68"
+		cset "name='RX2 Digital Volume' 68"
+		cset "name='RX INT1 DEM MUX' CLSH_DSM_OUT"
+		cset "name='RX INT2 DEM MUX' CLSH_DSM_OUT"
+	]
+
+	DisableSequence [
+		cdev "hw:Lenovo-YOGA-C630-13Q50"
+		cset "name='SLIM RX1 MUX' ZERO"
+		cset "name='SLIM RX2 MUX' ZERO"
+		cset "name='RX INT1_2 MUX' ZERO"
+		cset "name='RX INT2_2 MUX' ZERO"
+		cset "name='SLIMBUS_0_RX Audio Mixer MultiMedia1' 0"
+		cset "name='COMP1 Switch' 0"
+		cset "name='COMP2 Switch' 0"
+		cset "name='RX1 Digital Volume' 68"
+		cset "name='RX2 Digital Volume' 68"
+		cset "name='RX INT1 DEM MUX' ZERO"
+		cset "name='RX INT2 DEM MUX' ZERO"
+	]
+
+	Value {
+		PlaybackChannels "2"
+	}
+}
diff --git a/src/conf/ucm/Lenovo-YOGA-C630-13Q50/Lenovo-YOGA-C630-13Q50.conf b/src/conf/ucm/Lenovo-YOGA-C630-13Q50/Lenovo-YOGA-C630-13Q50.conf
new file mode 100644
index 00000000..dae84a1c
--- /dev/null
+++ b/src/conf/ucm/Lenovo-YOGA-C630-13Q50/Lenovo-YOGA-C630-13Q50.conf
@@ -0,0 +1,13 @@
+SectionUseCase."HiFi" {
+	File "HiFi"
+	Comment "HiFi quality Music."
+}
+
+SectionDefaults [
+	cdev "hw:Lenovo-YOGA-C630-13Q50"
+	cset "name='SLIM RX6 MUX' AIF1_PB"
+	cset "name='SLIM RX7 MUX' AIF1_PB"
+	cset "name='RX INT7_1 MIX1 INP0' RX6"
+	cset "name='RX INT8_1 MIX1 INP0' RX7"
+	cset "name='SLIMBUS_0_RX Audio Mixer MultiMedia1' 1"
+]
diff --git a/src/conf/ucm/Lenovo-YOGA-C630-13Q50/Makefile.am b/src/conf/ucm/Lenovo-YOGA-C630-13Q50/Makefile.am
new file mode 100644
index 00000000..05397651
--- /dev/null
+++ b/src/conf/ucm/Lenovo-YOGA-C630-13Q50/Makefile.am
@@ -0,0 +1,4 @@
+alsaconfigdir = @ALSA_CONFIG_DIR@
+ucmdir = $(alsaconfigdir)/ucm/Lenovo-YOGA-C630-13Q50
+ucm_DATA = Lenovo-YOGA-C630-13Q50.conf HiFi
+EXTRA_DIST = $(ucm_DATA)
-- 
2.24.0