xref: /linux/sound/soc/sof/intel/Kconfig (revision e1ade4c55ae3559b082faf9f5207cc6caba1c546)
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	depends on SND_SST_ATOM_HIFI2_PLATFORM_ACPI=n
66	help
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.
77	  If unsure select "N".
78
79config SND_SOC_SOF_BAYTRAIL
80	tristate
81	select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
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	depends on SND_SOC_INTEL_HASWELL=n
89	help
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 not 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".
101
102config SND_SOC_SOF_BROADWELL
103	tristate
104	select SND_SOC_SOF_INTEL_COMMON
105	select SND_SOC_SOF_INTEL_HIFI_EP_IPC
106	help
107	  This option is not user-selectable but automagically handled by
108	  'select' statements at a higher level.
109
110endif ## SND_SOC_SOF_INTEL_ACPI
111
112if SND_SOC_SOF_INTEL_PCI
113
114config SND_SOC_SOF_MERRIFIELD_SUPPORT
115	bool "SOF support for Tangier/Merrifield"
116	help
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".
121
122config SND_SOC_SOF_MERRIFIELD
123	tristate
124	select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
125	help
126	  This option is not user-selectable but automagically handled by
127	  'select' statements at a higher level.
128
129config SND_SOC_SOF_APOLLOLAKE_SUPPORT
130	bool "SOF support for Apollolake"
131	help
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".
136
137config SND_SOC_SOF_APOLLOLAKE
138	tristate
139	select SND_SOC_SOF_HDA_COMMON
140	help
141	  This option is not user-selectable but automagically handled by
142	  'select' statements at a higher level.
143
144config SND_SOC_SOF_GEMINILAKE_SUPPORT
145	bool "SOF support for GeminiLake"
146	help
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".
151
152config SND_SOC_SOF_GEMINILAKE
153	tristate
154	select SND_SOC_SOF_HDA_COMMON
155	help
156	  This option is not user-selectable but automagically handled by
157	  'select' statements at a higher level.
158
159config SND_SOC_SOF_CANNONLAKE_SUPPORT
160	bool "SOF support for Cannonlake"
161	help
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".
166
167config SND_SOC_SOF_CANNONLAKE
168	tristate
169	select SND_SOC_SOF_HDA_COMMON
170	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
171	help
172	  This option is not user-selectable but automagically handled by
173	  'select' statements at a higher level.
174
175config SND_SOC_SOF_COFFEELAKE_SUPPORT
176	bool "SOF support for CoffeeLake"
177	help
178	  This adds support for Sound Open Firmware for Intel(R) platforms
179	  using the Coffeelake processors.
180	  Say Y if you have such a device.
181	  If unsure select "N".
182
183config SND_SOC_SOF_COFFEELAKE
184	tristate
185	select SND_SOC_SOF_HDA_COMMON
186	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
187	help
188	  This option is not user-selectable but automagically handled by
189	  'select' statements at a higher level.
190
191config SND_SOC_SOF_ICELAKE_SUPPORT
192	bool "SOF support for Icelake"
193	help
194	  This adds support for Sound Open Firmware for Intel(R) platforms
195	  using the Icelake processors.
196	  Say Y if you have such a device.
197	  If unsure select "N".
198
199config SND_SOC_SOF_ICELAKE
200	tristate
201	select SND_SOC_SOF_HDA_COMMON
202	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
203	help
204	  This option is not user-selectable but automagically handled by
205	  'select' statements at a higher level.
206
207config SND_SOC_SOF_COMETLAKE
208	tristate
209	select SND_SOC_SOF_HDA_COMMON
210	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
211	help
212	  This option is not user-selectable but automagically handled by
213	  'select' statements at a higher level.
214
215config SND_SOC_SOF_COMETLAKE_SUPPORT
216	bool
217
218config SND_SOC_SOF_COMETLAKE_LP_SUPPORT
219	bool "SOF support for CometLake"
220	select SND_SOC_SOF_COMETLAKE_SUPPORT
221	help
222	  This adds support for Sound Open Firmware for Intel(R) platforms
223	  using the Cometlake processors.
224	  If unsure select "N".
225
226config SND_SOC_SOF_TIGERLAKE_SUPPORT
227	bool "SOF support for Tigerlake"
228	help
229	  This adds support for Sound Open Firmware for Intel(R) platforms
230	  using the Tigerlake processors.
231	  Say Y if you have such a device.
232	  If unsure select "N".
233
234config SND_SOC_SOF_TIGERLAKE
235	tristate
236	select SND_SOC_SOF_HDA_COMMON
237	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
238	help
239	  This option is not user-selectable but automagically handled by
240	  'select' statements at a higher level.
241
242config SND_SOC_SOF_ELKHARTLAKE_SUPPORT
243	bool "SOF support for ElkhartLake"
244	help
245	  This adds support for Sound Open Firmware for Intel(R) platforms
246	  using the ElkhartLake processors.
247	  Say Y if you have such a device.
248	  If unsure select "N".
249
250config SND_SOC_SOF_ELKHARTLAKE
251	tristate
252	select SND_SOC_SOF_HDA_COMMON
253	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
254	help
255	  This option is not user-selectable but automagically handled by
256	  'select' statements at a higher level.
257
258config SND_SOC_SOF_JASPERLAKE_SUPPORT
259	bool "SOF support for JasperLake"
260	help
261	  This adds support for Sound Open Firmware for Intel(R) platforms
262	  using the JasperLake processors.
263	  Say Y if you have such a device.
264	  If unsure select "N".
265
266config SND_SOC_SOF_JASPERLAKE
267	tristate
268	select SND_SOC_SOF_HDA_COMMON
269	help
270	  This option is not user-selectable but automagically handled by
271	  'select' statements at a higher level.
272
273config SND_SOC_SOF_ALDERLAKE_SUPPORT
274	bool "SOF support for Alderlake"
275	help
276	  This adds support for Sound Open Firmware for Intel(R) platforms
277	  using the Alderlake processors.
278	  Say Y if you have such a device.
279	  If unsure select "N".
280
281config SND_SOC_SOF_ALDERLAKE
282	tristate
283	select SND_SOC_SOF_HDA_COMMON
284	help
285	  This option is not user-selectable but automagically handled by
286	  'select' statements at a higher level
287
288config SND_SOC_SOF_HDA_COMMON
289	tristate
290	select SND_INTEL_DSP_CONFIG
291	select SND_SOC_SOF_INTEL_COMMON
292	select SND_SOC_SOF_HDA_LINK_BASELINE
293	help
294	  This option is not user-selectable but automagically handled by
295	  'select' statements at a higher level.
296
297if SND_SOC_SOF_HDA_COMMON
298
299config SND_SOC_SOF_HDA_LINK
300	bool "SOF support for HDA Links(HDA/HDMI)"
301	depends on SND_SOC_SOF_NOCODEC=n
302	select SND_SOC_SOF_PROBE_WORK_QUEUE
303	help
304	  This adds support for HDA links(HDA/HDMI) with Sound Open Firmware
305	  for Intel(R) platforms.
306	  Say Y if you want to enable HDA links with SOF.
307	  If unsure select "N".
308
309config SND_SOC_SOF_HDA_AUDIO_CODEC
310	bool "SOF support for HDAudio codecs"
311	depends on SND_SOC_SOF_HDA_LINK
312	help
313	  This adds support for HDAudio codecs with Sound Open Firmware
314	  for Intel(R) platforms.
315	  Say Y if you want to enable HDAudio codecs with SOF.
316	  If unsure select "N".
317
318config SND_SOC_SOF_HDA_PROBES
319	bool "SOF enable probes over HDA"
320	depends on SND_SOC_SOF_DEBUG_PROBES
321	help
322	  This option enables the data probing for Intel(R)
323	  Skylake and newer platforms.
324	  Say Y if you want to enable probes.
325	  If unsure, select "N".
326
327config SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1
328	bool "SOF enable DMI Link L1"
329	help
330	  This option enables DMI L1 for both playback and capture
331	  and disables known workarounds for specific HDAudio platforms.
332	  Only use to look into power optimizations on platforms not
333	  affected by DMI L1 issues. This option is not recommended.
334	  Say Y if you want to enable DMI Link L1.
335	  If unsure, select "N".
336
337endif ## SND_SOC_SOF_HDA_COMMON
338
339config SND_SOC_SOF_HDA_LINK_BASELINE
340	tristate
341	select SND_SOC_SOF_HDA if SND_SOC_SOF_HDA_LINK
342	help
343	  This option is not user-selectable but automagically handled by
344	  'select' statements at a higher level.
345
346config SND_SOC_SOF_HDA
347	tristate
348	select SND_HDA_EXT_CORE if SND_SOC_SOF_HDA_LINK
349	select SND_SOC_HDAC_HDA if SND_SOC_SOF_HDA_AUDIO_CODEC
350	help
351	  This option is not user-selectable but automagically handled by
352	  'select' statements at a higher level.
353
354config SND_SOC_SOF_INTEL_SOUNDWIRE_LINK
355	bool "SOF support for SoundWire"
356	depends on SOUNDWIRE && ACPI
357	help
358	  This adds support for SoundWire with Sound Open Firmware
359	  for Intel(R) platforms.
360	  Say Y if you want to enable SoundWire links with SOF.
361	  If unsure select "N".
362
363config SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
364	tristate
365	select SND_SOC_SOF_INTEL_SOUNDWIRE if SND_SOC_SOF_INTEL_SOUNDWIRE_LINK
366	help
367	  This option is not user-selectable but automagically handled by
368	  'select' statements at a higher level.
369
370config SND_SOC_SOF_INTEL_SOUNDWIRE
371	tristate
372	select SOUNDWIRE_INTEL
373	help
374	  This option is not user-selectable but automagically handled by
375	  'select' statements at a higher level.
376
377endif ## SND_SOC_SOF_INTEL_PCI
378
379endif ## SND_SOC_SOF_INTEL_TOPLEVEL
380