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
6 This adds support for Sound Open Firmware for Intel(R) platforms.
7 Say Y if you have such a device.
10 if SND_SOC_SOF_INTEL_TOPLEVEL
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
26 This option is not user-selectable but automagically handled by
27 'select' statements at a higher level.
29 config SND_SOC_SOF_INTEL_HIFI_EP_IPC
32 This option is not user-selectable but automagically handled by
33 'select' statements at a higher level.
35 config SND_SOC_SOF_INTEL_ATOM_HIFI_EP
37 select SND_SOC_SOF_INTEL_COMMON
38 select SND_SOC_SOF_INTEL_HIFI_EP_IPC
40 This option is not user-selectable but automagically handled by
41 'select' statements at a higher level.
43 config SND_SOC_SOF_INTEL_COMMON
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
52 This option is not user-selectable but automagically handled by
53 'select' statements at a higher level.
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
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
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.
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
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'
88 Existing firmware/topology binaries and UCM configurations typically
89 located in the root file system are already compatible with both SOF
91 SOF does not fully support Broadwell and has limitations related to
92 DMA and suspend-resume, this is not a recommended option for
94 Say Y if you want to enable SOF on Broadwell.
97 endif ## SND_SOC_SOF_ACPI
99 if SND_SOC_SOF_INTEL_PCI
101 config SND_SOC_SOF_MERRIFIELD_SUPPORT
102 bool "SOF support for Tangier/Merrifield"
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".
109 config SND_SOC_SOF_MERRIFIELD
111 select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
113 This option is not user-selectable but automagically handled by
114 'select' statements at a higher level.
116 config SND_SOC_SOF_APOLLOLAKE_SUPPORT
117 bool "SOF support for Apollolake"
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".
124 config SND_SOC_SOF_APOLLOLAKE
126 select SND_SOC_SOF_HDA_COMMON
128 This option is not user-selectable but automagically handled by
129 'select' statements at a higher level.
131 config SND_SOC_SOF_GEMINILAKE_SUPPORT
132 bool "SOF support for GeminiLake"
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".
139 config SND_SOC_SOF_GEMINILAKE
141 select SND_SOC_SOF_HDA_COMMON
143 This option is not user-selectable but automagically handled by
144 'select' statements at a higher level.
146 config SND_SOC_SOF_CANNONLAKE_SUPPORT
147 bool "SOF support for Cannonlake"
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".
154 config SND_SOC_SOF_CANNONLAKE
156 select SND_SOC_SOF_HDA_COMMON
157 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
159 This option is not user-selectable but automagically handled by
160 'select' statements at a higher level.
162 config SND_SOC_SOF_COFFEELAKE_SUPPORT
163 bool "SOF support for CoffeeLake"
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".
170 config SND_SOC_SOF_COFFEELAKE
172 select SND_SOC_SOF_HDA_COMMON
173 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
175 This option is not user-selectable but automagically handled by
176 'select' statements at a higher level.
178 config SND_SOC_SOF_ICELAKE_SUPPORT
179 bool "SOF support for Icelake"
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".
186 config SND_SOC_SOF_ICELAKE
188 select SND_SOC_SOF_HDA_COMMON
189 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
191 This option is not user-selectable but automagically handled by
192 'select' statements at a higher level.
194 config SND_SOC_SOF_COMETLAKE
196 select SND_SOC_SOF_HDA_COMMON
197 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
199 This option is not user-selectable but automagically handled by
200 'select' statements at a higher level.
202 config SND_SOC_SOF_COMETLAKE_SUPPORT
205 config SND_SOC_SOF_COMETLAKE_LP_SUPPORT
206 bool "SOF support for CometLake"
207 select SND_SOC_SOF_COMETLAKE_SUPPORT
209 This adds support for Sound Open Firmware for Intel(R) platforms
210 using the Cometlake processors.
211 If unsure select "N".
213 config SND_SOC_SOF_TIGERLAKE_SUPPORT
214 bool "SOF support for Tigerlake"
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".
221 config SND_SOC_SOF_TIGERLAKE
223 select SND_SOC_SOF_HDA_COMMON
224 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
226 This option is not user-selectable but automagically handled by
227 'select' statements at a higher level.
229 config SND_SOC_SOF_ELKHARTLAKE_SUPPORT
230 bool "SOF support for ElkhartLake"
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".
237 config SND_SOC_SOF_ELKHARTLAKE
239 select SND_SOC_SOF_HDA_COMMON
240 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
242 This option is not user-selectable but automagically handled by
243 'select' statements at a higher level.
245 config SND_SOC_SOF_JASPERLAKE_SUPPORT
246 bool "SOF support for JasperLake"
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".
253 config SND_SOC_SOF_JASPERLAKE
255 select SND_SOC_SOF_HDA_COMMON
257 This option is not user-selectable but automagically handled by
258 'select' statements at a higher level.
260 config SND_SOC_SOF_ALDERLAKE_SUPPORT
261 bool "SOF support for Alderlake"
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".
268 config SND_SOC_SOF_ALDERLAKE
270 select SND_SOC_SOF_HDA_COMMON
271 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
273 This option is not user-selectable but automagically handled by
274 'select' statements at a higher level
276 config SND_SOC_SOF_HDA_COMMON
278 select SND_INTEL_DSP_CONFIG
279 select SND_SOC_SOF_INTEL_COMMON
280 select SND_SOC_SOF_HDA_LINK_BASELINE
282 This option is not user-selectable but automagically handled by
283 'select' statements at a higher level.
285 if SND_SOC_SOF_HDA_COMMON
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
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".
297 config SND_SOC_SOF_HDA_AUDIO_CODEC
298 bool "SOF support for HDAudio codecs"
299 depends on SND_SOC_SOF_HDA_LINK
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".
306 config SND_SOC_SOF_HDA_PROBES
307 bool "SOF enable probes over HDA"
308 depends on SND_SOC_SOF_DEBUG_PROBES
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".
315 config SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1
316 bool "SOF enable DMI Link L1"
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".
325 endif ## SND_SOC_SOF_HDA_COMMON
327 config SND_SOC_SOF_HDA_LINK_BASELINE
329 select SND_SOC_SOF_HDA if SND_SOC_SOF_HDA_LINK
331 This option is not user-selectable but automagically handled by
332 'select' statements at a higher level.
334 config SND_SOC_SOF_HDA
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
339 This option is not user-selectable but automagically handled by
340 'select' statements at a higher level.
342 config SND_SOC_SOF_INTEL_SOUNDWIRE_LINK
343 bool "SOF support for SoundWire"
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".
351 config SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
353 select SND_SOC_SOF_INTEL_SOUNDWIRE if SND_SOC_SOF_INTEL_SOUNDWIRE_LINK
355 This option is not user-selectable but automagically handled by
356 'select' statements at a higher level.
358 config SND_SOC_SOF_INTEL_SOUNDWIRE
361 select SOUNDWIRE_INTEL
363 This option is not user-selectable but automagically handled by
364 'select' statements at a higher level.
366 endif ## SND_SOC_SOF_INTEL_PCI
368 endif ## SND_SOC_SOF_INTEL_TOPLEVEL