hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/sound/soc/intel/Kconfig
....@@ -1,3 +1,4 @@
1
+# SPDX-License-Identifier: GPL-2.0-only
12 config SND_SOC_INTEL_SST_TOPLEVEL
23 bool "Intel ASoC SST drivers"
34 default y
....@@ -14,63 +15,24 @@
1415
1516 if SND_SOC_INTEL_SST_TOPLEVEL
1617
17
-config SND_SST_IPC
18
- tristate
19
- # This option controls the IPC core for HiFi2 platforms
20
-
21
-config SND_SST_IPC_PCI
22
- tristate
23
- select SND_SST_IPC
24
- # This option controls the PCI-based IPC for HiFi2 platforms
25
- # (Medfield, Merrifield).
26
-
27
-config SND_SST_IPC_ACPI
28
- tristate
29
- select SND_SST_IPC
30
- # This option controls the ACPI-based IPC for HiFi2 platforms
31
- # (Baytrail, Cherrytrail)
32
-
33
-config SND_SOC_INTEL_SST_ACPI
34
- tristate
35
- # This option controls ACPI-based probing on
36
- # Haswell/Broadwell/Baytrail legacy and will be set
37
- # when these platforms are enabled
38
-
3918 config SND_SOC_INTEL_SST
4019 tristate
4120
42
-config SND_SOC_INTEL_SST_FIRMWARE
43
- tristate
21
+config SND_SOC_INTEL_CATPT
22
+ tristate "Haswell and Broadwell"
23
+ depends on ACPI || COMPILE_TEST
24
+ depends on DMADEVICES && SND_DMA_SGBUF
4425 select DW_DMAC_CORE
45
- # This option controls firmware download on
46
- # Haswell/Broadwell/Baytrail legacy and will be set
47
- # when these platforms are enabled
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.
4832
4933 config SND_SOC_INTEL_HASWELL
50
- tristate "Haswell/Broadwell Platforms"
51
- depends on SND_DMA_SGBUF
52
- depends on DMADEVICES && ACPI
53
- select SND_SOC_INTEL_SST
54
- select SND_SOC_INTEL_SST_ACPI
55
- select SND_SOC_INTEL_SST_FIRMWARE
56
- select SND_SOC_ACPI_INTEL_MATCH
57
- help
58
- If you have a Intel Haswell or Broadwell platform connected to
59
- an I2S codec, then enable this option by saying Y or m. This is
60
- typically used for Chromebooks. This is a recommended option.
61
-
62
-config SND_SOC_INTEL_BAYTRAIL
63
- tristate "Baytrail (legacy) Platforms"
64
- depends on DMADEVICES && ACPI && SND_SST_ATOM_HIFI2_PLATFORM=n
65
- select SND_SOC_INTEL_SST
66
- select SND_SOC_INTEL_SST_ACPI
67
- select SND_SOC_INTEL_SST_FIRMWARE
68
- select SND_SOC_ACPI_INTEL_MATCH
69
- help
70
- If you have a Intel Baytrail platform connected to an I2S codec,
71
- then enable this option by saying Y or m. This was typically used
72
- for Baytrail Chromebooks but this option is now deprecated and is
73
- not recommended, use SND_SST_ATOM_HIFI2_PLATFORM instead.
34
+ tristate
35
+ select SND_SOC_INTEL_CATPT
7436
7537 config SND_SST_ATOM_HIFI2_PLATFORM
7638 tristate
....@@ -79,7 +41,6 @@
7941 config SND_SST_ATOM_HIFI2_PLATFORM_PCI
8042 tristate "PCI HiFi2 (Merrifield) Platforms"
8143 depends on X86 && PCI
82
- select SND_SST_IPC_PCI
8344 select SND_SST_ATOM_HIFI2_PLATFORM
8445 help
8546 If you have a Intel Merrifield/Edison platform, then
....@@ -91,8 +52,7 @@
9152 config SND_SST_ATOM_HIFI2_PLATFORM_ACPI
9253 tristate "ACPI HiFi2 (Baytrail, Cherrytrail) Platforms"
9354 default ACPI
94
- depends on X86 && ACPI
95
- select SND_SST_IPC_ACPI
55
+ depends on X86 && ACPI && PCI
9656 select SND_SST_ATOM_HIFI2_PLATFORM
9757 select SND_SOC_ACPI_INTEL_MATCH
9858 select IOSF_MBI
....@@ -100,22 +60,133 @@
10060 If you have a Intel Baytrail or Cherrytrail platform with an I2S
10161 codec, then enable this option by saying Y or m. This is a
10262 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
103161
104162 config SND_SOC_INTEL_SKYLAKE_SSP_CLK
105163 tristate
106164
107
-config SND_SOC_INTEL_SKYLAKE
108
- tristate "SKL/BXT/KBL/GLK/CNL... Platforms"
109
- depends on PCI && ACPI
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
110173 select SND_HDA_EXT_CORE
111174 select SND_HDA_DSP_LOADER
112175 select SND_SOC_TOPOLOGY
113176 select SND_SOC_INTEL_SST
177
+ select SND_SOC_HDAC_HDA if SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
114178 select SND_SOC_ACPI_INTEL_MATCH
179
+ select SND_INTEL_DSP_CONFIG
115180 help
116181 If you have a Intel Skylake/Broxton/ApolloLake/KabyLake/
117182 GeminiLake or CannonLake platform with the DSP enabled in the BIOS
118183 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
119190
120191 config SND_SOC_ACPI_INTEL_MATCH
121192 tristate
....@@ -123,7 +194,15 @@
123194 # this option controls the compilation of ACPI matching tables and
124195 # helpers and is not meant to be selected by the user.
125196
126
-endif ## SND_SOC_INTEL_SST_TOPLEVEL
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.
127206
128207 # ASoC codec drivers
129208 source "sound/soc/intel/boards/Kconfig"