xref: /openbmc/linux/sound/soc/sof/intel/Kconfig (revision e15a5365)
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	help
33	  This option is not user-selectable but automagically handled by
34	  'select' statements at a higher level
35
36config SND_SOC_SOF_INTEL_HIFI_EP_IPC
37	tristate
38	help
39	  This option is not user-selectable but automagically handled by
40	  'select' statements at a higher level
41
42config SND_SOC_SOF_INTEL_ATOM_HIFI_EP
43	tristate
44	select SND_SOC_SOF_INTEL_COMMON
45	select SND_SOC_SOF_INTEL_HIFI_EP_IPC
46	help
47	  This option is not user-selectable but automagically handled by
48	  'select' statements at a higher level
49
50config SND_SOC_SOF_INTEL_COMMON
51	tristate
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
56	help
57	  This option is not user-selectable but automagically handled by
58	  'select' statements at a higher level
59
60if SND_SOC_SOF_INTEL_ACPI
61
62config SND_SOC_SOF_BAYTRAIL_SUPPORT
63	bool "SOF support for Baytrail, Braswell and Cherrytrail"
64	depends on SND_SST_ATOM_HIFI2_PLATFORM_ACPI=n
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 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
76	  If unsure select "N".
77
78config SND_SOC_SOF_BAYTRAIL
79	tristate
80	select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
81	help
82	  This option is not user-selectable but automagically handled by
83	  'select' statements at a higher level
84
85config SND_SOC_SOF_BROADWELL_SUPPORT
86	bool "SOF support for Broadwell"
87	depends on SND_SOC_INTEL_HASWELL=n
88	help
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 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
99	  If unsure select "N".
100
101config SND_SOC_SOF_BROADWELL
102	tristate
103	select SND_SOC_SOF_INTEL_COMMON
104	select SND_SOC_SOF_INTEL_HIFI_EP_IPC
105	help
106	  This option is not user-selectable but automagically handled by
107	  'select' statements at a higher level
108
109endif ## SND_SOC_SOF_INTEL_ACPI
110
111if SND_SOC_SOF_INTEL_PCI
112
113config SND_SOC_SOF_MERRIFIELD_SUPPORT
114	bool "SOF support for Tangier/Merrifield"
115	help
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".
120
121config SND_SOC_SOF_MERRIFIELD
122	tristate
123	select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
124	help
125	  This option is not user-selectable but automagically handled by
126	  'select' statements at a higher level
127
128config SND_SOC_SOF_APOLLOLAKE_SUPPORT
129	bool "SOF support for Apollolake"
130	help
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".
135
136config SND_SOC_SOF_APOLLOLAKE
137	tristate
138	select SND_SOC_SOF_HDA_COMMON
139	help
140	  This option is not user-selectable but automagically handled by
141	  'select' statements at a higher level
142
143config SND_SOC_SOF_GEMINILAKE_SUPPORT
144	bool "SOF support for GeminiLake"
145	help
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".
150
151config SND_SOC_SOF_GEMINILAKE
152	tristate
153	select SND_SOC_SOF_HDA_COMMON
154	help
155	  This option is not user-selectable but automagically handled by
156	  'select' statements at a higher level
157
158config SND_SOC_SOF_CANNONLAKE_SUPPORT
159	bool "SOF support for Cannonlake"
160	help
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".
165
166config SND_SOC_SOF_CANNONLAKE
167	tristate
168	select SND_SOC_SOF_HDA_COMMON
169	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
170	help
171	  This option is not user-selectable but automagically handled by
172	  'select' statements at a higher level
173
174config SND_SOC_SOF_COFFEELAKE_SUPPORT
175	bool "SOF support for CoffeeLake"
176	help
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".
181
182config SND_SOC_SOF_COFFEELAKE
183	tristate
184	select SND_SOC_SOF_HDA_COMMON
185	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
186	help
187	  This option is not user-selectable but automagically handled by
188	  'select' statements at a higher level
189
190config SND_SOC_SOF_ICELAKE_SUPPORT
191	bool "SOF support for Icelake"
192	help
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".
197
198config SND_SOC_SOF_ICELAKE
199	tristate
200	select SND_SOC_SOF_HDA_COMMON
201	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
202	help
203	  This option is not user-selectable but automagically handled by
204	  'select' statements at a higher level
205
206config SND_SOC_SOF_COMETLAKE
207	tristate
208	select SND_SOC_SOF_HDA_COMMON
209	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
210	help
211	  This option is not user-selectable but automagically handled by
212	  'select' statements at a higher level
213
214config SND_SOC_SOF_COMETLAKE_SUPPORT
215	bool
216
217config SND_SOC_SOF_COMETLAKE_LP_SUPPORT
218	bool "SOF support for CometLake"
219	select SND_SOC_SOF_COMETLAKE_SUPPORT
220	help
221	  This adds support for Sound Open Firmware for Intel(R) platforms
222	  using the Cometlake processors.
223	  If unsure select "N".
224
225config SND_SOC_SOF_TIGERLAKE_SUPPORT
226	bool "SOF support for Tigerlake"
227	help
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".
232
233config SND_SOC_SOF_TIGERLAKE
234	tristate
235	select SND_SOC_SOF_HDA_COMMON
236	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
237	help
238	  This option is not user-selectable but automagically handled by
239	  'select' statements at a higher level
240
241config SND_SOC_SOF_ELKHARTLAKE_SUPPORT
242	bool "SOF support for ElkhartLake"
243	help
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".
248
249config SND_SOC_SOF_ELKHARTLAKE
250	tristate
251	select SND_SOC_SOF_HDA_COMMON
252	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
253	help
254	  This option is not user-selectable but automagically handled by
255	  'select' statements at a higher level
256
257config SND_SOC_SOF_JASPERLAKE_SUPPORT
258	bool "SOF support for JasperLake"
259	help
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".
264
265config SND_SOC_SOF_JASPERLAKE
266	tristate
267	select SND_SOC_SOF_HDA_COMMON
268	help
269	  This option is not user-selectable but automagically handled by
270	  'select' statements at a higher level
271
272config SND_SOC_SOF_HDA_COMMON
273	tristate
274	select SND_SOC_SOF_INTEL_COMMON
275	select SND_SOC_SOF_HDA_LINK_BASELINE
276	help
277	  This option is not user-selectable but automagically handled by
278	  'select' statements at a higher level
279
280if SND_SOC_SOF_HDA_COMMON
281
282config 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
286	help
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".
291
292config SND_SOC_SOF_HDA_AUDIO_CODEC
293	bool "SOF support for HDAudio codecs"
294	depends on SND_SOC_SOF_HDA_LINK
295	help
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".
300
301config SND_SOC_SOF_HDA_PROBES
302	bool "SOF enable probes over HDA"
303	depends on SND_SOC_SOF_DEBUG_PROBES
304	help
305	  This option enables the data probing for Intel(R).
306		  Intel(R) Skylake and newer platforms.
307	  Say Y if you want to enable probes.
308	  If unsure, select "N".
309
310config SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1
311	bool "SOF enable DMI Link L1"
312	help
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".
319
320endif ## SND_SOC_SOF_HDA_COMMON
321
322config SND_SOC_SOF_HDA_LINK_BASELINE
323	tristate
324	select SND_SOC_SOF_HDA if SND_SOC_SOF_HDA_LINK
325	help
326	  This option is not user-selectable but automagically handled by
327	  'select' statements at a higher level
328
329config SND_SOC_SOF_HDA
330	tristate
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
334	help
335	  This option is not user-selectable but automagically handled by
336	  'select' statements at a higher level
337
338config SND_SOC_SOF_INTEL_SOUNDWIRE_LINK
339	bool "SOF support for SoundWire"
340	depends on SOUNDWIRE && ACPI
341	help
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".
346
347config SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
348	tristate
349	select SND_SOC_SOF_INTEL_SOUNDWIRE if SND_SOC_SOF_INTEL_SOUNDWIRE_LINK
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
355	tristate
356	select SOUNDWIRE_INTEL
357	help
358	  This option is not user-selectable but automagically handled by
359	  'select' statements at a higher level
360
361endif ## SND_SOC_SOF_INTEL_PCI
362
363endif ## SND_SOC_SOF_INTEL_TOPLEVEL
364