treewide: remove redundant IS_ERR() before error code check
[linux/fpc-iii.git] / sound / soc / intel / boards / Kconfig
blob9ca2567d0059513b7ce2327baf0ad7158494a74c
1 # SPDX-License-Identifier: GPL-2.0-only
2 menuconfig SND_SOC_INTEL_MACH
3         bool "Intel Machine drivers"
4         depends on SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
5         help
6          Intel ASoC Machine Drivers. If you have a Intel machine that
7          has an audio controller with a DSP and I2S or DMIC port, then
8          enable this option by saying Y
10          Note that the answer to this question doesn't directly affect the
11          kernel: saying N will just cause the configurator to skip all
12          the questions about Intel ASoC machine drivers.
14 if SND_SOC_INTEL_MACH
16 config SND_SOC_INTEL_USER_FRIENDLY_LONG_NAMES
17         bool "Use more user friendly long card names"
18         help
19           Some drivers report the I/O configuration to userspace through the
20           soundcard's long card name in the control user space AP. An unfortunate
21           side effect is that this long name may also be used by the GUI,
22           confusing users with information they don't need.
23           This option prevents the long name from being modified, and the I/O
24           configuration will be provided through a different component interface.
25           Select Y if userspace like UCM (Use Case Manager) uses the component
26           interface.
27           If unsure select N.
29 if SND_SOC_INTEL_HASWELL
31 config SND_SOC_INTEL_HASWELL_MACH
32         tristate "Haswell Lynxpoint"
33         depends on I2C
34         depends on I2C_DESIGNWARE_PLATFORM || COMPILE_TEST
35         depends on X86_INTEL_LPSS || COMPILE_TEST
36         select SND_SOC_RT5640
37         help
38           This adds support for the Lynxpoint Audio DSP on Intel(R) Haswell
39           Ultrabook platforms. This is a recommended option.
40           Say Y or m if you have such a device.
41           If unsure select "N".
43 endif ## SND_SOC_INTEL_HASWELL
45 if SND_SOC_INTEL_HASWELL || SND_SOC_SOF_BROADWELL
47 config SND_SOC_INTEL_BDW_RT5650_MACH
48         tristate "Broadwell with RT5650 codec"
49         depends on I2C
50         depends on I2C_DESIGNWARE_PLATFORM || COMPILE_TEST
51         depends on X86_INTEL_LPSS || COMPILE_TEST
52         select SND_SOC_RT5645
53         help
54           This adds the ASoC machine driver for Intel Broadwell platforms with
55           the RT5650 codec.
56           Say Y if you have such a device.
57           If unsure select "N".
59 config SND_SOC_INTEL_BDW_RT5677_MACH
60         tristate "Broadwell with RT5677 codec"
61         depends on I2C
62         depends on I2C_DESIGNWARE_PLATFORM || COMPILE_TEST
63         depends on GPIOLIB || COMPILE_TEST
64         depends on X86_INTEL_LPSS || COMPILE_TEST
65         depends on SPI_MASTER
66         select SPI_PXA2XX
67         select SND_SOC_RT5677_SPI
68         select SND_SOC_RT5677
69         help
70           This adds support for Intel Broadwell platform based boards with
71           the RT5677 audio codec. This is a recommended option.
72           Say Y or m if you have such a device.
73           If unsure select "N".
75 config SND_SOC_INTEL_BROADWELL_MACH
76         tristate "Broadwell Wildcatpoint"
77         depends on I2C
78         depends on I2C_DESIGNWARE_PLATFORM || COMPILE_TEST
79         depends on X86_INTEL_LPSS || COMPILE_TEST
80         select SND_SOC_RT286
81         help
82           This adds support for the Wilcatpoint Audio DSP on Intel(R) Broadwell
83           Ultrabook platforms.
84           Say Y or m if you have such a device. This is a recommended option.
85           If unsure select "N".
86 endif ## SND_SOC_INTEL_HASWELL || SND_SOC_SOF_BROADWELL
88 if SND_SOC_INTEL_BAYTRAIL
90 config SND_SOC_INTEL_BYT_MAX98090_MACH
91         tristate "Baytrail with MAX98090 codec"
92         depends on I2C
93         depends on X86_INTEL_LPSS || COMPILE_TEST
94         select SND_SOC_MAX98090
95         help
96           This adds audio driver for Intel Baytrail platform based boards
97           with the MAX98090 audio codec. This driver is deprecated, use
98           SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH instead for better
99           functionality.
101 config SND_SOC_INTEL_BYT_RT5640_MACH
102         tristate "Baytrail with RT5640 codec"
103         depends on I2C
104         depends on X86_INTEL_LPSS || COMPILE_TEST
105         select SND_SOC_RT5640
106         help
107           This adds audio driver for Intel Baytrail platform based boards
108           with the RT5640 audio codec. This driver is deprecated, use
109           SND_SOC_INTEL_BYTCR_RT5640_MACH instead for better functionality.
111 endif ## SND_SOC_INTEL_BAYTRAIL
113 if SND_SST_ATOM_HIFI2_PLATFORM || SND_SOC_SOF_BAYTRAIL
115 config SND_SOC_INTEL_BYTCR_RT5640_MACH
116         tristate "Baytrail and Baytrail-CR with RT5640 codec"
117         depends on I2C && ACPI
118         depends on X86_INTEL_LPSS || COMPILE_TEST
119         select SND_SOC_ACPI
120         select SND_SOC_RT5640
121         help
122           This adds support for ASoC machine driver for Intel(R) Baytrail and Baytrail-CR
123           platforms with RT5640 audio codec.
124           Say Y or m if you have such a device. This is a recommended option.
125           If unsure select "N".
127 config SND_SOC_INTEL_BYTCR_RT5651_MACH
128         tristate "Baytrail and Baytrail-CR with RT5651 codec"
129         depends on I2C && ACPI
130         depends on X86_INTEL_LPSS || COMPILE_TEST
131         select SND_SOC_ACPI
132         select SND_SOC_RT5651
133         help
134           This adds support for ASoC machine driver for Intel(R) Baytrail and Baytrail-CR
135           platforms with RT5651 audio codec.
136           Say Y or m if you have such a device. This is a recommended option.
137           If unsure select "N".
139 config SND_SOC_INTEL_CHT_BSW_RT5672_MACH
140         tristate "Cherrytrail & Braswell with RT5672 codec"
141         depends on I2C && ACPI
142         depends on X86_INTEL_LPSS || COMPILE_TEST
143         select SND_SOC_ACPI
144         select SND_SOC_RT5670
145         help
146           This adds support for ASoC machine driver for Intel(R) Cherrytrail & Braswell
147           platforms with RT5672 audio codec.
148           Say Y or m if you have such a device. This is a recommended option.
149           If unsure select "N".
151 config SND_SOC_INTEL_CHT_BSW_RT5645_MACH
152         tristate "Cherrytrail & Braswell with RT5645/5650 codec"
153         depends on I2C && ACPI
154         depends on X86_INTEL_LPSS || COMPILE_TEST
155         select SND_SOC_ACPI
156         select SND_SOC_RT5645
157         help
158           This adds support for ASoC machine driver for Intel(R) Cherrytrail & Braswell
159           platforms with RT5645/5650 audio codec.
160           Say Y or m if you have such a device. This is a recommended option.
161           If unsure select "N".
163 config SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH
164         tristate "Cherrytrail & Braswell with MAX98090 & TI codec"
165         depends on I2C && ACPI
166         depends on X86_INTEL_LPSS || COMPILE_TEST
167         select SND_SOC_MAX98090
168         select SND_SOC_TS3A227E
169         help
170           This adds support for ASoC machine driver for Intel(R) Cherrytrail & Braswell
171           platforms with MAX98090 audio codec it also can support TI jack chip as aux device.
172           Say Y or m if you have such a device. This is a recommended option.
173           If unsure select "N".
175 config SND_SOC_INTEL_CHT_BSW_NAU8824_MACH
176         tristate "Cherrytrail & Braswell with NAU88L24 codec"
177         depends on I2C && ACPI
178         depends on X86_INTEL_LPSS || COMPILE_TEST
179         select SND_SOC_ACPI
180         select SND_SOC_NAU8824
181         help
182           This adds support for ASoC machine driver for Intel(R) Cherrytrail & Braswell
183           platforms with NAU88L24 audio codec.
184           Say Y or m if you have such a device. This is a recommended option.
185           If unsure select "N".
187 config SND_SOC_INTEL_BYT_CHT_CX2072X_MACH
188         tristate "Baytrail & Cherrytrail with CX2072X codec"
189         depends on I2C && ACPI
190         depends on X86_INTEL_LPSS || COMPILE_TEST
191         select SND_SOC_ACPI
192         select SND_SOC_CX2072X
193         help
194           This adds support for ASoC machine driver for Intel(R) Baytrail &
195           Cherrytrail platforms with Conexant CX2072X audio codec.
196           Say Y or m if you have such a device. This is a recommended option.
197           If unsure select "N".
199 config SND_SOC_INTEL_BYT_CHT_DA7213_MACH
200         tristate "Baytrail & Cherrytrail with DA7212/7213 codec"
201         depends on I2C && ACPI
202         depends on X86_INTEL_LPSS || COMPILE_TEST
203         select SND_SOC_ACPI
204         select SND_SOC_DA7213
205         help
206           This adds support for ASoC machine driver for Intel(R) Baytrail & CherryTrail
207           platforms with DA7212/7213 audio codec.
208           Say Y or m if you have such a device. This is a recommended option.
209           If unsure select "N".
211 config SND_SOC_INTEL_BYT_CHT_ES8316_MACH
212         tristate "Baytrail & Cherrytrail with ES8316 codec"
213         depends on I2C && ACPI
214         depends on X86_INTEL_LPSS || COMPILE_TEST
215         select SND_SOC_ACPI
216         select SND_SOC_ES8316
217         help
218           This adds support for ASoC machine driver for Intel(R) Baytrail &
219           Cherrytrail platforms with ES8316 audio codec.
220           Say Y or m if you have such a device. This is a recommended option.
221           If unsure select "N".
223 endif ## SND_SST_ATOM_HIFI2_PLATFORM || SND_SOC_SOF_BAYTRAIL
225 if SND_SST_ATOM_HIFI2_PLATFORM
227 config SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH
228         tristate "Baytrail & Cherrytrail platform with no codec (MinnowBoard MAX, Up)"
229         depends on I2C && ACPI
230         depends on X86_INTEL_LPSS || COMPILE_TEST
231         help
232           This adds support for ASoC machine driver for the MinnowBoard Max or
233           Up boards and provides access to I2S signals on the Low-Speed
234           connector. This is not a recommended option outside of these cases.
235           It is not intended to be enabled by distros by default.
236           Say Y or m if you have such a device.
238           If unsure select "N".
240 endif ## SND_SST_ATOM_HIFI2_PLATFORM
242 if SND_SOC_INTEL_SKL
244 config SND_SOC_INTEL_SKL_RT286_MACH
245         tristate "SKL with RT286 I2S mode"
246         depends on I2C && ACPI
247         depends on MFD_INTEL_LPSS || COMPILE_TEST
248         select SND_SOC_RT286
249         select SND_SOC_DMIC
250         select SND_SOC_HDAC_HDMI
251         help
252            This adds support for ASoC machine driver for Skylake platforms
253            with RT286 I2S audio codec.
254            Say Y or m if you have such a device.
255            If unsure select "N".
257 config SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH
258         tristate "SKL with NAU88L25 and SSM4567 in I2S Mode"
259         depends on I2C && ACPI
260         depends on MFD_INTEL_LPSS || COMPILE_TEST
261         select SND_SOC_NAU8825
262         select SND_SOC_SSM4567
263         select SND_SOC_DMIC
264         select SND_SOC_HDAC_HDMI
265         help
266           This adds support for ASoC Onboard Codec I2S machine driver. This will
267           create an alsa sound card for NAU88L25 + SSM4567.
268           Say Y or m if you have such a device. This is a recommended option.
269           If unsure select "N".
271 config SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH
272         tristate "SKL with NAU88L25 and MAX98357A in I2S Mode"
273         depends on I2C && ACPI
274         depends on MFD_INTEL_LPSS || COMPILE_TEST
275         select SND_SOC_NAU8825
276         select SND_SOC_MAX98357A
277         select SND_SOC_DMIC
278         select SND_SOC_HDAC_HDMI
279         help
280           This adds support for ASoC Onboard Codec I2S machine driver. This will
281           create an alsa sound card for NAU88L25 + MAX98357A.
282           Say Y or m if you have such a device. This is a recommended option.
283           If unsure select "N".
285 endif ## SND_SOC_INTEL_SKL
287 config SND_SOC_INTEL_DA7219_MAX98357A_GENERIC
288         tristate
289         select SND_SOC_DA7219
290         select SND_SOC_MAX98357A
291         select SND_SOC_DMIC
292         select SND_HDA_CODEC_HDMI if SND_SOC_SOF_HDA_AUDIO_CODEC
293         select SND_SOC_HDAC_HDMI
295 config SND_SOC_INTEL_BXT_DA7219_MAX98357A_COMMON
296         tristate
297         select SND_SOC_INTEL_DA7219_MAX98357A_GENERIC
299 if SND_SOC_INTEL_APL
301 config SND_SOC_INTEL_BXT_DA7219_MAX98357A_MACH
302         tristate "Broxton with DA7219 and MAX98357A in I2S Mode"
303         depends on I2C && ACPI
304         depends on MFD_INTEL_LPSS || COMPILE_TEST
305         select SND_SOC_INTEL_BXT_DA7219_MAX98357A_COMMON
306         help
307            This adds support for ASoC machine driver for Broxton-P platforms
308            with DA7219 + MAX98357A I2S audio codec.
309            Say Y or m if you have such a device. This is a recommended option.
310            If unsure select "N".
312 config SND_SOC_INTEL_BXT_RT298_MACH
313         tristate "Broxton with RT298 I2S mode"
314         depends on I2C && ACPI
315         depends on MFD_INTEL_LPSS || COMPILE_TEST
316         select SND_SOC_RT298
317         select SND_SOC_DMIC
318         select SND_SOC_HDAC_HDMI
319         help
320            This adds support for ASoC machine driver for Broxton platforms
321            with RT286 I2S audio codec.
322            Say Y or m if you have such a device. This is a recommended option.
323            If unsure select "N".
325 endif ## SND_SOC_INTEL_APL
327 if SND_SOC_INTEL_KBL
329 config SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH
330         tristate "KBL with RT5663 and MAX98927 in I2S Mode"
331         depends on I2C && ACPI
332         depends on MFD_INTEL_LPSS || COMPILE_TEST
333         select SND_SOC_RT5663
334         select SND_SOC_MAX98927
335         select SND_SOC_DMIC
336         select SND_SOC_HDAC_HDMI
337         select SND_SOC_INTEL_SKYLAKE_SSP_CLK
338         help
339           This adds support for ASoC Onboard Codec I2S machine driver. This will
340           create an alsa sound card for RT5663 + MAX98927.
341           Say Y or m if you have such a device. This is a recommended option.
342           If unsure select "N".
344 config SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH
345         tristate "KBL with RT5663, RT5514 and MAX98927 in I2S Mode"
346         depends on I2C && ACPI
347         depends on MFD_INTEL_LPSS || COMPILE_TEST
348         depends on SPI
349         select SND_SOC_RT5663
350         select SND_SOC_RT5514
351         select SND_SOC_RT5514_SPI
352         select SND_SOC_MAX98927
353         select SND_SOC_HDAC_HDMI
354         select SND_SOC_INTEL_SKYLAKE_SSP_CLK
355         help
356           This adds support for ASoC Onboard Codec I2S machine driver. This will
357           create an alsa sound card for RT5663 + RT5514 + MAX98927.
358           Say Y or m if you have such a device. This is a recommended option.
359           If unsure select "N".
361 config SND_SOC_INTEL_KBL_DA7219_MAX98357A_MACH
362         tristate "KBL with DA7219 and MAX98357A in I2S Mode"
363         depends on I2C && ACPI
364         depends on MFD_INTEL_LPSS || COMPILE_TEST
365         select SND_SOC_INTEL_DA7219_MAX98357A_GENERIC
366         help
367           This adds support for ASoC Onboard Codec I2S machine driver. This will
368           create an alsa sound card for DA7219 + MAX98357A I2S audio codec.
369           Say Y if you have such a device.
371 config SND_SOC_INTEL_KBL_DA7219_MAX98927_MACH
372         tristate "KBL with DA7219 and MAX98927 in I2S Mode"
373         depends on I2C && ACPI
374         depends on MFD_INTEL_LPSS || COMPILE_TEST
375         select SND_SOC_DA7219
376         select SND_SOC_MAX98927
377         select SND_SOC_MAX98373
378         select SND_SOC_DMIC
379         select SND_SOC_HDAC_HDMI
380         help
381           This adds support for ASoC Onboard Codec I2S machine driver. This will
382           create an alsa sound card for DA7219 + MAX98927 I2S audio codec.
383           Say Y if you have such a device.
384           If unsure select "N".
386 config SND_SOC_INTEL_KBL_RT5660_MACH
387         tristate "KBL with RT5660 in I2S Mode"
388         depends on I2C && ACPI
389         depends on MFD_INTEL_LPSS || COMPILE_TEST
390         select SND_SOC_RT5660
391         select SND_SOC_HDAC_HDMI
392         help
393           This adds support for ASoC Onboard Codec I2S machine driver. This will
394           create an alsa sound card for RT5660 I2S audio codec.
395           Say Y if you have such a device.
397 endif ## SND_SOC_INTEL_KBL
399 if SND_SOC_SOF_GEMINILAKE  && SND_SOC_SOF_HDA_LINK
401 config SND_SOC_INTEL_GLK_DA7219_MAX98357A_MACH
402         tristate "GLK with DA7219 and MAX98357A in I2S Mode"
403         depends on I2C && ACPI
404         depends on MFD_INTEL_LPSS || COMPILE_TEST
405         select SND_SOC_INTEL_BXT_DA7219_MAX98357A_COMMON
406         help
407            This adds support for ASoC machine driver for Geminilake platforms
408            with DA7219 + MAX98357A I2S audio codec.
409            Say Y or m if you have such a device. This is a recommended option.
410            If unsure select "N".
412 config SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH
413         tristate "GLK with RT5682 and MAX98357A in I2S Mode"
414         depends on I2C && ACPI
415         depends on MFD_INTEL_LPSS || COMPILE_TEST
416         select SND_SOC_RT5682
417         select SND_SOC_MAX98357A
418         select SND_SOC_DMIC
419         select SND_HDA_CODEC_HDMI if SND_SOC_SOF_HDA_AUDIO_CODEC
420         select SND_SOC_HDAC_HDMI
421         help
422            This adds support for ASoC machine driver for Geminilake platforms
423            with RT5682 + MAX98357A I2S audio codec.
424            Say Y if you have such a device.
425            If unsure select "N".
427 endif ## SND_SOC_SOF_GEMINILAKE  && SND_SOC_SOF_HDA_LINK
429 if SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC || SND_SOC_SOF_HDA_AUDIO_CODEC
431 config SND_SOC_INTEL_SKL_HDA_DSP_GENERIC_MACH
432         tristate "SKL/KBL/BXT/APL with HDA Codecs"
433         select SND_HDA_CODEC_HDMI if SND_SOC_SOF_HDA_AUDIO_CODEC
434         select SND_SOC_HDAC_HDMI
435         select SND_SOC_DMIC
436         # SND_SOC_HDAC_HDA is already selected
437         help
438           This adds support for ASoC machine driver for Intel platforms
439           SKL/KBL/BXT/APL with iDisp, HDA audio codecs.
440           Say Y or m if you have such a device. This is a recommended option.
441           If unsure select "N".
443 endif ## SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC || SND_SOC_SOF_HDA_AUDIO_CODEC
445 if SND_SOC_SOF_HDA_LINK || SND_SOC_SOF_BAYTRAIL
446 config SND_SOC_INTEL_SOF_RT5682_MACH
447         tristate "SOF with rt5682 codec in I2S Mode"
448         depends on I2C && ACPI
449         depends on (SND_SOC_SOF_HDA_LINK && (MFD_INTEL_LPSS || COMPILE_TEST)) ||\
450                    (SND_SOC_SOF_BAYTRAIL && (X86_INTEL_LPSS || COMPILE_TEST))
451         select SND_SOC_RT5682
452         select SND_SOC_DMIC
453         select SND_HDA_CODEC_HDMI if SND_SOC_SOF_HDA_AUDIO_CODEC
454         select SND_SOC_HDAC_HDMI
455         help
456            This adds support for ASoC machine driver for SOF platforms
457            with rt5682 codec.
458            Say Y if you have such a device.
459            If unsure select "N".
460 endif ## SND_SOC_SOF_HDA_LINK || SND_SOC_SOF_BAYTRAIL
462 if (SND_SOC_SOF_COMETLAKE_LP && SND_SOC_SOF_HDA_LINK)
464 config SND_SOC_INTEL_CML_LP_DA7219_MAX98357A_MACH
465         tristate "CML_LP with DA7219 and MAX98357A in I2S Mode"
466         depends on I2C && ACPI
467         depends on MFD_INTEL_LPSS || COMPILE_TEST
468         select SND_SOC_INTEL_BXT_DA7219_MAX98357A_COMMON
469         help
470            This adds support for ASoC machine driver for Cometlake platforms
471            with DA7219 + MAX98357A I2S audio codec.
472            Say Y or m if you have such a device. This is a recommended option.
473            If unsure select "N".
475 config SND_SOC_INTEL_SOF_CML_RT1011_RT5682_MACH
476         tristate "CML with RT1011 and RT5682 in I2S Mode"
477         depends on I2C && ACPI
478         depends on MFD_INTEL_LPSS || COMPILE_TEST
479         select SND_SOC_RT1011
480         select SND_SOC_RT5682
481         select SND_SOC_DMIC
482         select SND_SOC_HDAC_HDMI
483         select SND_HDA_CODEC_HDMI if SND_SOC_SOF_HDA_AUDIO_CODEC
484         help
485           This adds support for ASoC machine driver for SOF platform with
486           RT1011 + RT5682 I2S codec.
487           Say Y if you have such a device.
488           If unsure select "N".
490 endif ## SND_SOC_SOF_COMETLAKE_LP && SND_SOC_SOF_HDA_LINK
492 if SND_SOC_SOF_JASPERLAKE
494 config SND_SOC_INTEL_SOF_DA7219_MAX98373_MACH
495         tristate "SOF with DA7219 and MAX98373 in I2S Mode"
496         depends on I2C && ACPI
497         depends on MFD_INTEL_LPSS || COMPILE_TEST
498         select SND_SOC_DA7219
499         select SND_SOC_MAX98373
500         select SND_SOC_DMIC
501         select SND_HDA_CODEC_HDMI if SND_SOC_SOF_HDA_AUDIO_CODEC
502         help
503           This adds support for ASoC machine driver for SOF platforms
504           with DA7219 + MAX98373 I2S audio codec.
505           Say Y if you have such a device.
506           If unsure select "N".
508 endif ## SND_SOC_SOF_JASPERLAKE
510 endif ## SND_SOC_INTEL_MACH