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_LP if SND_SOC_SOF_COMETLAKE_LP_SUPPORT
29 select SND_SOC_SOF_COMETLAKE_H if SND_SOC_SOF_COMETLAKE_H_SUPPORT
30 select SND_SOC_SOF_TIGERLAKE if SND_SOC_SOF_TIGERLAKE_SUPPORT
31 select SND_SOC_SOF_ELKHARTLAKE if SND_SOC_SOF_ELKHARTLAKE_SUPPORT
32 select SND_SOC_SOF_JASPERLAKE if SND_SOC_SOF_JASPERLAKE_SUPPORT
34 This option is not user-selectable but automagically handled by
35 'select' statements at a higher level
37 config 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_ATOM_HIFI_EP
45 select SND_SOC_SOF_INTEL_COMMON
46 select SND_SOC_SOF_INTEL_HIFI_EP_IPC
48 This option is not user-selectable but automagically handled by
49 'select' statements at a higher level
51 config SND_SOC_SOF_INTEL_COMMON
53 select SND_SOC_ACPI_INTEL_MATCH
54 select SND_SOC_SOF_XTENSA
55 select SND_SOC_INTEL_MACH
56 select SND_SOC_ACPI if ACPI
58 This option is not user-selectable but automagically handled by
59 'select' statements at a higher level
61 if SND_SOC_SOF_INTEL_ACPI
63 config SND_SOC_SOF_BAYTRAIL_SUPPORT
64 bool "SOF support for Baytrail, Braswell and Cherrytrail"
65 depends on SND_SST_ATOM_HIFI2_PLATFORM_ACPI=n
67 This adds support for Sound Open Firmware for Intel(R) platforms
68 using the Baytrail, Braswell or Cherrytrail processors.
69 This option is mutually exclusive with the Atom/SST and Baytrail
70 legacy drivers. If you want to enable SOF on Baytrail/Cherrytrail,
71 you need to deselect those options first.
72 SOF does not support Baytrail-CR for now, so this option is not
73 recommended for distros. At some point all legacy drivers will be
74 deprecated but not before all userspace firmware/topology/UCM files
75 are made available to downstream distros.
76 Say Y if you want to enable SOF on Baytrail/Cherrytrail
79 config SND_SOC_SOF_BAYTRAIL
81 select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
83 This option is not user-selectable but automagically handled by
84 'select' statements at a higher level
86 config SND_SOC_SOF_BROADWELL_SUPPORT
87 bool "SOF support for Broadwell"
88 depends on SND_SOC_INTEL_HASWELL=n
90 This adds support for Sound Open Firmware for Intel(R) platforms
91 using the Broadwell processors.
92 This option is mutually exclusive with the Haswell/Broadwell legacy
93 driver. If you want to enable SOF on Broadwell you need to deselect
94 the legacy driver first.
95 SOF does fully support Broadwell yet, so this option is not
96 recommended for distros. At some point all legacy drivers will be
97 deprecated but not before all userspace firmware/topology/UCM files
98 are made available to downstream distros.
99 Say Y if you want to enable SOF on Broadwell
100 If unsure select "N".
102 config SND_SOC_SOF_BROADWELL
104 select SND_SOC_SOF_INTEL_COMMON
105 select SND_SOC_SOF_INTEL_HIFI_EP_IPC
107 This option is not user-selectable but automagically handled by
108 'select' statements at a higher level
110 endif ## SND_SOC_SOF_INTEL_ACPI
112 if SND_SOC_SOF_INTEL_PCI
114 config SND_SOC_SOF_MERRIFIELD_SUPPORT
115 bool "SOF support for Tangier/Merrifield"
117 This adds support for Sound Open Firmware for Intel(R) platforms
118 using the Tangier/Merrifield processors.
119 Say Y if you have such a device.
120 If unsure select "N".
122 config SND_SOC_SOF_MERRIFIELD
124 select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
126 This option is not user-selectable but automagically handled by
127 'select' statements at a higher level
129 config SND_SOC_SOF_APOLLOLAKE_SUPPORT
130 bool "SOF support for Apollolake"
132 This adds support for Sound Open Firmware for Intel(R) platforms
133 using the Apollolake processors.
134 Say Y if you have such a device.
135 If unsure select "N".
137 config SND_SOC_SOF_APOLLOLAKE
139 select SND_SOC_SOF_HDA_COMMON
141 This option is not user-selectable but automagically handled by
142 'select' statements at a higher level
144 config SND_SOC_SOF_GEMINILAKE_SUPPORT
145 bool "SOF support for GeminiLake"
147 This adds support for Sound Open Firmware for Intel(R) platforms
148 using the Geminilake processors.
149 Say Y if you have such a device.
150 If unsure select "N".
152 config SND_SOC_SOF_GEMINILAKE
154 select SND_SOC_SOF_HDA_COMMON
156 This option is not user-selectable but automagically handled by
157 'select' statements at a higher level
159 config SND_SOC_SOF_CANNONLAKE_SUPPORT
160 bool "SOF support for Cannonlake"
162 This adds support for Sound Open Firmware for Intel(R) platforms
163 using the Cannonlake processors.
164 Say Y if you have such a device.
165 If unsure select "N".
167 config SND_SOC_SOF_CANNONLAKE
169 select SND_SOC_SOF_HDA_COMMON
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
186 This option is not user-selectable but automagically handled by
187 'select' statements at a higher level
189 config SND_SOC_SOF_ICELAKE_SUPPORT
190 bool "SOF support for Icelake"
192 This adds support for Sound Open Firmware for Intel(R) platforms
193 using the Icelake processors.
194 Say Y if you have such a device.
195 If unsure select "N".
197 config SND_SOC_SOF_ICELAKE
199 select SND_SOC_SOF_HDA_COMMON
201 This option is not user-selectable but automagically handled by
202 'select' statements at a higher level
204 config SND_SOC_SOF_COMETLAKE_LP
206 select SND_SOC_SOF_HDA_COMMON
208 This option is not user-selectable but automagically handled by
209 'select' statements at a higher level
211 config SND_SOC_SOF_COMETLAKE_LP_SUPPORT
212 bool "SOF support for CometLake-LP"
214 This adds support for Sound Open Firmware for Intel(R) platforms
215 using the Cometlake-LP processors.
216 Say Y if you have such a device.
217 If unsure select "N".
219 config SND_SOC_SOF_COMETLAKE_H
221 select SND_SOC_SOF_HDA_COMMON
223 This option is not user-selectable but automagically handled by
224 'select' statements at a higher level
226 config SND_SOC_SOF_COMETLAKE_H_SUPPORT
227 bool "SOF support for CometLake-H"
229 This adds support for Sound Open Firmware for Intel(R) platforms
230 using the Cometlake-H processors.
231 Say Y if you have such a device.
232 If unsure select "N".
234 config SND_SOC_SOF_TIGERLAKE_SUPPORT
235 bool "SOF support for Tigerlake"
237 This adds support for Sound Open Firmware for Intel(R) platforms
238 using the Tigerlake processors.
239 Say Y if you have such a device.
240 If unsure select "N".
242 config SND_SOC_SOF_TIGERLAKE
244 select SND_SOC_SOF_HDA_COMMON
246 This option is not user-selectable but automagically handled by
247 'select' statements at a higher level
249 config SND_SOC_SOF_ELKHARTLAKE_SUPPORT
250 bool "SOF support for ElkhartLake"
252 This adds support for Sound Open Firmware for Intel(R) platforms
253 using the ElkhartLake processors.
254 Say Y if you have such a device.
255 If unsure select "N".
257 config SND_SOC_SOF_ELKHARTLAKE
259 select SND_SOC_SOF_HDA_COMMON
261 This option is not user-selectable but automagically handled by
262 'select' statements at a higher level
264 config SND_SOC_SOF_JASPERLAKE_SUPPORT
265 bool "SOF support for JasperLake"
267 This adds support for Sound Open Firmware for Intel(R) platforms
268 using the JasperLake processors.
269 Say Y if you have such a device.
270 If unsure select "N".
272 config SND_SOC_SOF_JASPERLAKE
274 select SND_SOC_SOF_HDA_COMMON
276 This option is not user-selectable but automagically handled by
277 'select' statements at a higher level
279 config SND_SOC_SOF_HDA_COMMON
281 select SND_SOC_SOF_INTEL_COMMON
282 select SND_SOC_SOF_HDA_LINK_BASELINE
284 This option is not user-selectable but automagically handled by
285 'select' statements at a higher level
287 if SND_SOC_SOF_HDA_COMMON
289 config SND_SOC_SOF_HDA_LINK
290 bool "SOF support for HDA Links(HDA/HDMI)"
291 depends on SND_SOC_SOF_NOCODEC=n
292 select SND_SOC_SOF_PROBE_WORK_QUEUE
294 This adds support for HDA links(HDA/HDMI) with Sound Open Firmware
295 for Intel(R) platforms.
296 Say Y if you want to enable HDA links with SOF.
297 If unsure select "N".
299 config SND_SOC_SOF_HDA_AUDIO_CODEC
300 bool "SOF support for HDAudio codecs"
301 depends on SND_SOC_SOF_HDA_LINK
303 This adds support for HDAudio codecs with Sound Open Firmware
304 for Intel(R) platforms.
305 Say Y if you want to enable HDAudio codecs with SOF.
306 If unsure select "N".
308 config SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1
309 bool "SOF enable DMI Link L1"
311 This option enables DMI L1 for both playback and capture
312 and disables known workarounds for specific HDaudio platforms.
313 Only use to look into power optimizations on platforms not
314 affected by DMI L1 issues. This option is not recommended.
315 Say Y if you want to enable DMI Link L1
316 If unsure, select "N".
318 config SND_SOC_SOF_HDA_COMMON_HDMI_CODEC
319 bool "SOF common HDA HDMI codec driver"
320 depends on SND_SOC_SOF_HDA_LINK
321 depends on SND_HDA_CODEC_HDMI
323 This adds support for HDMI audio by using the common HDA
324 HDMI/DisplayPort codec driver.
325 Say Y if you want to use the common codec driver with SOF.
326 If unsure select "Y".
328 endif ## SND_SOC_SOF_HDA_COMMON
330 config SND_SOC_SOF_HDA_LINK_BASELINE
332 select SND_SOC_SOF_HDA if SND_SOC_SOF_HDA_LINK
334 This option is not user-selectable but automagically handled by
335 'select' statements at a higher level
337 config SND_SOC_SOF_HDA
339 select SND_HDA_EXT_CORE if SND_SOC_SOF_HDA_LINK
340 select SND_SOC_HDAC_HDA if SND_SOC_SOF_HDA_AUDIO_CODEC
341 select SND_INTEL_DSP_CONFIG
343 This option is not user-selectable but automagically handled by
344 'select' statements at a higher level
346 endif ## SND_SOC_SOF_INTEL_PCI
348 endif ## SND_SOC_SOF_INTEL_TOPLEVEL