xref: /openbmc/linux/sound/soc/sof/intel/Kconfig (revision a5a8cb96)
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_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
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 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	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	help
186	  This option is not user-selectable but automagically handled by
187	  'select' statements at a higher level
188
189config SND_SOC_SOF_ICELAKE_SUPPORT
190	bool "SOF support for Icelake"
191	help
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".
196
197config SND_SOC_SOF_ICELAKE
198	tristate
199	select SND_SOC_SOF_HDA_COMMON
200	help
201	  This option is not user-selectable but automagically handled by
202	  'select' statements at a higher level
203
204config SND_SOC_SOF_COMETLAKE_LP
205	tristate
206	select SND_SOC_SOF_HDA_COMMON
207	help
208	  This option is not user-selectable but automagically handled by
209	  'select' statements at a higher level
210
211config SND_SOC_SOF_COMETLAKE_LP_SUPPORT
212	bool "SOF support for CometLake-LP"
213	help
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".
218
219config SND_SOC_SOF_COMETLAKE_H
220	tristate
221	select SND_SOC_SOF_HDA_COMMON
222	help
223	  This option is not user-selectable but automagically handled by
224	  'select' statements at a higher level
225
226config SND_SOC_SOF_COMETLAKE_H_SUPPORT
227	bool "SOF support for CometLake-H"
228	help
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".
233
234config SND_SOC_SOF_TIGERLAKE_SUPPORT
235	bool "SOF support for Tigerlake"
236	help
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".
241
242config SND_SOC_SOF_TIGERLAKE
243	tristate
244	select SND_SOC_SOF_HDA_COMMON
245	help
246	  This option is not user-selectable but automagically handled by
247	  'select' statements at a higher level
248
249config SND_SOC_SOF_ELKHARTLAKE_SUPPORT
250	bool "SOF support for ElkhartLake"
251	help
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".
256
257config SND_SOC_SOF_ELKHARTLAKE
258	tristate
259	select SND_SOC_SOF_HDA_COMMON
260	help
261	  This option is not user-selectable but automagically handled by
262	  'select' statements at a higher level
263
264config SND_SOC_SOF_JASPERLAKE_SUPPORT
265	bool "SOF support for JasperLake"
266	help
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".
271
272config SND_SOC_SOF_JASPERLAKE
273	tristate
274	select SND_SOC_SOF_HDA_COMMON
275	help
276	  This option is not user-selectable but automagically handled by
277	  'select' statements at a higher level
278
279config SND_SOC_SOF_HDA_COMMON
280	tristate
281	select SND_SOC_SOF_INTEL_COMMON
282	select SND_SOC_SOF_HDA_LINK_BASELINE
283	help
284	  This option is not user-selectable but automagically handled by
285	  'select' statements at a higher level
286
287if SND_SOC_SOF_HDA_COMMON
288
289config 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
293	help
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".
298
299config SND_SOC_SOF_HDA_AUDIO_CODEC
300	bool "SOF support for HDAudio codecs"
301	depends on SND_SOC_SOF_HDA_LINK
302	help
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".
307
308config SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1
309	bool "SOF enable DMI Link L1"
310	help
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".
317
318config 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
322	default SND_HDA_CODEC_HDMI
323	help
324	  This adds support for HDMI audio by using the common HDA
325	  HDMI/DisplayPort codec driver.
326	  Say Y if you want to use the common codec driver with SOF.
327	  If unsure select "Y".
328
329endif ## SND_SOC_SOF_HDA_COMMON
330
331config SND_SOC_SOF_HDA_LINK_BASELINE
332	tristate
333	select SND_SOC_SOF_HDA if SND_SOC_SOF_HDA_LINK
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_HDA
339	tristate
340	select SND_HDA_EXT_CORE if SND_SOC_SOF_HDA_LINK
341	select SND_SOC_HDAC_HDA if SND_SOC_SOF_HDA_AUDIO_CODEC
342	select SND_INTEL_DSP_CONFIG
343	help
344	  This option is not user-selectable but automagically handled by
345	  'select' statements at a higher level
346
347endif ## SND_SOC_SOF_INTEL_PCI
348
349endif ## SND_SOC_SOF_INTEL_TOPLEVEL
350