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