1# SPDX-License-Identifier: GPL-2.0-only 2config 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 16if SND_SOC_INTEL_SST_TOPLEVEL 17 18config SND_SST_IPC 19 tristate 20 # This option controls the IPC core for HiFi2 platforms 21 22config SND_SST_IPC_PCI 23 tristate 24 select SND_SST_IPC 25 # This option controls the PCI-based IPC for HiFi2 platforms 26 # (Medfield, Merrifield). 27 28config SND_SST_IPC_ACPI 29 tristate 30 select SND_SST_IPC 31 # This option controls the ACPI-based IPC for HiFi2 platforms 32 # (Baytrail, Cherrytrail) 33 34config SND_SOC_INTEL_SST_ACPI 35 tristate 36 # This option controls ACPI-based probing on 37 # Haswell/Broadwell/Baytrail legacy and will be set 38 # when these platforms are enabled 39 40config SND_SOC_INTEL_SST 41 tristate 42 43config SND_SOC_INTEL_SST_FIRMWARE 44 tristate 45 select DW_DMAC_CORE 46 # This option controls firmware download on 47 # Haswell/Broadwell/Baytrail legacy and will be set 48 # when these platforms are enabled 49 50config 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 58 help 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. 62 63config 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 70 help 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. 75 76config SND_SST_ATOM_HIFI2_PLATFORM 77 tristate 78 select SND_SOC_COMPRESS 79 80config SND_SST_ATOM_HIFI2_PLATFORM_PCI 81 tristate "PCI HiFi2 (Merrifield) Platforms" 82 depends on X86 && PCI 83 select SND_SST_IPC_PCI 84 select SND_SST_ATOM_HIFI2_PLATFORM 85 help 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 91 92config SND_SST_ATOM_HIFI2_PLATFORM_ACPI 93 tristate "ACPI HiFi2 (Baytrail, Cherrytrail) Platforms" 94 default ACPI 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 99 select IOSF_MBI 100 help 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 103 recommended option 104 105config 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 115 help 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. 121 122config 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 127 help 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. 130 131config 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 136 help 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. 139 140config 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 145 help 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. 148 149config 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 154 help 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. 157 158config 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 163 help 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. 166 167config 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 172 help 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. 175 176config 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 181 help 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. 184 185config 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 190 help 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. 193 194config SND_SOC_INTEL_SKYLAKE_FAMILY 195 tristate 196 select SND_SOC_INTEL_SKYLAKE_COMMON 197 198if SND_SOC_INTEL_SKYLAKE_FAMILY 199 200config SND_SOC_INTEL_SKYLAKE_SSP_CLK 201 tristate 202 203config SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC 204 bool "HDAudio codec support" 205 help 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 209 210config SND_SOC_INTEL_SKYLAKE_COMMON 211 tristate 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 help 219 If you have a Intel Skylake/Broxton/ApolloLake/KabyLake/ 220 GeminiLake or CannonLake platform with the DSP enabled in the BIOS 221 then enable this option by saying Y or m. 222 223endif ## SND_SOC_INTEL_SKYLAKE_FAMILY 224 225endif ## SND_SOC_INTEL_SST_TOPLEVEL 226 227if SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL 228 229config SND_SOC_ACPI_INTEL_MATCH 230 tristate 231 select SND_SOC_ACPI if ACPI 232 # this option controls the compilation of ACPI matching tables and 233 # helpers and is not meant to be selected by the user. 234 235endif ## SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL 236 237 238# ASoC codec drivers 239source "sound/soc/intel/boards/Kconfig" 240