xref: /linux/sound/soc/sof/intel/Kconfig (revision 2dc73b48665411a08c4e5f0f823dea8510761603)
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_HIFI_EP_IPC
13	tristate
14	help
15	  This option is not user-selectable but automagically handled by
16	  'select' statements at a higher level.
17
18config SND_SOC_SOF_INTEL_ATOM_HIFI_EP
19	tristate
20	select SND_SOC_SOF_INTEL_COMMON
21	select SND_SOC_SOF_INTEL_HIFI_EP_IPC
22	help
23	  This option is not user-selectable but automagically handled by
24	  'select' statements at a higher level.
25
26config SND_SOC_SOF_INTEL_COMMON
27	tristate
28	select SND_SOC_SOF
29	select SND_SOC_ACPI_INTEL_MATCH
30	select SND_SOC_SOF_XTENSA
31	select SND_SOC_INTEL_MACH
32	select SND_SOC_ACPI if ACPI
33	select SND_INTEL_DSP_CONFIG
34	help
35	  This option is not user-selectable but automagically handled by
36	  'select' statements at a higher level.
37
38if SND_SOC_SOF_ACPI
39
40config SND_SOC_SOF_BAYTRAIL
41	tristate "SOF support for Baytrail, Braswell and Cherrytrail"
42	default SND_SOC_SOF_ACPI
43	select SND_SOC_SOF_IPC3
44	select SND_SOC_SOF_INTEL_COMMON
45	select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
46	select SND_SOC_SOF_ACPI_DEV
47	select IOSF_MBI if X86 && PCI
48	help
49	  This adds support for Sound Open Firmware for Intel(R) platforms
50	  using the Baytrail, Braswell or Cherrytrail processors.
51	  This option can coexist in the same build with the Atom legacy
52	  drivers, currently the default but which will be deprecated
53	  at some point.
54	  Existing firmware/topology binaries and UCM configurations
55	  typically located in the root file system are already
56	  compatible with both SOF or Atom/SST legacy drivers.
57	  This is a recommended option for distributions.
58	  Say Y if you want to enable SOF on Baytrail/Cherrytrail.
59	  If unsure select "N".
60
61config SND_SOC_SOF_BROADWELL
62	tristate "SOF support for Broadwell"
63	default SND_SOC_SOF_ACPI
64	select SND_SOC_SOF_IPC3
65	select SND_SOC_SOF_INTEL_COMMON
66	select SND_SOC_SOF_INTEL_HIFI_EP_IPC
67	select SND_SOC_SOF_ACPI_DEV
68	help
69	  This adds support for Sound Open Firmware for Intel(R) platforms
70	  using the Broadwell processors.
71	  This option can coexist in the same build with the default 'catpt'
72	  driver.
73	  Existing firmware/topology binaries and UCM configurations typically
74	  located in the root file system are already compatible with both SOF
75	  or catpt drivers.
76	  SOF does not fully support Broadwell and has limitations related to
77	  DMA and suspend-resume, this is not a recommended option for
78	  distributions.
79	  Say Y if you want to enable SOF on Broadwell.
80	  If unsure select "N".
81
82endif ## SND_SOC_SOF_ACPI
83
84if SND_SOC_SOF_PCI
85
86config SND_SOC_SOF_MERRIFIELD
87	tristate "SOF support for Tangier/Merrifield"
88	default SND_SOC_SOF_PCI
89	select SND_SOC_SOF_PCI_DEV
90	select SND_SOC_SOF_IPC3
91	select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
92	help
93	  This adds support for Sound Open Firmware for Intel(R) platforms
94	  using the Tangier/Merrifield processors.
95	  Say Y if you have such a device.
96	  If unsure select "N".
97
98config SND_SOC_SOF_INTEL_APL
99	tristate
100	select SND_SOC_SOF_HDA_COMMON
101	select SND_SOC_SOF_IPC3
102	select SND_SOC_SOF_INTEL_IPC4
103
104config SND_SOC_SOF_APOLLOLAKE
105	tristate "SOF support for Apollolake"
106	default SND_SOC_SOF_PCI
107	select SND_SOC_SOF_INTEL_APL
108	help
109	  This adds support for Sound Open Firmware for Intel(R) platforms
110	  using the Apollolake processors.
111	  Say Y if you have such a device.
112	  If unsure select "N".
113
114config SND_SOC_SOF_GEMINILAKE
115	tristate "SOF support for GeminiLake"
116	default SND_SOC_SOF_PCI
117	select SND_SOC_SOF_INTEL_APL
118	help
119	  This adds support for Sound Open Firmware for Intel(R) platforms
120	  using the Geminilake processors.
121	  Say Y if you have such a device.
122	  If unsure select "N".
123
124config SND_SOC_SOF_INTEL_CNL
125	tristate
126	select SND_SOC_SOF_HDA_COMMON
127	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
128	select SND_SOC_SOF_IPC3
129	select SND_SOC_SOF_INTEL_IPC4
130
131config SND_SOC_SOF_CANNONLAKE
132	tristate "SOF support for Cannonlake"
133	default SND_SOC_SOF_PCI
134	select SND_SOC_SOF_INTEL_CNL
135	help
136	  This adds support for Sound Open Firmware for Intel(R) platforms
137	  using the Cannonlake processors.
138	  Say Y if you have such a device.
139	  If unsure select "N".
140
141config SND_SOC_SOF_COFFEELAKE
142	tristate "SOF support for CoffeeLake"
143	default SND_SOC_SOF_PCI
144	select SND_SOC_SOF_INTEL_CNL
145	help
146	  This adds support for Sound Open Firmware for Intel(R) platforms
147	  using the Coffeelake processors.
148	  Say Y if you have such a device.
149	  If unsure select "N".
150
151config SND_SOC_SOF_COMETLAKE
152	tristate "SOF support for CometLake"
153	default SND_SOC_SOF_PCI
154	select SND_SOC_SOF_INTEL_CNL
155	help
156	  This adds support for Sound Open Firmware for Intel(R) platforms
157	  using the Cometlake processors.
158	  If unsure select "N".
159
160config SND_SOC_SOF_INTEL_ICL
161	tristate
162	select SND_SOC_SOF_HDA_COMMON
163	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
164	select SND_SOC_SOF_IPC3
165	select SND_SOC_SOF_INTEL_IPC4
166
167config SND_SOC_SOF_ICELAKE
168	tristate "SOF support for Icelake"
169	default SND_SOC_SOF_PCI
170	select SND_SOC_SOF_INTEL_ICL
171	help
172	  This adds support for Sound Open Firmware for Intel(R) platforms
173	  using the Icelake processors.
174	  Say Y if you have such a device.
175	  If unsure select "N".
176
177config SND_SOC_SOF_JASPERLAKE
178	tristate "SOF support for JasperLake"
179	default SND_SOC_SOF_PCI
180	select SND_SOC_SOF_INTEL_ICL
181	help
182	  This adds support for Sound Open Firmware for Intel(R) platforms
183	  using the JasperLake processors.
184	  Say Y if you have such a device.
185	  If unsure select "N".
186
187config SND_SOC_SOF_INTEL_TGL
188	tristate
189	select SND_SOC_SOF_HDA_COMMON
190	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
191	select SND_SOC_SOF_IPC3
192	select SND_SOC_SOF_INTEL_IPC4
193
194config SND_SOC_SOF_TIGERLAKE
195	tristate "SOF support for Tigerlake"
196	default SND_SOC_SOF_PCI
197	select SND_SOC_SOF_INTEL_TGL
198	help
199	  This adds support for Sound Open Firmware for Intel(R) platforms
200	  using the Tigerlake processors.
201	  Say Y if you have such a device.
202	  If unsure select "N".
203
204config SND_SOC_SOF_ELKHARTLAKE
205	tristate "SOF support for ElkhartLake"
206	default SND_SOC_SOF_PCI
207	select SND_SOC_SOF_INTEL_TGL
208	help
209	  This adds support for Sound Open Firmware for Intel(R) platforms
210	  using the ElkhartLake processors.
211	  Say Y if you have such a device.
212	  If unsure select "N".
213
214config SND_SOC_SOF_ALDERLAKE
215	tristate "SOF support for Alderlake"
216	default SND_SOC_SOF_PCI
217	select SND_SOC_SOF_INTEL_TGL
218	help
219	  This adds support for Sound Open Firmware for Intel(R) platforms
220	  using the Alderlake processors.
221	  Say Y if you have such a device.
222	  If unsure select "N".
223
224config SND_SOC_SOF_INTEL_MTL
225	tristate
226	select SND_SOC_SOF_HDA_COMMON
227	select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
228	select SND_SOC_SOF_INTEL_IPC4
229
230config SND_SOC_SOF_METEORLAKE
231	tristate "SOF support for Meteorlake"
232	default SND_SOC_SOF_PCI
233	select SND_SOC_SOF_INTEL_MTL
234	help
235	  This adds support for Sound Open Firmware for Intel(R) platforms
236	  using the Meteorlake processors.
237	  Say Y if you have such a device.
238	  If unsure select "N".
239
240config SND_SOC_SOF_HDA_COMMON
241	tristate
242	select SND_SOC_SOF_INTEL_COMMON
243	select SND_SOC_SOF_PCI_DEV
244	select SND_INTEL_DSP_CONFIG
245	select SND_SOC_SOF_HDA_LINK_BASELINE
246	select SND_SOC_SOF_HDA_PROBES
247	help
248	  This option is not user-selectable but automagically handled by
249	  'select' statements at a higher level.
250
251if SND_SOC_SOF_HDA_COMMON
252
253config SND_SOC_SOF_HDA_LINK
254	bool "SOF support for HDA Links(HDA/HDMI)"
255	depends on SND_SOC_SOF_NOCODEC=n
256	select SND_SOC_SOF_PROBE_WORK_QUEUE
257	help
258	  This adds support for HDA links(HDA/HDMI) with Sound Open Firmware
259	  for Intel(R) platforms.
260	  Say Y if you want to enable HDA links with SOF.
261	  If unsure select "N".
262
263config SND_SOC_SOF_HDA_AUDIO_CODEC
264	bool "SOF support for HDAudio codecs"
265	depends on SND_SOC_SOF_HDA_LINK
266	help
267	  This adds support for HDAudio codecs with Sound Open Firmware
268	  for Intel(R) platforms.
269	  Say Y if you want to enable HDAudio codecs with SOF.
270	  If unsure select "N".
271
272endif ## SND_SOC_SOF_HDA_COMMON
273
274config SND_SOC_SOF_HDA_LINK_BASELINE
275	tristate
276	select SND_SOC_SOF_HDA if SND_SOC_SOF_HDA_LINK
277	help
278	  This option is not user-selectable but automagically handled by
279	  'select' statements at a higher level.
280
281config SND_SOC_SOF_HDA
282	tristate
283	select SND_HDA_EXT_CORE if SND_SOC_SOF_HDA_LINK
284	select SND_SOC_HDAC_HDA if SND_SOC_SOF_HDA_AUDIO_CODEC
285	help
286	  This option is not user-selectable but automagically handled by
287	  'select' statements at a higher level.
288
289config SND_SOC_SOF_HDA_PROBES
290	tristate
291	select SND_SOC_SOF_DEBUG_PROBES
292	help
293	  The option enables the data probing for Intel(R) Skylake and newer
294	  (HDA) platforms.
295	  This option is not user-selectable but automagically handled by
296	  'select' statements at a higher level.
297
298config SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
299	tristate
300	select SOUNDWIRE_INTEL if SND_SOC_SOF_INTEL_SOUNDWIRE
301	select SND_INTEL_SOUNDWIRE_ACPI if SND_SOC_SOF_INTEL_SOUNDWIRE
302
303config SND_SOC_SOF_INTEL_SOUNDWIRE
304	tristate "SOF support for SoundWire"
305	default SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
306	depends on SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
307	depends on ACPI && SOUNDWIRE
308	depends on !(SOUNDWIRE=m && SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE=y)
309	help
310	  This adds support for SoundWire with Sound Open Firmware
311	  for Intel(R) platforms.
312	  Say Y if you want to enable SoundWire links with SOF.
313	  If unsure select "N".
314
315endif ## SND_SOC_SOF_PCI
316
317endif ## SND_SOC_SOF_INTEL_TOPLEVEL
318