xref: /linux/sound/soc/qcom/Kconfig (revision 9c2f970518c900821acdac47bbd681b99a325e3d)
1# SPDX-License-Identifier: GPL-2.0-only
2menuconfig 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
9if SND_SOC_QCOM
10
11config SND_SOC_LPASS_CPU
12	tristate
13	select REGMAP_MMIO
14
15config SND_SOC_LPASS_HDMI
16	tristate
17	select REGMAP_MMIO
18
19config SND_SOC_LPASS_PLATFORM
20	tristate
21	select REGMAP_MMIO
22
23config SND_SOC_LPASS_CDC_DMA
24	tristate
25	select REGMAP_MMIO
26
27config SND_SOC_LPASS_IPQ806X
28	tristate
29	select SND_SOC_LPASS_CPU
30	select SND_SOC_LPASS_PLATFORM
31
32config SND_SOC_LPASS_APQ8016
33	tristate
34	select SND_SOC_LPASS_CPU
35	select SND_SOC_LPASS_PLATFORM
36
37config 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
43config 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
50config 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
59config 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
68config SND_SOC_QCOM_COMMON
69	tristate
70
71config SND_SOC_QCOM_SDW
72	tristate
73
74config SND_SOC_QDSP6_COMMON
75	tristate
76
77config SND_SOC_QDSP6_CORE
78	tristate
79
80config SND_SOC_QDSP6_AFE
81	tristate
82
83config SND_SOC_QDSP6_AFE_DAI
84	tristate
85
86config SND_SOC_QDSP6_AFE_CLOCKS
87	tristate
88
89config SND_SOC_QDSP6_ADM
90	tristate
91
92config SND_SOC_QDSP6_ROUTING
93	tristate
94
95config SND_SOC_QDSP6_ASM
96	tristate
97
98config SND_SOC_QDSP6_ASM_DAI
99	select SND_SOC_COMPRESS
100	tristate
101
102config SND_SOC_QDSP6_APM_DAI
103	tristate
104	select SND_SOC_COMPRESS
105
106config SND_SOC_QDSP6_APM_LPASS_DAI
107	tristate
108
109config SND_SOC_QDSP6_APM
110	tristate
111	select SND_SOC_QDSP6_APM_DAI
112	select SND_SOC_QDSP6_APM_LPASS_DAI
113
114config SND_SOC_QDSP6_PRM_LPASS_CLOCKS
115	tristate
116
117config SND_SOC_QDSP6_PRM
118	tristate
119	select SND_SOC_QDSP6_PRM_LPASS_CLOCKS
120
121config SND_SOC_QCOM_OFFLOAD_UTILS
122	tristate
123
124config SND_SOC_QDSP6_USB
125    tristate "SoC ALSA USB offloading backing for QDSP6"
126    depends on SND_SOC_USB
127    select AUXILIARY_BUS
128    select SND_SOC_QCOM_OFFLOAD_UTILS
129
130    help
131      Adds support for USB offloading for QDSP6 ASoC
132      based platform sound cards.  This will enable the
133      Q6USB DPCM backend DAI link, which will interact
134      with the SoC USB framework to initialize a session
135      with active USB SND devices.
136
137config SND_SOC_QDSP6
138	tristate "SoC ALSA audio driver for QDSP6"
139	depends on QCOM_APR
140	depends on COMMON_CLK
141	select SND_SOC_QDSP6_COMMON
142	select SND_SOC_QDSP6_CORE
143	select SND_SOC_QDSP6_AFE
144	select SND_SOC_QDSP6_AFE_DAI
145	select SND_SOC_QDSP6_AFE_CLOCKS
146	select SND_SOC_QDSP6_ADM
147	select SND_SOC_QDSP6_ROUTING
148	select SND_SOC_QDSP6_ASM
149	select SND_SOC_QDSP6_ASM_DAI
150	select SND_SOC_TOPOLOGY
151	select SND_SOC_QDSP6_APM
152	select SND_SOC_QDSP6_PRM
153	help
154	 To add support for MSM QDSP6 Soc Audio.
155	 This will enable sound soc platform specific
156	 audio drivers. This includes q6asm, q6adm,
157	 q6afe interfaces to DSP using apr.
158
159config SND_SOC_MSM8996
160	tristate "SoC Machine driver for MSM8996 and APQ8096 boards"
161	depends on QCOM_APR
162	depends on COMMON_CLK
163	select SND_SOC_QDSP6
164	select SND_SOC_QCOM_COMMON
165	help
166	  Support for Qualcomm Technologies LPASS audio block in
167	  APQ8096 SoC-based systems.
168	  Say Y if you want to use audio device on this SoCs
169
170config SND_SOC_SDM845
171	tristate "SoC Machine driver for SDM845 boards"
172	depends on QCOM_APR && I2C && SOUNDWIRE
173	depends on COMMON_CLK
174	select SND_SOC_QDSP6
175	select SND_SOC_QCOM_COMMON
176	select SND_SOC_QCOM_SDW
177	select SND_SOC_RT5663
178	select SND_SOC_MAX98927
179	imply SND_SOC_CROS_EC_CODEC
180	help
181	  To add support for audio on Qualcomm Technologies Inc.
182	  SDM845 SoC-based systems.
183	  Say Y if you want to use audio device on this SoCs.
184
185config SND_SOC_SM8250
186	tristate "SoC Machine driver for SM8250 boards"
187	depends on QCOM_APR && SOUNDWIRE
188	depends on COMMON_CLK
189	depends on SND_SOC_QCOM_OFFLOAD_UTILS || !SND_SOC_QCOM_OFFLOAD_UTILS
190	select SND_SOC_QDSP6
191	select SND_SOC_QCOM_COMMON
192	select SND_SOC_QCOM_SDW
193	help
194	  To add support for audio on Qualcomm Technologies Inc.
195	  SM8250 SoC-based systems.
196	  Say Y if you want to use audio device on this SoCs.
197
198config SND_SOC_SC8280XP
199	tristate "SoC Machine driver for SC8280XP boards"
200	depends on QCOM_APR && SOUNDWIRE
201	depends on COMMON_CLK
202	select SND_SOC_QDSP6
203	select SND_SOC_QCOM_COMMON
204	select SND_SOC_QCOM_SDW
205	help
206	  To add support for audio on Qualcomm Technologies Inc.
207	  SC8280XP SoC-based systems.
208	  Say Y if you want to use audio device on this SoCs.
209
210config SND_SOC_SC7180
211	tristate "SoC Machine driver for SC7180 boards"
212	depends on I2C && GPIOLIB
213	depends on SOUNDWIRE || SOUNDWIRE=n
214	select SND_SOC_QCOM_COMMON
215	select SND_SOC_LPASS_SC7180
216	select SND_SOC_MAX98357A
217	select SND_SOC_RT5682_I2C
218	select SND_SOC_RT5682S
219	select SND_SOC_ADAU7002
220	help
221	  To add support for audio on Qualcomm Technologies Inc.
222	  SC7180 SoC-based systems.
223	  Say Y if you want to use audio device on this SoCs.
224
225config SND_SOC_SC7280
226	tristate "SoC Machine driver for SC7280 boards"
227	depends on I2C && SOUNDWIRE
228	select SND_SOC_QCOM_COMMON
229	select SND_SOC_QCOM_SDW
230	select SND_SOC_LPASS_SC7280
231	select SND_SOC_MAX98357A
232	select SND_SOC_WCD938X_SDW
233	select SND_SOC_LPASS_MACRO_COMMON
234	imply SND_SOC_LPASS_RX_MACRO
235	imply SND_SOC_LPASS_TX_MACRO
236	select SND_SOC_RT5682_I2C
237	select SND_SOC_RT5682S
238	help
239	  Add support for audio on Qualcomm Technologies Inc.
240	  SC7280 SoC-based systems.
241	  Say Y or M if you want to use audio device on this SoCs.
242
243config SND_SOC_X1E80100
244	tristate "SoC Machine driver for X1E80100 boards"
245	depends on QCOM_APR && SOUNDWIRE
246	depends on COMMON_CLK
247	select SND_SOC_QDSP6
248	select SND_SOC_QCOM_COMMON
249	select SND_SOC_QCOM_SDW
250	help
251	  Add support for audio on Qualcomm Technologies Inc.
252	  X1E80100 SoC-based systems.
253	  Say Y or M if you want to use audio device on this SoCs.
254
255endif #SND_SOC_QCOM
256