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_ACPI
13 def_tristate SND_SOC_SOF_ACPI
14 select SND_SOC_SOF_BAYTRAIL if SND_SOC_SOF_BAYTRAIL_SUPPORT
15 select SND_SOC_SOF_BROADWELL if SND_SOC_SOF_BROADWELL_SUPPORT
17 This option is not user-selectable but automagically handled by
18 'select' statements at a higher level.
20 config SND_SOC_SOF_INTEL_PCI
21 def_tristate SND_SOC_SOF_PCI
22 select SND_SOC_SOF_MERRIFIELD if SND_SOC_SOF_MERRIFIELD_SUPPORT
23 select SND_SOC_SOF_APOLLOLAKE if SND_SOC_SOF_APOLLOLAKE_SUPPORT
24 select SND_SOC_SOF_GEMINILAKE if SND_SOC_SOF_GEMINILAKE_SUPPORT
25 select SND_SOC_SOF_CANNONLAKE if SND_SOC_SOF_CANNONLAKE_SUPPORT
26 select SND_SOC_SOF_COFFEELAKE if SND_SOC_SOF_COFFEELAKE_SUPPORT
27 select SND_SOC_SOF_ICELAKE if SND_SOC_SOF_ICELAKE_SUPPORT
28 select SND_SOC_SOF_COMETLAKE if SND_SOC_SOF_COMETLAKE_SUPPORT
29 select SND_SOC_SOF_TIGERLAKE if SND_SOC_SOF_TIGERLAKE_SUPPORT
30 select SND_SOC_SOF_ELKHARTLAKE if SND_SOC_SOF_ELKHARTLAKE_SUPPORT
31 select SND_SOC_SOF_JASPERLAKE if SND_SOC_SOF_JASPERLAKE_SUPPORT
33 This option is not user-selectable but automagically handled by
34 'select' statements at a higher level.
36 config SND_SOC_SOF_INTEL_HIFI_EP_IPC
39 This option is not user-selectable but automagically handled by
40 'select' statements at a higher level.
42 config SND_SOC_SOF_INTEL_ATOM_HIFI_EP
44 select SND_SOC_SOF_INTEL_COMMON
45 select SND_SOC_SOF_INTEL_HIFI_EP_IPC
47 This option is not user-selectable but automagically handled by
48 'select' statements at a higher level.
50 config SND_SOC_SOF_INTEL_COMMON
52 select SND_SOC_ACPI_INTEL_MATCH
53 select SND_SOC_SOF_XTENSA
54 select SND_SOC_INTEL_MACH
55 select SND_SOC_ACPI if ACPI
57 This option is not user-selectable but automagically handled by
58 'select' statements at a higher level.
60 if SND_SOC_SOF_INTEL_ACPI
62 config SND_SOC_SOF_BAYTRAIL_SUPPORT
63 bool "SOF support for Baytrail, Braswell and Cherrytrail"
64 depends on SND_SST_ATOM_HIFI2_PLATFORM_ACPI=n
66 This adds support for Sound Open Firmware for Intel(R) platforms
67 using the Baytrail, Braswell or Cherrytrail processors.
68 This option is mutually exclusive with the Atom/SST and Baytrail
69 legacy drivers. If you want to enable SOF on Baytrail/Cherrytrail,
70 you need to deselect those options first.
71 SOF does not support Baytrail-CR for now, so this option is not
72 recommended for distros. At some point all legacy drivers will be
73 deprecated but not before all userspace firmware/topology/UCM files
74 are made available to downstream distros.
75 Say Y if you want to enable SOF on Baytrail/Cherrytrail.
78 config SND_SOC_SOF_BAYTRAIL
80 select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
82 This option is not user-selectable but automagically handled by
83 'select' statements at a higher level.
85 config SND_SOC_SOF_BROADWELL_SUPPORT
86 bool "SOF support for Broadwell"
87 depends on SND_SOC_INTEL_HASWELL=n
89 This adds support for Sound Open Firmware for Intel(R) platforms
90 using the Broadwell processors.
91 This option is mutually exclusive with the Haswell/Broadwell legacy
92 driver. If you want to enable SOF on Broadwell you need to deselect
93 the legacy driver first.
94 SOF does not fully support Broadwell yet, so this option is not
95 recommended for distros. At some point all legacy drivers will be
96 deprecated but not before all userspace firmware/topology/UCM files
97 are made available to downstream distros.
98 Say Y if you want to enable SOF on Broadwell.
101 config SND_SOC_SOF_BROADWELL
103 select SND_SOC_SOF_INTEL_COMMON
104 select SND_SOC_SOF_INTEL_HIFI_EP_IPC
106 This option is not user-selectable but automagically handled by
107 'select' statements at a higher level.
109 endif ## SND_SOC_SOF_INTEL_ACPI
111 if SND_SOC_SOF_INTEL_PCI
113 config SND_SOC_SOF_MERRIFIELD_SUPPORT
114 bool "SOF support for Tangier/Merrifield"
116 This adds support for Sound Open Firmware for Intel(R) platforms
117 using the Tangier/Merrifield processors.
118 Say Y if you have such a device.
119 If unsure select "N".
121 config SND_SOC_SOF_MERRIFIELD
123 select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
125 This option is not user-selectable but automagically handled by
126 'select' statements at a higher level.
128 config SND_SOC_SOF_APOLLOLAKE_SUPPORT
129 bool "SOF support for Apollolake"
131 This adds support for Sound Open Firmware for Intel(R) platforms
132 using the Apollolake processors.
133 Say Y if you have such a device.
134 If unsure select "N".
136 config SND_SOC_SOF_APOLLOLAKE
138 select SND_SOC_SOF_HDA_COMMON
140 This option is not user-selectable but automagically handled by
141 'select' statements at a higher level.
143 config SND_SOC_SOF_GEMINILAKE_SUPPORT
144 bool "SOF support for GeminiLake"
146 This adds support for Sound Open Firmware for Intel(R) platforms
147 using the Geminilake processors.
148 Say Y if you have such a device.
149 If unsure select "N".
151 config SND_SOC_SOF_GEMINILAKE
153 select SND_SOC_SOF_HDA_COMMON
155 This option is not user-selectable but automagically handled by
156 'select' statements at a higher level.
158 config SND_SOC_SOF_CANNONLAKE_SUPPORT
159 bool "SOF support for Cannonlake"
161 This adds support for Sound Open Firmware for Intel(R) platforms
162 using the Cannonlake processors.
163 Say Y if you have such a device.
164 If unsure select "N".
166 config SND_SOC_SOF_CANNONLAKE
168 select SND_SOC_SOF_HDA_COMMON
169 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
171 This option is not user-selectable but automagically handled by
172 'select' statements at a higher level.
174 config SND_SOC_SOF_COFFEELAKE_SUPPORT
175 bool "SOF support for CoffeeLake"
177 This adds support for Sound Open Firmware for Intel(R) platforms
178 using the Coffeelake processors.
179 Say Y if you have such a device.
180 If unsure select "N".
182 config SND_SOC_SOF_COFFEELAKE
184 select SND_SOC_SOF_HDA_COMMON
185 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
187 This option is not user-selectable but automagically handled by
188 'select' statements at a higher level.
190 config SND_SOC_SOF_ICELAKE_SUPPORT
191 bool "SOF support for Icelake"
193 This adds support for Sound Open Firmware for Intel(R) platforms
194 using the Icelake processors.
195 Say Y if you have such a device.
196 If unsure select "N".
198 config SND_SOC_SOF_ICELAKE
200 select SND_SOC_SOF_HDA_COMMON
201 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
203 This option is not user-selectable but automagically handled by
204 'select' statements at a higher level.
206 config SND_SOC_SOF_COMETLAKE
208 select SND_SOC_SOF_HDA_COMMON
209 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
211 This option is not user-selectable but automagically handled by
212 'select' statements at a higher level.
214 config SND_SOC_SOF_COMETLAKE_SUPPORT
217 config SND_SOC_SOF_COMETLAKE_LP_SUPPORT
218 bool "SOF support for CometLake"
219 select SND_SOC_SOF_COMETLAKE_SUPPORT
221 This adds support for Sound Open Firmware for Intel(R) platforms
222 using the Cometlake processors.
223 If unsure select "N".
225 config SND_SOC_SOF_TIGERLAKE_SUPPORT
226 bool "SOF support for Tigerlake"
228 This adds support for Sound Open Firmware for Intel(R) platforms
229 using the Tigerlake processors.
230 Say Y if you have such a device.
231 If unsure select "N".
233 config SND_SOC_SOF_TIGERLAKE
235 select SND_SOC_SOF_HDA_COMMON
236 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
238 This option is not user-selectable but automagically handled by
239 'select' statements at a higher level.
241 config SND_SOC_SOF_ELKHARTLAKE_SUPPORT
242 bool "SOF support for ElkhartLake"
244 This adds support for Sound Open Firmware for Intel(R) platforms
245 using the ElkhartLake processors.
246 Say Y if you have such a device.
247 If unsure select "N".
249 config SND_SOC_SOF_ELKHARTLAKE
251 select SND_SOC_SOF_HDA_COMMON
252 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
254 This option is not user-selectable but automagically handled by
255 'select' statements at a higher level.
257 config SND_SOC_SOF_JASPERLAKE_SUPPORT
258 bool "SOF support for JasperLake"
260 This adds support for Sound Open Firmware for Intel(R) platforms
261 using the JasperLake processors.
262 Say Y if you have such a device.
263 If unsure select "N".
265 config SND_SOC_SOF_JASPERLAKE
267 select SND_SOC_SOF_HDA_COMMON
269 This option is not user-selectable but automagically handled by
270 'select' statements at a higher level.
272 config SND_SOC_SOF_HDA_COMMON
274 select SND_SOC_SOF_INTEL_COMMON
275 select SND_SOC_SOF_HDA_LINK_BASELINE
277 This option is not user-selectable but automagically handled by
278 'select' statements at a higher level.
280 if SND_SOC_SOF_HDA_COMMON
282 config SND_SOC_SOF_HDA_LINK
283 bool "SOF support for HDA Links(HDA/HDMI)"
284 depends on SND_SOC_SOF_NOCODEC=n
285 select SND_SOC_SOF_PROBE_WORK_QUEUE
287 This adds support for HDA links(HDA/HDMI) with Sound Open Firmware
288 for Intel(R) platforms.
289 Say Y if you want to enable HDA links with SOF.
290 If unsure select "N".
292 config SND_SOC_SOF_HDA_AUDIO_CODEC
293 bool "SOF support for HDAudio codecs"
294 depends on SND_SOC_SOF_HDA_LINK
296 This adds support for HDAudio codecs with Sound Open Firmware
297 for Intel(R) platforms.
298 Say Y if you want to enable HDAudio codecs with SOF.
299 If unsure select "N".
301 config SND_SOC_SOF_HDA_PROBES
302 bool "SOF enable probes over HDA"
303 depends on SND_SOC_SOF_DEBUG_PROBES
305 This option enables the data probing for Intel(R)
306 Skylake and newer platforms.
307 Say Y if you want to enable probes.
308 If unsure, select "N".
310 config SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1
311 bool "SOF enable DMI Link L1"
313 This option enables DMI L1 for both playback and capture
314 and disables known workarounds for specific HDAudio platforms.
315 Only use to look into power optimizations on platforms not
316 affected by DMI L1 issues. This option is not recommended.
317 Say Y if you want to enable DMI Link L1.
318 If unsure, select "N".
320 endif ## SND_SOC_SOF_HDA_COMMON
322 config SND_SOC_SOF_HDA_LINK_BASELINE
324 select SND_SOC_SOF_HDA if SND_SOC_SOF_HDA_LINK
326 This option is not user-selectable but automagically handled by
327 'select' statements at a higher level.
329 config SND_SOC_SOF_HDA
331 select SND_HDA_EXT_CORE if SND_SOC_SOF_HDA_LINK
332 select SND_SOC_HDAC_HDA if SND_SOC_SOF_HDA_AUDIO_CODEC
333 select SND_INTEL_DSP_CONFIG
335 This option is not user-selectable but automagically handled by
336 'select' statements at a higher level.
338 config SND_SOC_SOF_INTEL_SOUNDWIRE_LINK
339 bool "SOF support for SoundWire"
340 depends on SOUNDWIRE && ACPI
342 This adds support for SoundWire with Sound Open Firmware
343 for Intel(R) platforms.
344 Say Y if you want to enable SoundWire links with SOF.
345 If unsure select "N".
347 config SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
349 select SND_SOC_SOF_INTEL_SOUNDWIRE if SND_SOC_SOF_INTEL_SOUNDWIRE_LINK
351 This option is not user-selectable but automagically handled by
352 'select' statements at a higher level.
354 config SND_SOC_SOF_INTEL_SOUNDWIRE
356 select SOUNDWIRE_INTEL
358 This option is not user-selectable but automagically handled by
359 'select' statements at a higher level.
361 endif ## SND_SOC_SOF_INTEL_PCI
363 endif ## SND_SOC_SOF_INTEL_TOPLEVEL