Merge tag 'mfd-next-5.5' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd
[linux-2.6-microblaze.git] / sound / soc / sof / intel / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 config 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
10 if SND_SOC_SOF_INTEL_TOPLEVEL
11
12 config 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
20 config 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
37 config 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
43 config 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
51 config 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
61 if SND_SOC_SOF_INTEL_ACPI
62
63 config 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
79 config 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
86 config 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
102 config 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
110 endif ## SND_SOC_SOF_INTEL_ACPI
111
112 if SND_SOC_SOF_INTEL_PCI
113
114 config 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
122 config 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
129 config 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
137 config 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
144 config 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
152 config 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
159 config 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
167 config 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
174 config 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
182 config 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
189 config 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
197 config 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
204 config 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
211 config 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
219 config 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
226 config 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
234 config 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
242 config 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
249 config 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
257 config 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
264 config 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
272 config 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
279 config 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
287 if SND_SOC_SOF_HDA_COMMON
288
289 config 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
299 config 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
308 config 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
318 config 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         help
323           This adds support for HDMI audio by using the common HDA
324           HDMI/DisplayPort codec driver.
325           Say Y if you want to use the common codec driver with SOF.
326           If unsure select "Y".
327
328 endif ## SND_SOC_SOF_HDA_COMMON
329
330 config SND_SOC_SOF_HDA_LINK_BASELINE
331         tristate
332         select SND_SOC_SOF_HDA if SND_SOC_SOF_HDA_LINK
333         help
334           This option is not user-selectable but automagically handled by
335           'select' statements at a higher level
336
337 config SND_SOC_SOF_HDA
338         tristate
339         select SND_HDA_EXT_CORE if SND_SOC_SOF_HDA_LINK
340         select SND_SOC_HDAC_HDA if SND_SOC_SOF_HDA_AUDIO_CODEC
341         select SND_INTEL_DSP_CONFIG
342         help
343           This option is not user-selectable but automagically handled by
344           'select' statements at a higher level
345
346 endif ## SND_SOC_SOF_INTEL_PCI
347
348 endif ## SND_SOC_SOF_INTEL_TOPLEVEL