1 # SPDX-License-Identifier: GPL-2.0-only
2 menuconfig SND_SOC_QCOM
3 	tristate "ASoC support for QCOM platforms"
4 	depends on ARCH_QCOM || COMPILE_TEST
5 	help
6 	  Say Y or M if you want to add support to use audio devices
7 	  in Qualcomm Technologies SOC-based platforms.
8 
9 if SND_SOC_QCOM
10 
11 config SND_SOC_LPASS_CPU
12 	tristate
13 	select REGMAP_MMIO
14 
15 config SND_SOC_LPASS_HDMI
16 	tristate
17 	select REGMAP_MMIO
18 
19 config SND_SOC_LPASS_PLATFORM
20 	tristate
21 	select REGMAP_MMIO
22 
23 config SND_SOC_LPASS_CDC_DMA
24 	tristate
25 	select REGMAP_MMIO
26 
27 config SND_SOC_LPASS_IPQ806X
28 	tristate
29 	select SND_SOC_LPASS_CPU
30 	select SND_SOC_LPASS_PLATFORM
31 
32 config SND_SOC_LPASS_APQ8016
33 	tristate
34 	select SND_SOC_LPASS_CPU
35 	select SND_SOC_LPASS_PLATFORM
36 
37 config SND_SOC_LPASS_SC7180
38 	tristate
39 	select SND_SOC_LPASS_CPU
40 	select SND_SOC_LPASS_PLATFORM
41 	select SND_SOC_LPASS_HDMI
42 
43 config SND_SOC_LPASS_SC7280
44 	tristate
45 	select SND_SOC_LPASS_CPU
46 	select SND_SOC_LPASS_PLATFORM
47 	select SND_SOC_LPASS_HDMI
48 	select SND_SOC_LPASS_CDC_DMA
49 
50 config SND_SOC_STORM
51 	tristate "ASoC I2S support for Storm boards"
52 	depends on GPIOLIB
53 	select SND_SOC_LPASS_IPQ806X
54 	select SND_SOC_MAX98357A
55 	help
56 	  Say Y or M if you want add support for SoC audio on the
57 	  Qualcomm Technologies IPQ806X-based Storm board.
58 
59 config SND_SOC_APQ8016_SBC
60 	tristate "SoC Audio support for APQ8016 SBC platforms"
61 	select SND_SOC_LPASS_APQ8016
62 	select SND_SOC_QCOM_COMMON
63 	help
64 	  Support for Qualcomm Technologies LPASS audio block in
65 	  APQ8016 SOC-based systems.
66 	  Say Y if you want to use audio devices on MI2S.
67 
68 config SND_SOC_QCOM_COMMON
69 	tristate
70 
71 config SND_SOC_QDSP6_COMMON
72 	tristate
73 
74 config SND_SOC_QDSP6_CORE
75 	tristate
76 
77 config SND_SOC_QDSP6_AFE
78 	tristate
79 
80 config SND_SOC_QDSP6_AFE_DAI
81 	tristate
82 
83 config SND_SOC_QDSP6_AFE_CLOCKS
84 	tristate
85 
86 config SND_SOC_QDSP6_ADM
87 	tristate
88 
89 config SND_SOC_QDSP6_ROUTING
90 	tristate
91 
92 config SND_SOC_QDSP6_ASM
93 	tristate
94 
95 config SND_SOC_QDSP6_ASM_DAI
96 	select SND_SOC_COMPRESS
97 	tristate
98 
99 config SND_SOC_QDSP6_APM_DAI
100 	tristate
101 	select SND_SOC_COMPRESS
102 
103 config SND_SOC_QDSP6_APM_LPASS_DAI
104 	tristate
105 
106 config SND_SOC_QDSP6_APM
107 	tristate
108 	select SND_SOC_QDSP6_APM_DAI
109 	select SND_SOC_QDSP6_APM_LPASS_DAI
110 
111 config SND_SOC_QDSP6_PRM_LPASS_CLOCKS
112 	tristate
113 
114 config SND_SOC_QDSP6_PRM
115 	tristate
116 	select SND_SOC_QDSP6_PRM_LPASS_CLOCKS
117 
118 config SND_SOC_QDSP6
119 	tristate "SoC ALSA audio driver for QDSP6"
120 	depends on QCOM_APR
121 	depends on COMMON_CLK
122 	select SND_SOC_QDSP6_COMMON
123 	select SND_SOC_QDSP6_CORE
124 	select SND_SOC_QDSP6_AFE
125 	select SND_SOC_QDSP6_AFE_DAI
126 	select SND_SOC_QDSP6_AFE_CLOCKS
127 	select SND_SOC_QDSP6_ADM
128 	select SND_SOC_QDSP6_ROUTING
129 	select SND_SOC_QDSP6_ASM
130 	select SND_SOC_QDSP6_ASM_DAI
131 	select SND_SOC_TOPOLOGY
132 	select SND_SOC_QDSP6_APM
133 	select SND_SOC_QDSP6_PRM
134 	help
135 	 To add support for MSM QDSP6 Soc Audio.
136 	 This will enable sound soc platform specific
137 	 audio drivers. This includes q6asm, q6adm,
138 	 q6afe interfaces to DSP using apr.
139 
140 config SND_SOC_MSM8996
141 	tristate "SoC Machine driver for MSM8996 and APQ8096 boards"
142 	depends on QCOM_APR
143 	depends on COMMON_CLK
144 	select SND_SOC_QDSP6
145 	select SND_SOC_QCOM_COMMON
146 	help
147 	  Support for Qualcomm Technologies LPASS audio block in
148 	  APQ8096 SoC-based systems.
149 	  Say Y if you want to use audio device on this SoCs
150 
151 config SND_SOC_SDM845
152 	tristate "SoC Machine driver for SDM845 boards"
153 	depends on QCOM_APR && I2C && SOUNDWIRE
154 	depends on COMMON_CLK
155 	select SND_SOC_QDSP6
156 	select SND_SOC_QCOM_COMMON
157 	select SND_SOC_RT5663
158 	select SND_SOC_MAX98927
159 	imply SND_SOC_CROS_EC_CODEC
160 	help
161 	  To add support for audio on Qualcomm Technologies Inc.
162 	  SDM845 SoC-based systems.
163 	  Say Y if you want to use audio device on this SoCs.
164 
165 config SND_SOC_SM8250
166 	tristate "SoC Machine driver for SM8250 boards"
167 	depends on QCOM_APR && SOUNDWIRE
168 	depends on COMMON_CLK
169 	select SND_SOC_QDSP6
170 	select SND_SOC_QCOM_COMMON
171 	help
172 	  To add support for audio on Qualcomm Technologies Inc.
173 	  SM8250 SoC-based systems.
174 	  Say Y if you want to use audio device on this SoCs.
175 
176 config SND_SOC_SC8280XP
177 	tristate "SoC Machine driver for SC8280XP boards"
178 	depends on QCOM_APR && SOUNDWIRE
179 	depends on COMMON_CLK
180 	select SND_SOC_QDSP6
181 	select SND_SOC_QCOM_COMMON
182 	help
183 	  To add support for audio on Qualcomm Technologies Inc.
184 	  SC8280XP SoC-based systems.
185 	  Say Y if you want to use audio device on this SoCs.
186 
187 config SND_SOC_SC7180
188 	tristate "SoC Machine driver for SC7180 boards"
189 	depends on I2C && GPIOLIB
190 	depends on SOUNDWIRE || SOUNDWIRE=n
191 	select SND_SOC_QCOM_COMMON
192 	select SND_SOC_LPASS_SC7180
193 	select SND_SOC_MAX98357A
194 	select SND_SOC_RT5682_I2C
195 	select SND_SOC_RT5682S
196 	select SND_SOC_ADAU7002
197 	help
198 	  To add support for audio on Qualcomm Technologies Inc.
199 	  SC7180 SoC-based systems.
200 	  Say Y if you want to use audio device on this SoCs.
201 
202 config SND_SOC_SC7280
203 	tristate "SoC Machine driver for SC7280 boards"
204 	depends on I2C && SOUNDWIRE
205 	select SND_SOC_QCOM_COMMON
206 	select SND_SOC_LPASS_SC7280
207 	select SND_SOC_MAX98357A
208 	select SND_SOC_WCD938X_SDW
209 	select SND_SOC_LPASS_MACRO_COMMON
210 	imply SND_SOC_LPASS_RX_MACRO
211 	imply SND_SOC_LPASS_TX_MACRO
212 	select SND_SOC_RT5682_I2C
213 	select SND_SOC_RT5682S
214 	help
215 	  Add support for audio on Qualcomm Technologies Inc.
216 	  SC7280 SoC-based systems.
217 	  Say Y or M if you want to use audio device on this SoCs.
218 
219 endif #SND_SOC_QCOM
220