xref: /openbmc/linux/sound/soc/intel/Kconfig (revision ab589bac)
1# SPDX-License-Identifier: GPL-2.0-only
2config SND_SOC_INTEL_SST_TOPLEVEL
3	bool "Intel ASoC SST drivers"
4	default y
5	depends on X86 || COMPILE_TEST
6	select SND_SOC_INTEL_MACH
7	help
8	  Intel ASoC SST Platform Drivers. If you have a Intel machine that
9	  has an audio controller with a DSP and I2S or DMIC port, then
10	  enable this option by saying Y
11
12	  Note that the answer to this question doesn't directly affect the
13	  kernel: saying N will just cause the configurator to skip all
14	  the questions about Intel SST drivers.
15
16if SND_SOC_INTEL_SST_TOPLEVEL
17
18config SND_SOC_INTEL_SST
19	tristate
20
21config SND_SOC_INTEL_CATPT
22	tristate "Haswell and Broadwell"
23	depends on ACPI || COMPILE_TEST
24	depends on DMADEVICES && SND_DMA_SGBUF
25	select DW_DMAC_CORE
26	select SND_SOC_ACPI_INTEL_MATCH
27	help
28	  Enable support for Intel(R) Haswell and Broadwell platforms
29	  with I2S codec present. This is a recommended option.
30	  Say Y or m if you have such device.
31	  If unsure, say N.
32
33config SND_SOC_INTEL_HASWELL
34	tristate
35	select SND_SOC_INTEL_CATPT
36
37config SND_SST_ATOM_HIFI2_PLATFORM
38	tristate
39	select SND_SOC_COMPRESS
40
41config SND_SST_ATOM_HIFI2_PLATFORM_PCI
42	tristate "PCI HiFi2 (Merrifield) Platforms"
43	depends on X86 && PCI
44	select SND_SST_ATOM_HIFI2_PLATFORM
45	help
46	  If you have a Intel Merrifield/Edison platform, then
47	  enable this option by saying Y or m. Distros will typically not
48	  enable this option: while Merrifield/Edison can run a mainline
49	  kernel with limited functionality it will require a firmware file
50	  which is not in the standard firmware tree
51
52config SND_SST_ATOM_HIFI2_PLATFORM_ACPI
53	tristate "ACPI HiFi2 (Baytrail, Cherrytrail) Platforms"
54	default ACPI
55	depends on X86 && ACPI && PCI
56	select SND_SST_ATOM_HIFI2_PLATFORM
57	select SND_SOC_ACPI_INTEL_MATCH
58	select IOSF_MBI
59	help
60	  If you have a Intel Baytrail or Cherrytrail platform with an I2S
61	  codec, then enable this option by saying Y or m. This is a
62	  recommended option
63	  This option is mutually exclusive with the SOF support on
64	  Baytrail/Cherrytrail. If you want to enable SOF on
65	  Baytrail/Cherrytrail, you need to deselect this option first.
66
67config SND_SOC_INTEL_SKYLAKE
68	tristate "All Skylake/SST Platforms"
69	depends on PCI && ACPI
70	depends on COMMON_CLK
71	select SND_SOC_INTEL_SKL
72	select SND_SOC_INTEL_APL
73	select SND_SOC_INTEL_KBL
74	select SND_SOC_INTEL_GLK
75	select SND_SOC_INTEL_CNL
76	select SND_SOC_INTEL_CFL
77	help
78	  This is a backwards-compatible option to select all devices
79	  supported by the Intel SST/Skylake driver. This option is no
80	  longer recommended and will be deprecated when the SOF
81	  driver is introduced.  Distributions should explicitly
82	  select which platform uses this driver.
83
84config SND_SOC_INTEL_SKL
85	tristate "Skylake Platforms"
86	depends on PCI && ACPI
87	depends on COMMON_CLK
88	select SND_SOC_INTEL_SKYLAKE_FAMILY
89	help
90	  If you have a Intel Skylake platform with the DSP enabled
91	  in the BIOS then enable this option by saying Y or m.
92
93config SND_SOC_INTEL_APL
94	tristate "Broxton/ApolloLake Platforms"
95	depends on PCI && ACPI
96	depends on COMMON_CLK
97	select SND_SOC_INTEL_SKYLAKE_FAMILY
98	help
99	  If you have a Intel Broxton/ApolloLake platform with the DSP
100	  enabled in the BIOS then enable this option by saying Y or m.
101
102config SND_SOC_INTEL_KBL
103	tristate "Kabylake Platforms"
104	depends on PCI && ACPI
105	depends on COMMON_CLK
106	select SND_SOC_INTEL_SKYLAKE_FAMILY
107	help
108	  If you have a Intel Kabylake platform with the DSP
109	  enabled in the BIOS then enable this option by saying Y or m.
110
111config SND_SOC_INTEL_GLK
112	tristate "GeminiLake Platforms"
113	depends on PCI && ACPI
114	depends on COMMON_CLK
115	select SND_SOC_INTEL_SKYLAKE_FAMILY
116	help
117	  If you have a Intel GeminiLake platform with the DSP
118	  enabled in the BIOS then enable this option by saying Y or m.
119
120config SND_SOC_INTEL_CNL
121	tristate "CannonLake/WhiskyLake Platforms"
122	depends on PCI && ACPI
123	depends on COMMON_CLK
124	select SND_SOC_INTEL_SKYLAKE_FAMILY
125	help
126	  If you have a Intel CNL/WHL platform with the DSP
127	  enabled in the BIOS then enable this option by saying Y or m.
128
129config SND_SOC_INTEL_CFL
130	tristate "CoffeeLake Platforms"
131	depends on PCI && ACPI
132	depends on COMMON_CLK
133	select SND_SOC_INTEL_SKYLAKE_FAMILY
134	help
135	  If you have a Intel CoffeeLake platform with the DSP
136	  enabled in the BIOS then enable this option by saying Y or m.
137
138config SND_SOC_INTEL_CML_H
139	tristate "CometLake-H Platforms"
140	depends on PCI && ACPI
141	depends on COMMON_CLK
142	select SND_SOC_INTEL_SKYLAKE_FAMILY
143	help
144	  If you have a Intel CometLake-H platform with the DSP
145	  enabled in the BIOS then enable this option by saying Y or m.
146
147config SND_SOC_INTEL_CML_LP
148	tristate "CometLake-LP Platforms"
149	depends on PCI && ACPI
150	depends on COMMON_CLK
151	select SND_SOC_INTEL_SKYLAKE_FAMILY
152	help
153	  If you have a Intel CometLake-LP platform with the DSP
154	  enabled in the BIOS then enable this option by saying Y or m.
155
156config SND_SOC_INTEL_SKYLAKE_FAMILY
157	tristate
158	select SND_SOC_INTEL_SKYLAKE_COMMON
159
160if SND_SOC_INTEL_SKYLAKE_FAMILY
161
162config SND_SOC_INTEL_SKYLAKE_SSP_CLK
163	tristate
164
165config SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
166	bool "HDAudio codec support"
167	help
168	  If you have Intel Skylake or Kabylake with HDAudio codec
169	  and DMIC present then enable this option by saying Y.
170
171config SND_SOC_INTEL_SKYLAKE_COMMON
172	tristate
173	select SND_HDA_EXT_CORE
174	select SND_HDA_DSP_LOADER
175	select SND_SOC_TOPOLOGY
176	select SND_SOC_INTEL_SST
177	select SND_SOC_HDAC_HDA if SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
178	select SND_SOC_ACPI_INTEL_MATCH
179	select SND_INTEL_DSP_CONFIG
180	help
181	  If you have a Intel Skylake/Broxton/ApolloLake/KabyLake/
182	  GeminiLake or CannonLake platform with the DSP enabled in the BIOS
183	  then enable this option by saying Y or m.
184
185endif ## SND_SOC_INTEL_SKYLAKE_FAMILY
186
187endif ## SND_SOC_INTEL_SST_TOPLEVEL
188
189if SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
190
191config SND_SOC_ACPI_INTEL_MATCH
192	tristate
193	select SND_SOC_ACPI if ACPI
194	# this option controls the compilation of ACPI matching tables and
195	# helpers and is not meant to be selected by the user.
196
197endif ## SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
198
199config SND_SOC_INTEL_KEEMBAY
200	tristate "Keembay Platforms"
201	depends on ARM64 || COMPILE_TEST
202	depends on COMMON_CLK
203	help
204	  If you have a Intel Keembay platform then enable this option
205	  by saying Y or m.
206
207# ASoC codec drivers
208source "sound/soc/intel/boards/Kconfig"
209