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