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 select SND_SOC_INTEL_SKL
109 select SND_SOC_INTEL_APL
110 select SND_SOC_INTEL_KBL
111 select SND_SOC_INTEL_GLK
112 select SND_SOC_INTEL_CNL
113 select SND_SOC_INTEL_CFL
115 This is a backwards-compatible option to select all devices
116 supported by the Intel SST/Skylake driver. This option is no
117 longer recommended and will be deprecated when the SOF
118 driver is introduced. Distributions should explicitly
119 select which platform uses this driver.
121 config SND_SOC_INTEL_SKL
122 tristate "Skylake Platforms"
123 depends on PCI && ACPI
124 select SND_SOC_INTEL_SKYLAKE_FAMILY
126 If you have a Intel Skylake platform with the DSP enabled
127 in the BIOS then enable this option by saying Y or m.
129 config SND_SOC_INTEL_APL
130 tristate "Broxton/ApolloLake Platforms"
131 depends on PCI && ACPI
132 select SND_SOC_INTEL_SKYLAKE_FAMILY
134 If you have a Intel Broxton/ApolloLake platform with the DSP
135 enabled in the BIOS then enable this option by saying Y or m.
137 config SND_SOC_INTEL_KBL
138 tristate "Kabylake Platforms"
139 depends on PCI && ACPI
140 select SND_SOC_INTEL_SKYLAKE_FAMILY
142 If you have a Intel Kabylake platform with the DSP
143 enabled in the BIOS then enable this option by saying Y or m.
145 config SND_SOC_INTEL_GLK
146 tristate "GeminiLake Platforms"
147 depends on PCI && ACPI
148 select SND_SOC_INTEL_SKYLAKE_FAMILY
150 If you have a Intel GeminiLake platform with the DSP
151 enabled in the BIOS then enable this option by saying Y or m.
153 config SND_SOC_INTEL_CNL
154 tristate "CannonLake/WhiskyLake Platforms"
155 depends on PCI && ACPI
156 select SND_SOC_INTEL_SKYLAKE_FAMILY
158 If you have a Intel CNL/WHL platform with the DSP
159 enabled in the BIOS then enable this option by saying Y or m.
161 config SND_SOC_INTEL_CFL
162 tristate "CoffeeLake Platforms"
163 depends on PCI && ACPI
164 select SND_SOC_INTEL_SKYLAKE_FAMILY
166 If you have a Intel CoffeeLake platform with the DSP
167 enabled in the BIOS then enable this option by saying Y or m.
169 config SND_SOC_INTEL_SKYLAKE_FAMILY
171 select SND_SOC_INTEL_SKYLAKE_COMMON
173 if SND_SOC_INTEL_SKYLAKE_FAMILY
175 config SND_SOC_INTEL_SKYLAKE_SSP_CLK
178 config SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
179 bool "HDAudio codec support"
181 If you have a Intel Skylake/Broxton/ApolloLake/KabyLake/
182 GeminiLake or CannonLake platform with an HDaudio codec
183 then enable this option by saying Y
185 config SND_SOC_INTEL_SKYLAKE_COMMON
187 select SND_HDA_EXT_CORE
188 select SND_HDA_DSP_LOADER
189 select SND_SOC_TOPOLOGY
190 select SND_SOC_INTEL_SST
191 select SND_SOC_HDAC_HDA if SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
192 select SND_SOC_ACPI_INTEL_MATCH
194 If you have a Intel Skylake/Broxton/ApolloLake/KabyLake/
195 GeminiLake or CannonLake platform with the DSP enabled in the BIOS
196 then enable this option by saying Y or m.
198 endif ## SND_SOC_INTEL_SKYLAKE_FAMILY
200 endif ## SND_SOC_INTEL_SST_TOPLEVEL
202 if SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
204 config SND_SOC_ACPI_INTEL_MATCH
206 select SND_SOC_ACPI if ACPI
207 # this option controls the compilation of ACPI matching tables and
208 # helpers and is not meant to be selected by the user.
210 endif ## SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
214 source "sound/soc/intel/boards/Kconfig"