Merge tag 'sound-5.8-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai...
[platform/kernel/linux-rpi.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   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
36 config 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
42 config 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
50 config 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
60 if SND_SOC_SOF_INTEL_ACPI
61
62 config 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
78 config 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
85 config 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
101 config 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
109 endif ## SND_SOC_SOF_INTEL_ACPI
110
111 if SND_SOC_SOF_INTEL_PCI
112
113 config 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
121 config 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
128 config 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
136 config 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
143 config 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
151 config 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
158 config 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
166 config SND_SOC_SOF_CANNONLAKE
167         tristate
168         select SND_SOC_SOF_HDA_COMMON
169         help
170           This option is not user-selectable but automagically handled by
171           'select' statements at a higher level
172
173 config SND_SOC_SOF_COFFEELAKE_SUPPORT
174         bool "SOF support for CoffeeLake"
175         help
176           This adds support for Sound Open Firmware for Intel(R) platforms
177           using the Coffeelake processors.
178           Say Y if you have such a device.
179           If unsure select "N".
180
181 config SND_SOC_SOF_COFFEELAKE
182         tristate
183         select SND_SOC_SOF_HDA_COMMON
184         help
185           This option is not user-selectable but automagically handled by
186           'select' statements at a higher level
187
188 config SND_SOC_SOF_ICELAKE_SUPPORT
189         bool "SOF support for Icelake"
190         help
191           This adds support for Sound Open Firmware for Intel(R) platforms
192           using the Icelake processors.
193           Say Y if you have such a device.
194           If unsure select "N".
195
196 config SND_SOC_SOF_ICELAKE
197         tristate
198         select SND_SOC_SOF_HDA_COMMON
199         help
200           This option is not user-selectable but automagically handled by
201           'select' statements at a higher level
202
203 config SND_SOC_SOF_COMETLAKE
204         tristate
205         select SND_SOC_SOF_HDA_COMMON
206         help
207           This option is not user-selectable but automagically handled by
208           'select' statements at a higher level
209
210 config SND_SOC_SOF_COMETLAKE_SUPPORT
211         bool
212
213 config SND_SOC_SOF_COMETLAKE_LP_SUPPORT
214         bool "SOF support for CometLake"
215         select SND_SOC_SOF_COMETLAKE_SUPPORT
216         help
217           This adds support for Sound Open Firmware for Intel(R) platforms
218           using the Cometlake processors.
219           If unsure select "N".
220
221 config SND_SOC_SOF_TIGERLAKE_SUPPORT
222         bool "SOF support for Tigerlake"
223         help
224           This adds support for Sound Open Firmware for Intel(R) platforms
225           using the Tigerlake processors.
226           Say Y if you have such a device.
227           If unsure select "N".
228
229 config SND_SOC_SOF_TIGERLAKE
230         tristate
231         select SND_SOC_SOF_HDA_COMMON
232         help
233           This option is not user-selectable but automagically handled by
234           'select' statements at a higher level
235
236 config SND_SOC_SOF_ELKHARTLAKE_SUPPORT
237         bool "SOF support for ElkhartLake"
238         help
239           This adds support for Sound Open Firmware for Intel(R) platforms
240           using the ElkhartLake processors.
241           Say Y if you have such a device.
242           If unsure select "N".
243
244 config SND_SOC_SOF_ELKHARTLAKE
245         tristate
246         select SND_SOC_SOF_HDA_COMMON
247         help
248           This option is not user-selectable but automagically handled by
249           'select' statements at a higher level
250
251 config SND_SOC_SOF_JASPERLAKE_SUPPORT
252         bool "SOF support for JasperLake"
253         help
254           This adds support for Sound Open Firmware for Intel(R) platforms
255           using the JasperLake processors.
256           Say Y if you have such a device.
257           If unsure select "N".
258
259 config SND_SOC_SOF_JASPERLAKE
260         tristate
261         select SND_SOC_SOF_HDA_COMMON
262         help
263           This option is not user-selectable but automagically handled by
264           'select' statements at a higher level
265
266 config SND_SOC_SOF_HDA_COMMON
267         tristate
268         select SND_SOC_SOF_INTEL_COMMON
269         select SND_SOC_SOF_HDA_LINK_BASELINE
270         help
271           This option is not user-selectable but automagically handled by
272           'select' statements at a higher level
273
274 if SND_SOC_SOF_HDA_COMMON
275
276 config SND_SOC_SOF_HDA_LINK
277         bool "SOF support for HDA Links(HDA/HDMI)"
278         depends on SND_SOC_SOF_NOCODEC=n
279         select SND_SOC_SOF_PROBE_WORK_QUEUE
280         help
281           This adds support for HDA links(HDA/HDMI) with Sound Open Firmware
282                   for Intel(R) platforms.
283           Say Y if you want to enable HDA links with SOF.
284           If unsure select "N".
285
286 config SND_SOC_SOF_HDA_AUDIO_CODEC
287         bool "SOF support for HDAudio codecs"
288         depends on SND_SOC_SOF_HDA_LINK
289         help
290           This adds support for HDAudio codecs with Sound Open Firmware
291                   for Intel(R) platforms.
292           Say Y if you want to enable HDAudio codecs with SOF.
293           If unsure select "N".
294
295 config SND_SOC_SOF_HDA_PROBES
296         bool "SOF enable probes over HDA"
297         depends on SND_SOC_SOF_DEBUG_PROBES
298         help
299           This option enables the data probing for Intel(R).
300                   Intel(R) Skylake and newer platforms.
301           Say Y if you want to enable probes.
302           If unsure, select "N".
303
304 config SND_SOC_SOF_HDA_ALWAYS_ENABLE_DMI_L1
305         bool "SOF enable DMI Link L1"
306         help
307           This option enables DMI L1 for both playback and capture
308           and disables known workarounds for specific HDaudio platforms.
309           Only use to look into power optimizations on platforms not
310           affected by DMI L1 issues. This option is not recommended.
311           Say Y if you want to enable DMI Link L1
312           If unsure, select "N".
313
314 endif ## SND_SOC_SOF_HDA_COMMON
315
316 config SND_SOC_SOF_HDA_LINK_BASELINE
317         tristate
318         select SND_SOC_SOF_HDA if SND_SOC_SOF_HDA_LINK
319         help
320           This option is not user-selectable but automagically handled by
321           'select' statements at a higher level
322
323 config SND_SOC_SOF_HDA
324         tristate
325         select SND_HDA_EXT_CORE if SND_SOC_SOF_HDA_LINK
326         select SND_SOC_HDAC_HDA if SND_SOC_SOF_HDA_AUDIO_CODEC
327         select SND_INTEL_DSP_CONFIG
328         help
329           This option is not user-selectable but automagically handled by
330           'select' statements at a higher level
331
332 endif ## SND_SOC_SOF_INTEL_PCI
333
334 endif ## SND_SOC_SOF_INTEL_TOPLEVEL