1 # SPDX-License-Identifier: GPL-2.0-only
2 config SND_SOC_INTEL_SST_TOPLEVEL
3 bool "Intel ASoC SST drivers"
5 depends on X86 || COMPILE_TEST
6 select SND_SOC_INTEL_MACH
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
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.
16 if SND_SOC_INTEL_SST_TOPLEVEL
20 # This option controls the IPC core for HiFi2 platforms
22 config SND_SST_IPC_PCI
25 # This option controls the PCI-based IPC for HiFi2 platforms
26 # (Medfield, Merrifield).
28 config SND_SST_IPC_ACPI
31 # This option controls the ACPI-based IPC for HiFi2 platforms
32 # (Baytrail, Cherrytrail)
34 config SND_SOC_INTEL_SST_ACPI
36 # This option controls ACPI-based probing on
37 # Haswell/Broadwell/Baytrail legacy and will be set
38 # when these platforms are enabled
40 config SND_SOC_INTEL_SST
43 config SND_SOC_INTEL_SST_FIRMWARE
46 # This option controls firmware download on
47 # Haswell/Broadwell/Baytrail legacy and will be set
48 # when these platforms are enabled
50 config SND_SOC_INTEL_HASWELL
51 tristate "Haswell/Broadwell Platforms"
52 depends on SND_DMA_SGBUF
53 depends on DMADEVICES && ACPI
54 select SND_SOC_INTEL_SST
55 select SND_SOC_INTEL_SST_ACPI
56 select SND_SOC_INTEL_SST_FIRMWARE
57 select SND_SOC_ACPI_INTEL_MATCH
59 If you have a Intel Haswell or Broadwell platform connected to
60 an I2S codec, then enable this option by saying Y or m. This is
61 typically used for Chromebooks. This is a recommended option.
63 config SND_SOC_INTEL_BAYTRAIL
64 tristate "Baytrail (legacy) Platforms"
65 depends on DMADEVICES && ACPI && SND_SST_ATOM_HIFI2_PLATFORM=n
66 select SND_SOC_INTEL_SST
67 select SND_SOC_INTEL_SST_ACPI
68 select SND_SOC_INTEL_SST_FIRMWARE
69 select SND_SOC_ACPI_INTEL_MATCH
71 If you have a Intel Baytrail platform connected to an I2S codec,
72 then enable this option by saying Y or m. This was typically used
73 for Baytrail Chromebooks but this option is now deprecated and is
74 not recommended, use SND_SST_ATOM_HIFI2_PLATFORM instead.
76 config SND_SST_ATOM_HIFI2_PLATFORM
78 select SND_SOC_COMPRESS
80 config SND_SST_ATOM_HIFI2_PLATFORM_PCI
81 tristate "PCI HiFi2 (Merrifield) Platforms"
83 select SND_SST_IPC_PCI
84 select SND_SST_ATOM_HIFI2_PLATFORM
86 If you have a Intel Merrifield/Edison platform, then
87 enable this option by saying Y or m. Distros will typically not
88 enable this option: while Merrifield/Edison can run a mainline
89 kernel with limited functionality it will require a firmware file
90 which is not in the standard firmware tree
92 config SND_SST_ATOM_HIFI2_PLATFORM_ACPI
93 tristate "ACPI HiFi2 (Baytrail, Cherrytrail) Platforms"
95 depends on X86 && ACPI && PCI
96 select SND_SST_IPC_ACPI
97 select SND_SST_ATOM_HIFI2_PLATFORM
98 select SND_SOC_ACPI_INTEL_MATCH
101 If you have a Intel Baytrail or Cherrytrail platform with an I2S
102 codec, then enable this option by saying Y or m. This is a
105 config SND_SOC_INTEL_SKYLAKE
106 tristate "All Skylake/SST Platforms"
107 depends on PCI && ACPI
108 depends on COMMON_CLK
109 select SND_SOC_INTEL_SKL
110 select SND_SOC_INTEL_APL
111 select SND_SOC_INTEL_KBL
112 select SND_SOC_INTEL_GLK
113 select SND_SOC_INTEL_CNL
114 select SND_SOC_INTEL_CFL
116 This is a backwards-compatible option to select all devices
117 supported by the Intel SST/Skylake driver. This option is no
118 longer recommended and will be deprecated when the SOF
119 driver is introduced. Distributions should explicitly
120 select which platform uses this driver.
122 config SND_SOC_INTEL_SKL
123 tristate "Skylake Platforms"
124 depends on PCI && ACPI
125 depends on COMMON_CLK
126 select SND_SOC_INTEL_SKYLAKE_FAMILY
128 If you have a Intel Skylake platform with the DSP enabled
129 in the BIOS then enable this option by saying Y or m.
131 config SND_SOC_INTEL_APL
132 tristate "Broxton/ApolloLake Platforms"
133 depends on PCI && ACPI
134 depends on COMMON_CLK
135 select SND_SOC_INTEL_SKYLAKE_FAMILY
137 If you have a Intel Broxton/ApolloLake platform with the DSP
138 enabled in the BIOS then enable this option by saying Y or m.
140 config SND_SOC_INTEL_KBL
141 tristate "Kabylake Platforms"
142 depends on PCI && ACPI
143 depends on COMMON_CLK
144 select SND_SOC_INTEL_SKYLAKE_FAMILY
146 If you have a Intel Kabylake platform with the DSP
147 enabled in the BIOS then enable this option by saying Y or m.
149 config SND_SOC_INTEL_GLK
150 tristate "GeminiLake Platforms"
151 depends on PCI && ACPI
152 depends on COMMON_CLK
153 select SND_SOC_INTEL_SKYLAKE_FAMILY
155 If you have a Intel GeminiLake platform with the DSP
156 enabled in the BIOS then enable this option by saying Y or m.
158 config SND_SOC_INTEL_CNL
159 tristate "CannonLake/WhiskyLake Platforms"
160 depends on PCI && ACPI
161 depends on COMMON_CLK
162 select SND_SOC_INTEL_SKYLAKE_FAMILY
164 If you have a Intel CNL/WHL platform with the DSP
165 enabled in the BIOS then enable this option by saying Y or m.
167 config SND_SOC_INTEL_CFL
168 tristate "CoffeeLake Platforms"
169 depends on PCI && ACPI
170 depends on COMMON_CLK
171 select SND_SOC_INTEL_SKYLAKE_FAMILY
173 If you have a Intel CoffeeLake platform with the DSP
174 enabled in the BIOS then enable this option by saying Y or m.
176 config SND_SOC_INTEL_CML_H
177 tristate "CometLake-H Platforms"
178 depends on PCI && ACPI
179 depends on COMMON_CLK
180 select SND_SOC_INTEL_SKYLAKE_FAMILY
182 If you have a Intel CometLake-H platform with the DSP
183 enabled in the BIOS then enable this option by saying Y or m.
185 config SND_SOC_INTEL_CML_LP
186 tristate "CometLake-LP Platforms"
187 depends on PCI && ACPI
188 depends on COMMON_CLK
189 select SND_SOC_INTEL_SKYLAKE_FAMILY
191 If you have a Intel CometLake-LP platform with the DSP
192 enabled in the BIOS then enable this option by saying Y or m.
194 config SND_SOC_INTEL_SKYLAKE_FAMILY
196 select SND_SOC_INTEL_SKYLAKE_COMMON
198 if SND_SOC_INTEL_SKYLAKE_FAMILY
200 config SND_SOC_INTEL_SKYLAKE_SSP_CLK
203 config SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
204 bool "HDAudio codec support"
206 If you have a Intel Skylake/Broxton/ApolloLake/KabyLake/
207 GeminiLake or CannonLake platform with an HDaudio codec
208 then enable this option by saying Y
210 config SND_SOC_INTEL_SKYLAKE_COMMON
212 select SND_HDA_EXT_CORE
213 select SND_HDA_DSP_LOADER
214 select SND_SOC_TOPOLOGY
215 select SND_SOC_INTEL_SST
216 select SND_SOC_HDAC_HDA if SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
217 select SND_SOC_ACPI_INTEL_MATCH
218 select SND_INTEL_DSP_CONFIG
220 If you have a Intel Skylake/Broxton/ApolloLake/KabyLake/
221 GeminiLake or CannonLake platform with the DSP enabled in the BIOS
222 then enable this option by saying Y or m.
224 endif ## SND_SOC_INTEL_SKYLAKE_FAMILY
226 endif ## SND_SOC_INTEL_SST_TOPLEVEL
228 if SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
230 config SND_SOC_ACPI_INTEL_MATCH
232 select SND_SOC_ACPI if ACPI
233 # this option controls the compilation of ACPI matching tables and
234 # helpers and is not meant to be selected by the user.
236 endif ## SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
240 source "sound/soc/intel/boards/Kconfig"