ASoC: SOF: ACPI: avoid reverse module dependency
[linux-2.6-microblaze.git] / sound / soc / sof / intel / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 config SND_SOC_SOF_INTEL_TOPLEVEL
3         bool "SOF support for Intel audio DSPs"
4         depends on X86 || COMPILE_TEST
5         help
6           This adds support for Sound Open Firmware for Intel(R) platforms.
7           Say Y if you have such a device.
8           If unsure select "N".
9
10 if SND_SOC_SOF_INTEL_TOPLEVEL
11
12 config SND_SOC_SOF_INTEL_PCI
13         def_tristate SND_SOC_SOF_PCI
14         select SND_SOC_SOF_MERRIFIELD  if SND_SOC_SOF_MERRIFIELD_SUPPORT
15         select SND_SOC_SOF_APOLLOLAKE  if SND_SOC_SOF_APOLLOLAKE_SUPPORT
16         select SND_SOC_SOF_GEMINILAKE  if SND_SOC_SOF_GEMINILAKE_SUPPORT
17         select SND_SOC_SOF_CANNONLAKE  if SND_SOC_SOF_CANNONLAKE_SUPPORT
18         select SND_SOC_SOF_COFFEELAKE  if SND_SOC_SOF_COFFEELAKE_SUPPORT
19         select SND_SOC_SOF_ICELAKE     if SND_SOC_SOF_ICELAKE_SUPPORT
20         select SND_SOC_SOF_COMETLAKE   if SND_SOC_SOF_COMETLAKE_SUPPORT
21         select SND_SOC_SOF_TIGERLAKE   if SND_SOC_SOF_TIGERLAKE_SUPPORT
22         select SND_SOC_SOF_ELKHARTLAKE if SND_SOC_SOF_ELKHARTLAKE_SUPPORT
23         select SND_SOC_SOF_JASPERLAKE  if SND_SOC_SOF_JASPERLAKE_SUPPORT
24         select SND_SOC_SOF_ALDERLAKE   if SND_SOC_SOF_ALDERLAKE_SUPPORT
25         help
26           This option is not user-selectable but automagically handled by
27           'select' statements at a higher level.
28
29 config SND_SOC_SOF_INTEL_HIFI_EP_IPC
30         tristate
31         help
32           This option is not user-selectable but automagically handled by
33           'select' statements at a higher level.
34
35 config SND_SOC_SOF_INTEL_ATOM_HIFI_EP
36         tristate
37         select SND_SOC_SOF_INTEL_COMMON
38         select SND_SOC_SOF_INTEL_HIFI_EP_IPC
39         help
40           This option is not user-selectable but automagically handled by
41           'select' statements at a higher level.
42
43 config SND_SOC_SOF_INTEL_COMMON
44         tristate
45         select SND_SOC_SOF
46         select SND_SOC_ACPI_INTEL_MATCH
47         select SND_SOC_SOF_XTENSA
48         select SND_SOC_INTEL_MACH
49         select SND_SOC_ACPI if ACPI
50         select SND_INTEL_DSP_CONFIG
51         help
52           This option is not user-selectable but automagically handled by
53           'select' statements at a higher level.
54
55 if SND_SOC_SOF_ACPI
56
57 config SND_SOC_SOF_BAYTRAIL
58         tristate "SOF support for Baytrail, Braswell and Cherrytrail"
59         default SND_SOC_SOF_ACPI
60         select SND_SOC_SOF_INTEL_COMMON
61         select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
62         select SND_SOC_SOF_ACPI_DEV
63         select IOSF_MBI if X86 && PCI
64         help
65           This adds support for Sound Open Firmware for Intel(R) platforms
66           using the Baytrail, Braswell or Cherrytrail processors.
67           This option can coexist in the same build with the Atom legacy
68           drivers, currently the default but which will be deprecated
69           at some point.
70           Existing firmware/topology binaries and UCM configurations
71           typically located in the root file system are already
72           compatible with both SOF or Atom/SST legacy drivers.
73           This is a recommended option for distributions.
74           Say Y if you want to enable SOF on Baytrail/Cherrytrail.
75           If unsure select "N".
76
77 config SND_SOC_SOF_BROADWELL
78         tristate "SOF support for Broadwell"
79         default SND_SOC_SOF_ACPI
80         select SND_SOC_SOF_INTEL_COMMON
81         select SND_SOC_SOF_INTEL_HIFI_EP_IPC
82         select SND_SOC_SOF_ACPI_DEV
83         help
84           This adds support for Sound Open Firmware for Intel(R) platforms
85           using the Broadwell processors.
86           This option can coexist in the same build with the default 'catpt'
87           driver.
88           Existing firmware/topology binaries and UCM configurations typically
89           located in the root file system are already compatible with both SOF
90           or catpt drivers.
91           SOF does not fully support Broadwell and has limitations related to
92           DMA and suspend-resume, this is not a recommended option for
93           distributions.
94           Say Y if you want to enable SOF on Broadwell.
95           If unsure select "N".
96
97 endif ## SND_SOC_SOF_ACPI
98
99 if SND_SOC_SOF_INTEL_PCI
100
101 config SND_SOC_SOF_MERRIFIELD_SUPPORT
102         bool "SOF support for Tangier/Merrifield"
103         help
104           This adds support for Sound Open Firmware for Intel(R) platforms
105           using the Tangier/Merrifield processors.
106           Say Y if you have such a device.
107           If unsure select "N".
108
109 config SND_SOC_SOF_MERRIFIELD
110         tristate
111         select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
112         help
113           This option is not user-selectable but automagically handled by
114           'select' statements at a higher level.
115
116 config SND_SOC_SOF_APOLLOLAKE_SUPPORT
117         bool "SOF support for Apollolake"
118         help
119           This adds support for Sound Open Firmware for Intel(R) platforms
120           using the Apollolake processors.
121           Say Y if you have such a device.
122           If unsure select "N".
123
124 config SND_SOC_SOF_APOLLOLAKE
125         tristate
126         select SND_SOC_SOF_HDA_COMMON
127         help
128           This option is not user-selectable but automagically handled by
129           'select' statements at a higher level.
130
131 config SND_SOC_SOF_GEMINILAKE_SUPPORT
132         bool "SOF support for GeminiLake"
133         help
134           This adds support for Sound Open Firmware for Intel(R) platforms
135           using the Geminilake processors.
136           Say Y if you have such a device.
137           If unsure select "N".
138
139 config SND_SOC_SOF_GEMINILAKE
140         tristate
141         select SND_SOC_SOF_HDA_COMMON
142         help
143           This option is not user-selectable but automagically handled by
144           'select' statements at a higher level.
145
146 config SND_SOC_SOF_CANNONLAKE_SUPPORT
147         bool "SOF support for Cannonlake"
148         help
149           This adds support for Sound Open Firmware for Intel(R) platforms
150           using the Cannonlake processors.
151           Say Y if you have such a device.
152           If unsure select "N".
153
154 config SND_SOC_SOF_CANNONLAKE
155         tristate
156         select SND_SOC_SOF_HDA_COMMON
157         select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
158         help
159           This option is not user-selectable but automagically handled by
160           'select' statements at a higher level.
161
162 config SND_SOC_SOF_COFFEELAKE_SUPPORT
163         bool "SOF support for CoffeeLake"
164         help
165           This adds support for Sound Open Firmware for Intel(R) platforms
166           using the Coffeelake processors.
167           Say Y if you have such a device.
168           If unsure select "N".
169
170 config SND_SOC_SOF_COFFEELAKE
171         tristate
172         select SND_SOC_SOF_HDA_COMMON
173         select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
174         help
175           This option is not user-selectable but automagically handled by
176           'select' statements at a higher level.
177
178 config SND_SOC_SOF_ICELAKE_SUPPORT
179         bool "SOF support for Icelake"
180         help
181           This adds support for Sound Open Firmware for Intel(R) platforms
182           using the Icelake processors.
183           Say Y if you have such a device.
184           If unsure select "N".
185
186 config SND_SOC_SOF_ICELAKE
187         tristate
188         select SND_SOC_SOF_HDA_COMMON
189         select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
190         help
191           This option is not user-selectable but automagically handled by
192           'select' statements at a higher level.
193
194 config SND_SOC_SOF_COMETLAKE
195         tristate
196         select SND_SOC_SOF_HDA_COMMON
197         select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
198         help
199           This option is not user-selectable but automagically handled by
200           'select' statements at a higher level.
201
202 config SND_SOC_SOF_COMETLAKE_SUPPORT
203         bool
204
205 config SND_SOC_SOF_COMETLAKE_LP_SUPPORT
206         bool "SOF support for CometLake"
207         select SND_SOC_SOF_COMETLAKE_SUPPORT
208         help
209           This adds support for Sound Open Firmware for Intel(R) platforms
210           using the Cometlake processors.
211           If unsure select "N".
212
213 config SND_SOC_SOF_TIGERLAKE_SUPPORT
214         bool "SOF support for Tigerlake"
215         help
216           This adds support for Sound Open Firmware for Intel(R) platforms
217           using the Tigerlake processors.
218           Say Y if you have such a device.
219           If unsure select "N".
220
221 config SND_SOC_SOF_TIGERLAKE
222         tristate
223         select SND_SOC_SOF_HDA_COMMON
224         select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
225         help
226           This option is not user-selectable but automagically handled by
227           'select' statements at a higher level.
228
229 config SND_SOC_SOF_ELKHARTLAKE_SUPPORT
230         bool "SOF support for ElkhartLake"
231         help
232           This adds support for Sound Open Firmware for Intel(R) platforms
233           using the ElkhartLake processors.
234           Say Y if you have such a device.
235           If unsure select "N".
236
237 config SND_SOC_SOF_ELKHARTLAKE
238         tristate
239         select SND_SOC_SOF_HDA_COMMON
240         select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
241         help
242           This option is not user-selectable but automagically handled by
243           'select' statements at a higher level.
244
245 config SND_SOC_SOF_JASPERLAKE_SUPPORT
246         bool "SOF support for JasperLake"
247         help
248           This adds support for Sound Open Firmware for Intel(R) platforms
249           using the JasperLake processors.
250           Say Y if you have such a device.
251           If unsure select "N".
252
253 config SND_SOC_SOF_JASPERLAKE
254         tristate
255         select SND_SOC_SOF_HDA_COMMON
256         help
257           This option is not user-selectable but automagically handled by
258           'select' statements at a higher level.
259
260 config SND_SOC_SOF_ALDERLAKE_SUPPORT
261         bool "SOF support for Alderlake"
262         help
263           This adds support for Sound Open Firmware for Intel(R) platforms
264           using the Alderlake processors.
265           Say Y if you have such a device.
266           If unsure select "N".
267
268 config SND_SOC_SOF_ALDERLAKE
269         tristate
270         select SND_SOC_SOF_HDA_COMMON
271         select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
272         help
273           This option is not user-selectable but automagically handled by
274           'select' statements at a higher level
275
276 config SND_SOC_SOF_HDA_COMMON
277         tristate
278         select SND_INTEL_DSP_CONFIG
279         select SND_SOC_SOF_INTEL_COMMON
280         select SND_SOC_SOF_HDA_LINK_BASELINE
281         help
282           This option is not user-selectable but automagically handled by
283           'select' statements at a higher level.
284
285 if SND_SOC_SOF_HDA_COMMON
286
287 config SND_SOC_SOF_HDA_LINK
288         bool "SOF support for HDA Links(HDA/HDMI)"
289         depends on SND_SOC_SOF_NOCODEC=n
290         select SND_SOC_SOF_PROBE_WORK_QUEUE
291         help
292           This adds support for HDA links(HDA/HDMI) with Sound Open Firmware
293           for Intel(R) platforms.
294           Say Y if you want to enable HDA links with SOF.
295           If unsure select "N".
296
297 config SND_SOC_SOF_HDA_AUDIO_CODEC
298         bool "SOF support for HDAudio codecs"
299         depends on SND_SOC_SOF_HDA_LINK
300         help
301           This adds support for HDAudio codecs with Sound Open Firmware
302           for Intel(R) platforms.
303           Say Y if you want to enable HDAudio codecs with SOF.
304           If unsure select "N".
305
306 config SND_SOC_SOF_HDA_PROBES
307         bool "SOF enable probes over HDA"
308         depends on SND_SOC_SOF_DEBUG_PROBES
309         help
310           This option enables the data probing for Intel(R)
311           Skylake and newer platforms.
312           Say Y if you want to enable probes.
313           If unsure, select "N".
314
315 config SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1
316         bool "SOF enable DMI Link L1"
317         help
318           This option enables DMI L1 for both playback and capture
319           and disables known workarounds for specific HDAudio platforms.
320           Only use to look into power optimizations on platforms not
321           affected by DMI L1 issues. This option is not recommended.
322           Say Y if you want to enable DMI Link L1.
323           If unsure, select "N".
324
325 endif ## SND_SOC_SOF_HDA_COMMON
326
327 config SND_SOC_SOF_HDA_LINK_BASELINE
328         tristate
329         select SND_SOC_SOF_HDA if SND_SOC_SOF_HDA_LINK
330         help
331           This option is not user-selectable but automagically handled by
332           'select' statements at a higher level.
333
334 config SND_SOC_SOF_HDA
335         tristate
336         select SND_HDA_EXT_CORE if SND_SOC_SOF_HDA_LINK
337         select SND_SOC_HDAC_HDA if SND_SOC_SOF_HDA_AUDIO_CODEC
338         help
339           This option is not user-selectable but automagically handled by
340           'select' statements at a higher level.
341
342 config SND_SOC_SOF_INTEL_SOUNDWIRE_LINK
343         bool "SOF support for SoundWire"
344         depends on ACPI
345         help
346           This adds support for SoundWire with Sound Open Firmware
347           for Intel(R) platforms.
348           Say Y if you want to enable SoundWire links with SOF.
349           If unsure select "N".
350
351 config SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
352         tristate
353         select SND_SOC_SOF_INTEL_SOUNDWIRE if SND_SOC_SOF_INTEL_SOUNDWIRE_LINK
354         help
355           This option is not user-selectable but automagically handled by
356           'select' statements at a higher level.
357
358 config SND_SOC_SOF_INTEL_SOUNDWIRE
359         tristate
360         select SOUNDWIRE
361         select SOUNDWIRE_INTEL
362         help
363           This option is not user-selectable but automagically handled by
364           'select' statements at a higher level.
365
366 endif ## SND_SOC_SOF_INTEL_PCI
367
368 endif ## SND_SOC_SOF_INTEL_TOPLEVEL