18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_SST_TOPLEVEL
38c2ecf20Sopenharmony_ci	bool "Intel ASoC SST drivers"
48c2ecf20Sopenharmony_ci	default y
58c2ecf20Sopenharmony_ci	depends on X86 || COMPILE_TEST
68c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_MACH
78c2ecf20Sopenharmony_ci	help
88c2ecf20Sopenharmony_ci	  Intel ASoC SST Platform Drivers. If you have a Intel machine that
98c2ecf20Sopenharmony_ci	  has an audio controller with a DSP and I2S or DMIC port, then
108c2ecf20Sopenharmony_ci	  enable this option by saying Y
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ci	  Note that the answer to this question doesn't directly affect the
138c2ecf20Sopenharmony_ci	  kernel: saying N will just cause the configurator to skip all
148c2ecf20Sopenharmony_ci	  the questions about Intel SST drivers.
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ciif SND_SOC_INTEL_SST_TOPLEVEL
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_SST
198c2ecf20Sopenharmony_ci	tristate
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_CATPT
228c2ecf20Sopenharmony_ci	tristate "Haswell and Broadwell"
238c2ecf20Sopenharmony_ci	depends on ACPI || COMPILE_TEST
248c2ecf20Sopenharmony_ci	depends on DMADEVICES && SND_DMA_SGBUF
258c2ecf20Sopenharmony_ci	select DW_DMAC_CORE
268c2ecf20Sopenharmony_ci	select SND_SOC_ACPI_INTEL_MATCH
278c2ecf20Sopenharmony_ci	help
288c2ecf20Sopenharmony_ci	  Enable support for Intel(R) Haswell and Broadwell platforms
298c2ecf20Sopenharmony_ci	  with I2S codec present. This is a recommended option.
308c2ecf20Sopenharmony_ci	  Say Y or m if you have such device.
318c2ecf20Sopenharmony_ci	  If unsure, say N.
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_HASWELL
348c2ecf20Sopenharmony_ci	tristate
358c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_CATPT
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ciconfig SND_SST_ATOM_HIFI2_PLATFORM
388c2ecf20Sopenharmony_ci	tristate
398c2ecf20Sopenharmony_ci	select SND_SOC_COMPRESS
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ciconfig SND_SST_ATOM_HIFI2_PLATFORM_PCI
428c2ecf20Sopenharmony_ci	tristate "PCI HiFi2 (Merrifield) Platforms"
438c2ecf20Sopenharmony_ci	depends on X86 && PCI
448c2ecf20Sopenharmony_ci	select SND_SST_ATOM_HIFI2_PLATFORM
458c2ecf20Sopenharmony_ci	help
468c2ecf20Sopenharmony_ci	  If you have a Intel Merrifield/Edison platform, then
478c2ecf20Sopenharmony_ci	  enable this option by saying Y or m. Distros will typically not
488c2ecf20Sopenharmony_ci	  enable this option: while Merrifield/Edison can run a mainline
498c2ecf20Sopenharmony_ci	  kernel with limited functionality it will require a firmware file
508c2ecf20Sopenharmony_ci	  which is not in the standard firmware tree
518c2ecf20Sopenharmony_ci
528c2ecf20Sopenharmony_ciconfig SND_SST_ATOM_HIFI2_PLATFORM_ACPI
538c2ecf20Sopenharmony_ci	tristate "ACPI HiFi2 (Baytrail, Cherrytrail) Platforms"
548c2ecf20Sopenharmony_ci	default ACPI
558c2ecf20Sopenharmony_ci	depends on X86 && ACPI && PCI
568c2ecf20Sopenharmony_ci	select SND_SST_ATOM_HIFI2_PLATFORM
578c2ecf20Sopenharmony_ci	select SND_SOC_ACPI_INTEL_MATCH
588c2ecf20Sopenharmony_ci	select IOSF_MBI
598c2ecf20Sopenharmony_ci	help
608c2ecf20Sopenharmony_ci	  If you have a Intel Baytrail or Cherrytrail platform with an I2S
618c2ecf20Sopenharmony_ci	  codec, then enable this option by saying Y or m. This is a
628c2ecf20Sopenharmony_ci	  recommended option
638c2ecf20Sopenharmony_ci	  This option is mutually exclusive with the SOF support on
648c2ecf20Sopenharmony_ci	  Baytrail/Cherrytrail. If you want to enable SOF on
658c2ecf20Sopenharmony_ci	  Baytrail/Cherrytrail, you need to deselect this option first.
668c2ecf20Sopenharmony_ci
678c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_SKYLAKE
688c2ecf20Sopenharmony_ci	tristate "All Skylake/SST Platforms"
698c2ecf20Sopenharmony_ci	depends on PCI && ACPI
708c2ecf20Sopenharmony_ci	depends on COMMON_CLK
718c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_SKL
728c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_APL
738c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_KBL
748c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_GLK
758c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_CNL
768c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_CFL
778c2ecf20Sopenharmony_ci	help
788c2ecf20Sopenharmony_ci	  This is a backwards-compatible option to select all devices
798c2ecf20Sopenharmony_ci	  supported by the Intel SST/Skylake driver. This option is no
808c2ecf20Sopenharmony_ci	  longer recommended and will be deprecated when the SOF
818c2ecf20Sopenharmony_ci	  driver is introduced.  Distributions should explicitly
828c2ecf20Sopenharmony_ci	  select which platform uses this driver.
838c2ecf20Sopenharmony_ci
848c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_SKL
858c2ecf20Sopenharmony_ci	tristate "Skylake Platforms"
868c2ecf20Sopenharmony_ci	depends on PCI && ACPI
878c2ecf20Sopenharmony_ci	depends on COMMON_CLK
888c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_SKYLAKE_FAMILY
898c2ecf20Sopenharmony_ci	help
908c2ecf20Sopenharmony_ci	  If you have a Intel Skylake platform with the DSP enabled
918c2ecf20Sopenharmony_ci	  in the BIOS then enable this option by saying Y or m.
928c2ecf20Sopenharmony_ci
938c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_APL
948c2ecf20Sopenharmony_ci	tristate "Broxton/ApolloLake Platforms"
958c2ecf20Sopenharmony_ci	depends on PCI && ACPI
968c2ecf20Sopenharmony_ci	depends on COMMON_CLK
978c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_SKYLAKE_FAMILY
988c2ecf20Sopenharmony_ci	help
998c2ecf20Sopenharmony_ci	  If you have a Intel Broxton/ApolloLake platform with the DSP
1008c2ecf20Sopenharmony_ci	  enabled in the BIOS then enable this option by saying Y or m.
1018c2ecf20Sopenharmony_ci
1028c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_KBL
1038c2ecf20Sopenharmony_ci	tristate "Kabylake Platforms"
1048c2ecf20Sopenharmony_ci	depends on PCI && ACPI
1058c2ecf20Sopenharmony_ci	depends on COMMON_CLK
1068c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_SKYLAKE_FAMILY
1078c2ecf20Sopenharmony_ci	help
1088c2ecf20Sopenharmony_ci	  If you have a Intel Kabylake platform with the DSP
1098c2ecf20Sopenharmony_ci	  enabled in the BIOS then enable this option by saying Y or m.
1108c2ecf20Sopenharmony_ci
1118c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_GLK
1128c2ecf20Sopenharmony_ci	tristate "GeminiLake Platforms"
1138c2ecf20Sopenharmony_ci	depends on PCI && ACPI
1148c2ecf20Sopenharmony_ci	depends on COMMON_CLK
1158c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_SKYLAKE_FAMILY
1168c2ecf20Sopenharmony_ci	help
1178c2ecf20Sopenharmony_ci	  If you have a Intel GeminiLake platform with the DSP
1188c2ecf20Sopenharmony_ci	  enabled in the BIOS then enable this option by saying Y or m.
1198c2ecf20Sopenharmony_ci
1208c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_CNL
1218c2ecf20Sopenharmony_ci	tristate "CannonLake/WhiskyLake Platforms"
1228c2ecf20Sopenharmony_ci	depends on PCI && ACPI
1238c2ecf20Sopenharmony_ci	depends on COMMON_CLK
1248c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_SKYLAKE_FAMILY
1258c2ecf20Sopenharmony_ci	help
1268c2ecf20Sopenharmony_ci	  If you have a Intel CNL/WHL platform with the DSP
1278c2ecf20Sopenharmony_ci	  enabled in the BIOS then enable this option by saying Y or m.
1288c2ecf20Sopenharmony_ci
1298c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_CFL
1308c2ecf20Sopenharmony_ci	tristate "CoffeeLake Platforms"
1318c2ecf20Sopenharmony_ci	depends on PCI && ACPI
1328c2ecf20Sopenharmony_ci	depends on COMMON_CLK
1338c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_SKYLAKE_FAMILY
1348c2ecf20Sopenharmony_ci	help
1358c2ecf20Sopenharmony_ci	  If you have a Intel CoffeeLake platform with the DSP
1368c2ecf20Sopenharmony_ci	  enabled in the BIOS then enable this option by saying Y or m.
1378c2ecf20Sopenharmony_ci
1388c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_CML_H
1398c2ecf20Sopenharmony_ci	tristate "CometLake-H Platforms"
1408c2ecf20Sopenharmony_ci	depends on PCI && ACPI
1418c2ecf20Sopenharmony_ci	depends on COMMON_CLK
1428c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_SKYLAKE_FAMILY
1438c2ecf20Sopenharmony_ci	help
1448c2ecf20Sopenharmony_ci	  If you have a Intel CometLake-H platform with the DSP
1458c2ecf20Sopenharmony_ci	  enabled in the BIOS then enable this option by saying Y or m.
1468c2ecf20Sopenharmony_ci
1478c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_CML_LP
1488c2ecf20Sopenharmony_ci	tristate "CometLake-LP Platforms"
1498c2ecf20Sopenharmony_ci	depends on PCI && ACPI
1508c2ecf20Sopenharmony_ci	depends on COMMON_CLK
1518c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_SKYLAKE_FAMILY
1528c2ecf20Sopenharmony_ci	help
1538c2ecf20Sopenharmony_ci	  If you have a Intel CometLake-LP platform with the DSP
1548c2ecf20Sopenharmony_ci	  enabled in the BIOS then enable this option by saying Y or m.
1558c2ecf20Sopenharmony_ci
1568c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_SKYLAKE_FAMILY
1578c2ecf20Sopenharmony_ci	tristate
1588c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_SKYLAKE_COMMON
1598c2ecf20Sopenharmony_ci
1608c2ecf20Sopenharmony_ciif SND_SOC_INTEL_SKYLAKE_FAMILY
1618c2ecf20Sopenharmony_ci
1628c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_SKYLAKE_SSP_CLK
1638c2ecf20Sopenharmony_ci	tristate
1648c2ecf20Sopenharmony_ci
1658c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
1668c2ecf20Sopenharmony_ci	bool "HDAudio codec support"
1678c2ecf20Sopenharmony_ci	help
1688c2ecf20Sopenharmony_ci	  If you have Intel Skylake or Kabylake with HDAudio codec
1698c2ecf20Sopenharmony_ci	  and DMIC present then enable this option by saying Y.
1708c2ecf20Sopenharmony_ci
1718c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_SKYLAKE_COMMON
1728c2ecf20Sopenharmony_ci	tristate
1738c2ecf20Sopenharmony_ci	select SND_HDA_EXT_CORE
1748c2ecf20Sopenharmony_ci	select SND_HDA_DSP_LOADER
1758c2ecf20Sopenharmony_ci	select SND_SOC_TOPOLOGY
1768c2ecf20Sopenharmony_ci	select SND_SOC_INTEL_SST
1778c2ecf20Sopenharmony_ci	select SND_SOC_HDAC_HDA if SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
1788c2ecf20Sopenharmony_ci	select SND_SOC_ACPI_INTEL_MATCH
1798c2ecf20Sopenharmony_ci	select SND_INTEL_DSP_CONFIG
1808c2ecf20Sopenharmony_ci	help
1818c2ecf20Sopenharmony_ci	  If you have a Intel Skylake/Broxton/ApolloLake/KabyLake/
1828c2ecf20Sopenharmony_ci	  GeminiLake or CannonLake platform with the DSP enabled in the BIOS
1838c2ecf20Sopenharmony_ci	  then enable this option by saying Y or m.
1848c2ecf20Sopenharmony_ci
1858c2ecf20Sopenharmony_ciendif ## SND_SOC_INTEL_SKYLAKE_FAMILY
1868c2ecf20Sopenharmony_ci
1878c2ecf20Sopenharmony_ciendif ## SND_SOC_INTEL_SST_TOPLEVEL
1888c2ecf20Sopenharmony_ci
1898c2ecf20Sopenharmony_ciif SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
1908c2ecf20Sopenharmony_ci
1918c2ecf20Sopenharmony_ciconfig SND_SOC_ACPI_INTEL_MATCH
1928c2ecf20Sopenharmony_ci	tristate
1938c2ecf20Sopenharmony_ci	select SND_SOC_ACPI if ACPI
1948c2ecf20Sopenharmony_ci	# this option controls the compilation of ACPI matching tables and
1958c2ecf20Sopenharmony_ci	# helpers and is not meant to be selected by the user.
1968c2ecf20Sopenharmony_ci
1978c2ecf20Sopenharmony_ciendif ## SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
1988c2ecf20Sopenharmony_ci
1998c2ecf20Sopenharmony_ciconfig SND_SOC_INTEL_KEEMBAY
2008c2ecf20Sopenharmony_ci	tristate "Keembay Platforms"
2018c2ecf20Sopenharmony_ci	depends on ARCH_KEEMBAY || COMPILE_TEST
2028c2ecf20Sopenharmony_ci	depends on COMMON_CLK
2038c2ecf20Sopenharmony_ci	help
2048c2ecf20Sopenharmony_ci	  If you have a Intel Keembay platform then enable this option
2058c2ecf20Sopenharmony_ci	  by saying Y or m.
2068c2ecf20Sopenharmony_ci
2078c2ecf20Sopenharmony_ci# ASoC codec drivers
2088c2ecf20Sopenharmony_cisource "sound/soc/intel/boards/Kconfig"
209