c1bf69a0bcfe18c32ead88d853742851393bf782
[releases.git] / Kconfig
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_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
33 config SND_SOC_INTEL_HASWELL
34         tristate
35         select SND_SOC_INTEL_CATPT
36
37 config SND_SST_ATOM_HIFI2_PLATFORM
38         tristate
39         select SND_SOC_COMPRESS
40
41 config 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
52 config 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
67 config 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
84 config 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
93 config 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
102 config 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
111 config 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
120 config 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
129 config 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
138 config 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
147 config 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
156 config SND_SOC_INTEL_SKYLAKE_FAMILY
157         tristate
158         select SND_SOC_INTEL_SKYLAKE_COMMON
159
160 if SND_SOC_INTEL_SKYLAKE_FAMILY
161
162 config SND_SOC_INTEL_SKYLAKE_SSP_CLK
163         tristate
164
165 config 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
171 config 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
185 endif ## SND_SOC_INTEL_SKYLAKE_FAMILY
186
187 endif ## SND_SOC_INTEL_SST_TOPLEVEL
188
189 if SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
190
191 config 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
197 endif ## SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
198
199 config SND_SOC_INTEL_KEEMBAY
200         tristate "Keembay Platforms"
201         depends on ARCH_KEEMBAY || 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
208 source "sound/soc/intel/boards/Kconfig"