xref: /openbmc/linux/sound/soc/intel/Kconfig (revision 80ade22c)
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_SST_IPC
19	tristate
20	# This option controls the IPC core for HiFi2 platforms
21
22config SND_SST_IPC_PCI
23	tristate
24	select SND_SST_IPC
25	# This option controls the PCI-based IPC for HiFi2 platforms
26	#  (Medfield, Merrifield).
27
28config SND_SST_IPC_ACPI
29	tristate
30	select SND_SST_IPC
31	# This option controls the ACPI-based IPC for HiFi2 platforms
32	# (Baytrail, Cherrytrail)
33
34config SND_SOC_INTEL_SST
35	tristate
36
37config SND_SOC_INTEL_CATPT
38	tristate "Haswell and Broadwell"
39	depends on ACPI || COMPILE_TEST
40	depends on DMADEVICES && SND_DMA_SGBUF
41	select DW_DMAC_CORE
42	select SND_SOC_ACPI_INTEL_MATCH
43	help
44	  Enable support for Intel(R) Haswell and Broadwell platforms
45	  with I2S codec present. This is a recommended option.
46	  Say Y or m if you have such device.
47	  If unsure, say N.
48
49config SND_SOC_INTEL_HASWELL
50	tristate
51	select SND_SOC_INTEL_CATPT
52
53config SND_SST_ATOM_HIFI2_PLATFORM
54	tristate
55	select SND_SOC_COMPRESS
56
57config SND_SST_ATOM_HIFI2_PLATFORM_PCI
58	tristate "PCI HiFi2 (Merrifield) Platforms"
59	depends on X86 && PCI
60	select SND_SST_IPC_PCI
61	select SND_SST_ATOM_HIFI2_PLATFORM
62	help
63	  If you have a Intel Merrifield/Edison platform, then
64	  enable this option by saying Y or m. Distros will typically not
65	  enable this option: while Merrifield/Edison can run a mainline
66	  kernel with limited functionality it will require a firmware file
67	  which is not in the standard firmware tree
68
69config SND_SST_ATOM_HIFI2_PLATFORM_ACPI
70	tristate "ACPI HiFi2 (Baytrail, Cherrytrail) Platforms"
71	default ACPI
72	depends on X86 && ACPI && PCI
73	select SND_SST_IPC_ACPI
74	select SND_SST_ATOM_HIFI2_PLATFORM
75	select SND_SOC_ACPI_INTEL_MATCH
76	select IOSF_MBI
77	help
78	  If you have a Intel Baytrail or Cherrytrail platform with an I2S
79	  codec, then enable this option by saying Y or m. This is a
80	  recommended option
81	  This option is mutually exclusive with the SOF support on
82	  Baytrail/Cherrytrail. If you want to enable SOF on
83	  Baytrail/Cherrytrail, you need to deselect this option first.
84
85config SND_SOC_INTEL_SKYLAKE
86	tristate "All Skylake/SST Platforms"
87	depends on PCI && ACPI
88	depends on COMMON_CLK
89	select SND_SOC_INTEL_SKL
90	select SND_SOC_INTEL_APL
91	select SND_SOC_INTEL_KBL
92	select SND_SOC_INTEL_GLK
93	select SND_SOC_INTEL_CNL
94	select SND_SOC_INTEL_CFL
95	help
96	  This is a backwards-compatible option to select all devices
97	  supported by the Intel SST/Skylake driver. This option is no
98	  longer recommended and will be deprecated when the SOF
99	  driver is introduced.  Distributions should explicitly
100	  select which platform uses this driver.
101
102config SND_SOC_INTEL_SKL
103	tristate "Skylake 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 Skylake platform with the DSP enabled
109	  in the BIOS then enable this option by saying Y or m.
110
111config SND_SOC_INTEL_APL
112	tristate "Broxton/ApolloLake 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 Broxton/ApolloLake platform with the DSP
118	  enabled in the BIOS then enable this option by saying Y or m.
119
120config SND_SOC_INTEL_KBL
121	tristate "Kabylake 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 Kabylake platform with the DSP
127	  enabled in the BIOS then enable this option by saying Y or m.
128
129config SND_SOC_INTEL_GLK
130	tristate "GeminiLake 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 GeminiLake platform with the DSP
136	  enabled in the BIOS then enable this option by saying Y or m.
137
138config SND_SOC_INTEL_CNL
139	tristate "CannonLake/WhiskyLake 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 CNL/WHL platform with the DSP
145	  enabled in the BIOS then enable this option by saying Y or m.
146
147config SND_SOC_INTEL_CFL
148	tristate "CoffeeLake 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 CoffeeLake platform with the DSP
154	  enabled in the BIOS then enable this option by saying Y or m.
155
156config SND_SOC_INTEL_CML_H
157	tristate "CometLake-H Platforms"
158	depends on PCI && ACPI
159	depends on COMMON_CLK
160	select SND_SOC_INTEL_SKYLAKE_FAMILY
161	help
162	  If you have a Intel CometLake-H platform with the DSP
163	  enabled in the BIOS then enable this option by saying Y or m.
164
165config SND_SOC_INTEL_CML_LP
166	tristate "CometLake-LP Platforms"
167	depends on PCI && ACPI
168	depends on COMMON_CLK
169	select SND_SOC_INTEL_SKYLAKE_FAMILY
170	help
171	  If you have a Intel CometLake-LP platform with the DSP
172	  enabled in the BIOS then enable this option by saying Y or m.
173
174config SND_SOC_INTEL_SKYLAKE_FAMILY
175	tristate
176	select SND_SOC_INTEL_SKYLAKE_COMMON
177
178if SND_SOC_INTEL_SKYLAKE_FAMILY
179
180config SND_SOC_INTEL_SKYLAKE_SSP_CLK
181	tristate
182
183config SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
184	bool "HDAudio codec support"
185	help
186	  If you have Intel Skylake or Kabylake with HDAudio codec
187	  and DMIC present then enable this option by saying Y.
188
189config SND_SOC_INTEL_SKYLAKE_COMMON
190	tristate
191	select SND_HDA_EXT_CORE
192	select SND_HDA_DSP_LOADER
193	select SND_SOC_TOPOLOGY
194	select SND_SOC_INTEL_SST
195	select SND_SOC_HDAC_HDA if SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
196	select SND_SOC_ACPI_INTEL_MATCH
197	select SND_INTEL_DSP_CONFIG
198	help
199	  If you have a Intel Skylake/Broxton/ApolloLake/KabyLake/
200	  GeminiLake or CannonLake platform with the DSP enabled in the BIOS
201	  then enable this option by saying Y or m.
202
203endif ## SND_SOC_INTEL_SKYLAKE_FAMILY
204
205endif ## SND_SOC_INTEL_SST_TOPLEVEL
206
207if SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
208
209config SND_SOC_ACPI_INTEL_MATCH
210	tristate
211	select SND_SOC_ACPI if ACPI
212	# this option controls the compilation of ACPI matching tables and
213	# helpers and is not meant to be selected by the user.
214
215endif ## SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
216
217config SND_SOC_INTEL_KEEMBAY
218	tristate "Keembay Platforms"
219	depends on ARM64 || COMPILE_TEST
220	depends on COMMON_CLK
221	help
222	  If you have a Intel Keembay platform then enable this option
223	  by saying Y or m.
224
225# ASoC codec drivers
226source "sound/soc/intel/boards/Kconfig"
227