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