0001 # SPDX-License-Identifier: GPL-2.0-only
0002 config SND_SOC_INTEL_SST_TOPLEVEL
0003 bool "Intel ASoC SST drivers"
0004 default y
0005 depends on X86 || COMPILE_TEST
0006 select SND_SOC_INTEL_MACH
0007 help
0008 Intel ASoC SST Platform Drivers. If you have a Intel machine that
0009 has an audio controller with a DSP and I2S or DMIC port, then
0010 enable this option by saying Y
0011
0012 Note that the answer to this question doesn't directly affect the
0013 kernel: saying N will just cause the configurator to skip all
0014 the questions about Intel SST drivers.
0015
0016 if SND_SOC_INTEL_SST_TOPLEVEL
0017
0018 config SND_SOC_INTEL_SST
0019 tristate
0020
0021 config SND_SOC_INTEL_CATPT
0022 tristate "Haswell and Broadwell"
0023 depends on ACPI || COMPILE_TEST
0024 depends on DMADEVICES && SND_DMA_SGBUF
0025 select DW_DMAC_CORE
0026 select SND_SOC_ACPI_INTEL_MATCH
0027 select WANT_DEV_COREDUMP
0028 select SND_INTEL_DSP_CONFIG
0029 help
0030 Enable support for Intel(R) Haswell and Broadwell platforms
0031 with I2S codec present. This is a recommended option.
0032 Say Y or m if you have such device.
0033 If unsure, say N.
0034
0035 config SND_SOC_INTEL_HASWELL
0036 tristate
0037 select SND_SOC_INTEL_CATPT
0038
0039 config SND_SST_ATOM_HIFI2_PLATFORM
0040 tristate
0041 select SND_SOC_COMPRESS
0042
0043 config SND_SST_ATOM_HIFI2_PLATFORM_PCI
0044 tristate "PCI HiFi2 (Merrifield) Platforms"
0045 depends on X86 && PCI
0046 select SND_SST_ATOM_HIFI2_PLATFORM
0047 help
0048 If you have a Intel Merrifield/Edison platform, then
0049 enable this option by saying Y or m. Distros will typically not
0050 enable this option: while Merrifield/Edison can run a mainline
0051 kernel with limited functionality it will require a firmware file
0052 which is not in the standard firmware tree
0053
0054 config SND_SST_ATOM_HIFI2_PLATFORM_ACPI
0055 tristate "ACPI HiFi2 (Baytrail, Cherrytrail) Platforms"
0056 default ACPI
0057 depends on X86 && ACPI && PCI
0058 select SND_SST_ATOM_HIFI2_PLATFORM
0059 select SND_SOC_ACPI_INTEL_MATCH
0060 select SND_INTEL_DSP_CONFIG
0061 select IOSF_MBI
0062 help
0063 If you have a Intel Baytrail or Cherrytrail platform with an I2S
0064 codec, then enable this option by saying Y or m. This is a
0065 recommended option
0066 This option is mutually exclusive with the SOF support on
0067 Baytrail/Cherrytrail. If you want to enable SOF on
0068 Baytrail/Cherrytrail, you need to deselect this option first.
0069
0070 config SND_SOC_INTEL_SKYLAKE
0071 tristate "All Skylake/SST Platforms"
0072 depends on PCI && ACPI
0073 depends on COMMON_CLK
0074 select SND_SOC_INTEL_SKL
0075 select SND_SOC_INTEL_APL
0076 select SND_SOC_INTEL_KBL
0077 select SND_SOC_INTEL_GLK
0078 select SND_SOC_INTEL_CNL
0079 select SND_SOC_INTEL_CFL
0080 help
0081 This is a backwards-compatible option to select all devices
0082 supported by the Intel SST/Skylake driver. This option is no
0083 longer recommended and will be deprecated when the SOF
0084 driver is introduced. Distributions should explicitly
0085 select which platform uses this driver.
0086
0087 config SND_SOC_INTEL_SKL
0088 tristate "Skylake Platforms"
0089 depends on PCI && ACPI
0090 depends on COMMON_CLK
0091 select SND_SOC_INTEL_SKYLAKE_FAMILY
0092 help
0093 If you have a Intel Skylake platform with the DSP enabled
0094 in the BIOS then enable this option by saying Y or m.
0095
0096 config SND_SOC_INTEL_APL
0097 tristate "Broxton/ApolloLake Platforms"
0098 depends on PCI && ACPI
0099 depends on COMMON_CLK
0100 select SND_SOC_INTEL_SKYLAKE_FAMILY
0101 help
0102 If you have a Intel Broxton/ApolloLake platform with the DSP
0103 enabled in the BIOS then enable this option by saying Y or m.
0104
0105 config SND_SOC_INTEL_KBL
0106 tristate "Kabylake Platforms"
0107 depends on PCI && ACPI
0108 depends on COMMON_CLK
0109 select SND_SOC_INTEL_SKYLAKE_FAMILY
0110 help
0111 If you have a Intel Kabylake platform with the DSP
0112 enabled in the BIOS then enable this option by saying Y or m.
0113
0114 config SND_SOC_INTEL_GLK
0115 tristate "GeminiLake Platforms"
0116 depends on PCI && ACPI
0117 depends on COMMON_CLK
0118 select SND_SOC_INTEL_SKYLAKE_FAMILY
0119 help
0120 If you have a Intel GeminiLake platform with the DSP
0121 enabled in the BIOS then enable this option by saying Y or m.
0122
0123 config SND_SOC_INTEL_CNL
0124 tristate "CannonLake/WhiskyLake Platforms"
0125 depends on PCI && ACPI
0126 depends on COMMON_CLK
0127 select SND_SOC_INTEL_SKYLAKE_FAMILY
0128 help
0129 If you have a Intel CNL/WHL platform with the DSP
0130 enabled in the BIOS then enable this option by saying Y or m.
0131
0132 config SND_SOC_INTEL_CFL
0133 tristate "CoffeeLake Platforms"
0134 depends on PCI && ACPI
0135 depends on COMMON_CLK
0136 select SND_SOC_INTEL_SKYLAKE_FAMILY
0137 help
0138 If you have a Intel CoffeeLake platform with the DSP
0139 enabled in the BIOS then enable this option by saying Y or m.
0140
0141 config SND_SOC_INTEL_CML_H
0142 tristate "CometLake-H Platforms"
0143 depends on PCI && ACPI
0144 depends on COMMON_CLK
0145 select SND_SOC_INTEL_SKYLAKE_FAMILY
0146 help
0147 If you have a Intel CometLake-H platform with the DSP
0148 enabled in the BIOS then enable this option by saying Y or m.
0149
0150 config SND_SOC_INTEL_CML_LP
0151 tristate "CometLake-LP Platforms"
0152 depends on PCI && ACPI
0153 depends on COMMON_CLK
0154 select SND_SOC_INTEL_SKYLAKE_FAMILY
0155 help
0156 If you have a Intel CometLake-LP platform with the DSP
0157 enabled in the BIOS then enable this option by saying Y or m.
0158
0159 config SND_SOC_INTEL_SKYLAKE_FAMILY
0160 tristate
0161 select SND_SOC_INTEL_SKYLAKE_COMMON
0162
0163 if SND_SOC_INTEL_SKYLAKE_FAMILY
0164
0165 config SND_SOC_INTEL_SKYLAKE_SSP_CLK
0166 tristate
0167
0168 config SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
0169 bool "HDAudio codec support"
0170 help
0171 If you have Intel Skylake or Kabylake with HDAudio codec
0172 and DMIC present then enable this option by saying Y.
0173
0174 config SND_SOC_INTEL_SKYLAKE_COMMON
0175 tristate
0176 select SND_HDA_EXT_CORE
0177 select SND_HDA_DSP_LOADER
0178 select SND_SOC_TOPOLOGY
0179 select SND_SOC_INTEL_SST
0180 select SND_SOC_HDAC_HDA if SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
0181 select SND_SOC_ACPI_INTEL_MATCH
0182 select SND_INTEL_DSP_CONFIG
0183 help
0184 If you have a Intel Skylake/Broxton/ApolloLake/KabyLake/
0185 GeminiLake or CannonLake platform with the DSP enabled in the BIOS
0186 then enable this option by saying Y or m.
0187
0188 endif ## SND_SOC_INTEL_SKYLAKE_FAMILY
0189
0190 endif ## SND_SOC_INTEL_SST_TOPLEVEL
0191
0192 if SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
0193
0194 config SND_SOC_ACPI_INTEL_MATCH
0195 tristate
0196 select SND_SOC_ACPI if ACPI
0197 # this option controls the compilation of ACPI matching tables and
0198 # helpers and is not meant to be selected by the user.
0199
0200 endif ## SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
0201
0202 config SND_SOC_INTEL_KEEMBAY
0203 tristate "Keembay Platforms"
0204 depends on ARCH_KEEMBAY || COMPILE_TEST
0205 depends on COMMON_CLK
0206 select SND_DMAENGINE_PCM
0207 select SND_SOC_GENERIC_DMAENGINE_PCM
0208 help
0209 If you have a Intel Keembay platform then enable this option
0210 by saying Y or m.
0211
0212 config SND_SOC_INTEL_AVS
0213 tristate "Intel AVS driver"
0214 depends on X86 || COMPILE_TEST
0215 depends on PCI
0216 depends on COMMON_CLK
0217 select SND_SOC_ACPI if ACPI
0218 select SND_SOC_TOPOLOGY
0219 select SND_SOC_HDA
0220 select SND_HDA_EXT_CORE
0221 select SND_HDA_DSP_LOADER
0222 select SND_INTEL_DSP_CONFIG
0223 select WANT_DEV_COREDUMP
0224 help
0225 Enable support for Intel(R) cAVS 1.5 platforms with DSP
0226 capabilities. This includes Skylake, Kabylake, Amberlake and
0227 Apollolake.
0228
0229 # Machine board drivers
0230 source "sound/soc/intel/avs/boards/Kconfig"
0231
0232 # ASoC codec drivers
0233 source "sound/soc/intel/boards/Kconfig"