2019-05-19 19:07:45 +07:00
|
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
2018-01-05 05:35:53 +07:00
|
|
|
config SND_SOC_INTEL_SST_TOPLEVEL
|
|
|
|
bool "Intel ASoC SST drivers"
|
|
|
|
default y
|
|
|
|
depends on X86 || COMPILE_TEST
|
|
|
|
select SND_SOC_INTEL_MACH
|
|
|
|
help
|
|
|
|
Intel ASoC SST Platform Drivers. If you have a Intel machine that
|
|
|
|
has an audio controller with a DSP and I2S or DMIC port, then
|
|
|
|
enable this option by saying Y
|
|
|
|
|
|
|
|
Note that the answer to this question doesn't directly affect the
|
|
|
|
kernel: saying N will just cause the configurator to skip all
|
|
|
|
the questions about Intel SST drivers.
|
|
|
|
|
|
|
|
if SND_SOC_INTEL_SST_TOPLEVEL
|
|
|
|
|
2014-10-16 21:30:19 +07:00
|
|
|
config SND_SST_IPC
|
|
|
|
tristate
|
2018-01-05 05:35:55 +07:00
|
|
|
# This option controls the IPC core for HiFi2 platforms
|
2014-10-16 21:30:19 +07:00
|
|
|
|
2014-11-04 17:55:16 +07:00
|
|
|
config SND_SST_IPC_PCI
|
|
|
|
tristate
|
|
|
|
select SND_SST_IPC
|
2018-01-05 05:35:55 +07:00
|
|
|
# This option controls the PCI-based IPC for HiFi2 platforms
|
|
|
|
# (Medfield, Merrifield).
|
2014-11-04 17:55:16 +07:00
|
|
|
|
2014-11-11 18:06:28 +07:00
|
|
|
config SND_SST_IPC_ACPI
|
|
|
|
tristate
|
|
|
|
select SND_SST_IPC
|
2018-01-05 05:35:55 +07:00
|
|
|
# This option controls the ACPI-based IPC for HiFi2 platforms
|
|
|
|
# (Baytrail, Cherrytrail)
|
|
|
|
|
|
|
|
config SND_SOC_INTEL_SST_ACPI
|
|
|
|
tristate
|
|
|
|
# This option controls ACPI-based probing on
|
|
|
|
# Haswell/Broadwell/Baytrail legacy and will be set
|
|
|
|
# when these platforms are enabled
|
2014-11-11 18:06:28 +07:00
|
|
|
|
2014-02-17 20:32:10 +07:00
|
|
|
config SND_SOC_INTEL_SST
|
2015-06-20 01:25:28 +07:00
|
|
|
tristate
|
2014-02-17 20:32:10 +07:00
|
|
|
|
2016-07-11 15:39:11 +07:00
|
|
|
config SND_SOC_INTEL_SST_FIRMWARE
|
|
|
|
tristate
|
2017-01-16 20:12:26 +07:00
|
|
|
select DW_DMAC_CORE
|
2018-01-05 05:35:55 +07:00
|
|
|
# This option controls firmware download on
|
|
|
|
# Haswell/Broadwell/Baytrail legacy and will be set
|
|
|
|
# when these platforms are enabled
|
2014-02-17 20:32:10 +07:00
|
|
|
|
2014-02-21 04:48:46 +07:00
|
|
|
config SND_SOC_INTEL_HASWELL
|
2018-01-05 05:36:01 +07:00
|
|
|
tristate "Haswell/Broadwell Platforms"
|
2018-01-05 05:35:53 +07:00
|
|
|
depends on SND_DMA_SGBUF
|
2018-01-05 05:35:54 +07:00
|
|
|
depends on DMADEVICES && ACPI
|
2017-01-16 20:12:26 +07:00
|
|
|
select SND_SOC_INTEL_SST
|
ASoC: Intel: Fix nested/unnecessary Kconfig dependencies
This patch fixes a number of issues:
1. IOSF_MBI is only needed for byt-cr detection, which is only supported
on Baytrail/Cherrytrail, move to HiFi2 config
2. SND_SOC_INTEL_SST should not select SND_SOC_INTEL_SST_ACPI, the latter
config is only valid for Haswell/Baytrail legacy but not needed by Skylake
3. SND_SST_IPC_ACPI, used only by the atom/sst driver, should not select
SND_SOC_INTEL_SST, none of the code under common/sst*.c is used
This nesting of configs really makes no sense, it's easier to maintain
if for each platform one can control what is strictly required.
Compiled-tested with each of Haswell, Baytrail legacy, HiFi2, SKL cases
selected independently. 0-day and explicit randconfig tests did not report
additional issues and no functionality loss was observed in Intel tests on
HIFI2 and SKYLAKE platforms
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-By: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2018-01-05 05:35:56 +07:00
|
|
|
select SND_SOC_INTEL_SST_ACPI
|
2016-10-10 19:33:20 +07:00
|
|
|
select SND_SOC_INTEL_SST_FIRMWARE
|
2018-01-05 05:35:53 +07:00
|
|
|
select SND_SOC_ACPI_INTEL_MATCH
|
|
|
|
help
|
|
|
|
If you have a Intel Haswell or Broadwell platform connected to
|
|
|
|
an I2S codec, then enable this option by saying Y or m. This is
|
|
|
|
typically used for Chromebooks. This is a recommended option.
|
2019-11-02 00:30:36 +07:00
|
|
|
This option is mutually exclusive with the SOF support on
|
|
|
|
Broadwell. If you want to enable SOF on Broadwell, you need to
|
|
|
|
deselect this option first.
|
2014-02-21 04:48:47 +07:00
|
|
|
|
2014-02-24 22:27:02 +07:00
|
|
|
config SND_SOC_INTEL_BAYTRAIL
|
2018-01-05 05:36:01 +07:00
|
|
|
tristate "Baytrail (legacy) Platforms"
|
2019-11-02 00:30:37 +07:00
|
|
|
depends on DMADEVICES && ACPI && SND_SST_ATOM_HIFI2_PLATFORM=n && SND_SOC_SOF_BAYTRAIL=n
|
2017-01-16 20:12:26 +07:00
|
|
|
select SND_SOC_INTEL_SST
|
ASoC: Intel: Fix nested/unnecessary Kconfig dependencies
This patch fixes a number of issues:
1. IOSF_MBI is only needed for byt-cr detection, which is only supported
on Baytrail/Cherrytrail, move to HiFi2 config
2. SND_SOC_INTEL_SST should not select SND_SOC_INTEL_SST_ACPI, the latter
config is only valid for Haswell/Baytrail legacy but not needed by Skylake
3. SND_SST_IPC_ACPI, used only by the atom/sst driver, should not select
SND_SOC_INTEL_SST, none of the code under common/sst*.c is used
This nesting of configs really makes no sense, it's easier to maintain
if for each platform one can control what is strictly required.
Compiled-tested with each of Haswell, Baytrail legacy, HiFi2, SKL cases
selected independently. 0-day and explicit randconfig tests did not report
additional issues and no functionality loss was observed in Intel tests on
HIFI2 and SKYLAKE platforms
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-By: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2018-01-05 05:35:56 +07:00
|
|
|
select SND_SOC_INTEL_SST_ACPI
|
2017-01-16 20:12:26 +07:00
|
|
|
select SND_SOC_INTEL_SST_FIRMWARE
|
2018-01-05 05:35:53 +07:00
|
|
|
select SND_SOC_ACPI_INTEL_MATCH
|
|
|
|
help
|
|
|
|
If you have a Intel Baytrail platform connected to an I2S codec,
|
|
|
|
then enable this option by saying Y or m. This was typically used
|
|
|
|
for Baytrail Chromebooks but this option is now deprecated and is
|
|
|
|
not recommended, use SND_SST_ATOM_HIFI2_PLATFORM instead.
|
2014-02-24 22:27:02 +07:00
|
|
|
|
2018-04-03 00:06:14 +07:00
|
|
|
config SND_SST_ATOM_HIFI2_PLATFORM
|
|
|
|
tristate
|
|
|
|
select SND_SOC_COMPRESS
|
|
|
|
|
2018-01-05 05:35:54 +07:00
|
|
|
config SND_SST_ATOM_HIFI2_PLATFORM_PCI
|
2018-04-03 00:06:14 +07:00
|
|
|
tristate "PCI HiFi2 (Merrifield) Platforms"
|
2018-01-05 05:35:54 +07:00
|
|
|
depends on X86 && PCI
|
|
|
|
select SND_SST_IPC_PCI
|
2018-04-03 00:06:14 +07:00
|
|
|
select SND_SST_ATOM_HIFI2_PLATFORM
|
2018-01-05 05:35:54 +07:00
|
|
|
help
|
2018-04-03 00:06:14 +07:00
|
|
|
If you have a Intel Merrifield/Edison platform, then
|
2018-01-05 05:35:54 +07:00
|
|
|
enable this option by saying Y or m. Distros will typically not
|
2018-04-03 00:06:14 +07:00
|
|
|
enable this option: while Merrifield/Edison can run a mainline
|
|
|
|
kernel with limited functionality it will require a firmware file
|
|
|
|
which is not in the standard firmware tree
|
2018-01-05 05:35:54 +07:00
|
|
|
|
2018-04-03 00:06:14 +07:00
|
|
|
config SND_SST_ATOM_HIFI2_PLATFORM_ACPI
|
2018-01-05 05:36:01 +07:00
|
|
|
tristate "ACPI HiFi2 (Baytrail, Cherrytrail) Platforms"
|
2018-04-03 00:06:14 +07:00
|
|
|
default ACPI
|
2019-01-03 01:10:35 +07:00
|
|
|
depends on X86 && ACPI && PCI
|
2018-01-05 05:35:54 +07:00
|
|
|
select SND_SST_IPC_ACPI
|
2018-04-03 00:06:14 +07:00
|
|
|
select SND_SST_ATOM_HIFI2_PLATFORM
|
2018-01-05 05:35:53 +07:00
|
|
|
select SND_SOC_ACPI_INTEL_MATCH
|
ASoC: Intel: Fix nested/unnecessary Kconfig dependencies
This patch fixes a number of issues:
1. IOSF_MBI is only needed for byt-cr detection, which is only supported
on Baytrail/Cherrytrail, move to HiFi2 config
2. SND_SOC_INTEL_SST should not select SND_SOC_INTEL_SST_ACPI, the latter
config is only valid for Haswell/Baytrail legacy but not needed by Skylake
3. SND_SST_IPC_ACPI, used only by the atom/sst driver, should not select
SND_SOC_INTEL_SST, none of the code under common/sst*.c is used
This nesting of configs really makes no sense, it's easier to maintain
if for each platform one can control what is strictly required.
Compiled-tested with each of Haswell, Baytrail legacy, HiFi2, SKL cases
selected independently. 0-day and explicit randconfig tests did not report
additional issues and no functionality loss was observed in Intel tests on
HIFI2 and SKYLAKE platforms
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-By: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2018-01-05 05:35:56 +07:00
|
|
|
select IOSF_MBI
|
2018-01-05 05:35:54 +07:00
|
|
|
help
|
|
|
|
If you have a Intel Baytrail or Cherrytrail platform with an I2S
|
|
|
|
codec, then enable this option by saying Y or m. This is a
|
|
|
|
recommended option
|
2019-11-02 00:30:35 +07:00
|
|
|
This option is mutually exclusive with the SOF support on
|
|
|
|
Baytrail/Cherrytrail. If you want to enable SOF on
|
|
|
|
Baytrail/Cherrytrail, you need to deselect this option first.
|
2017-10-13 06:49:45 +07:00
|
|
|
|
2015-07-09 16:50:10 +07:00
|
|
|
config SND_SOC_INTEL_SKYLAKE
|
2018-12-14 02:03:00 +07:00
|
|
|
tristate "All Skylake/SST Platforms"
|
2018-01-05 05:35:53 +07:00
|
|
|
depends on PCI && ACPI
|
2019-05-30 18:50:12 +07:00
|
|
|
depends on COMMON_CLK
|
2018-12-14 02:03:00 +07:00
|
|
|
select SND_SOC_INTEL_SKL
|
|
|
|
select SND_SOC_INTEL_APL
|
|
|
|
select SND_SOC_INTEL_KBL
|
|
|
|
select SND_SOC_INTEL_GLK
|
|
|
|
select SND_SOC_INTEL_CNL
|
|
|
|
select SND_SOC_INTEL_CFL
|
2018-11-19 05:38:09 +07:00
|
|
|
help
|
2019-10-04 21:49:31 +07:00
|
|
|
This is a backwards-compatible option to select all devices
|
2018-12-14 02:03:00 +07:00
|
|
|
supported by the Intel SST/Skylake driver. This option is no
|
|
|
|
longer recommended and will be deprecated when the SOF
|
|
|
|
driver is introduced. Distributions should explicitly
|
|
|
|
select which platform uses this driver.
|
|
|
|
|
|
|
|
config SND_SOC_INTEL_SKL
|
|
|
|
tristate "Skylake Platforms"
|
|
|
|
depends on PCI && ACPI
|
2019-05-30 18:50:12 +07:00
|
|
|
depends on COMMON_CLK
|
2018-12-14 02:03:00 +07:00
|
|
|
select SND_SOC_INTEL_SKYLAKE_FAMILY
|
|
|
|
help
|
|
|
|
If you have a Intel Skylake platform with the DSP enabled
|
|
|
|
in the BIOS then enable this option by saying Y or m.
|
|
|
|
|
|
|
|
config SND_SOC_INTEL_APL
|
|
|
|
tristate "Broxton/ApolloLake Platforms"
|
|
|
|
depends on PCI && ACPI
|
2019-05-30 18:50:12 +07:00
|
|
|
depends on COMMON_CLK
|
2018-12-14 02:03:00 +07:00
|
|
|
select SND_SOC_INTEL_SKYLAKE_FAMILY
|
|
|
|
help
|
|
|
|
If you have a Intel Broxton/ApolloLake platform with the DSP
|
|
|
|
enabled in the BIOS then enable this option by saying Y or m.
|
|
|
|
|
|
|
|
config SND_SOC_INTEL_KBL
|
|
|
|
tristate "Kabylake Platforms"
|
|
|
|
depends on PCI && ACPI
|
2019-05-30 18:50:12 +07:00
|
|
|
depends on COMMON_CLK
|
2018-12-14 02:03:00 +07:00
|
|
|
select SND_SOC_INTEL_SKYLAKE_FAMILY
|
|
|
|
help
|
|
|
|
If you have a Intel Kabylake platform with the DSP
|
|
|
|
enabled in the BIOS then enable this option by saying Y or m.
|
|
|
|
|
|
|
|
config SND_SOC_INTEL_GLK
|
|
|
|
tristate "GeminiLake Platforms"
|
|
|
|
depends on PCI && ACPI
|
2019-05-30 18:50:12 +07:00
|
|
|
depends on COMMON_CLK
|
2018-12-14 02:03:00 +07:00
|
|
|
select SND_SOC_INTEL_SKYLAKE_FAMILY
|
|
|
|
help
|
|
|
|
If you have a Intel GeminiLake platform with the DSP
|
|
|
|
enabled in the BIOS then enable this option by saying Y or m.
|
|
|
|
|
|
|
|
config SND_SOC_INTEL_CNL
|
|
|
|
tristate "CannonLake/WhiskyLake Platforms"
|
|
|
|
depends on PCI && ACPI
|
2019-05-30 18:50:12 +07:00
|
|
|
depends on COMMON_CLK
|
2018-12-14 02:03:00 +07:00
|
|
|
select SND_SOC_INTEL_SKYLAKE_FAMILY
|
|
|
|
help
|
|
|
|
If you have a Intel CNL/WHL platform with the DSP
|
|
|
|
enabled in the BIOS then enable this option by saying Y or m.
|
|
|
|
|
|
|
|
config SND_SOC_INTEL_CFL
|
|
|
|
tristate "CoffeeLake Platforms"
|
|
|
|
depends on PCI && ACPI
|
2019-05-30 18:50:12 +07:00
|
|
|
depends on COMMON_CLK
|
2018-12-14 02:03:00 +07:00
|
|
|
select SND_SOC_INTEL_SKYLAKE_FAMILY
|
|
|
|
help
|
|
|
|
If you have a Intel CoffeeLake platform with the DSP
|
|
|
|
enabled in the BIOS then enable this option by saying Y or m.
|
|
|
|
|
2019-05-11 05:39:29 +07:00
|
|
|
config SND_SOC_INTEL_CML_H
|
|
|
|
tristate "CometLake-H Platforms"
|
|
|
|
depends on PCI && ACPI
|
2019-05-30 18:50:12 +07:00
|
|
|
depends on COMMON_CLK
|
2019-05-11 05:39:29 +07:00
|
|
|
select SND_SOC_INTEL_SKYLAKE_FAMILY
|
|
|
|
help
|
|
|
|
If you have a Intel CometLake-H platform with the DSP
|
|
|
|
enabled in the BIOS then enable this option by saying Y or m.
|
|
|
|
|
|
|
|
config SND_SOC_INTEL_CML_LP
|
|
|
|
tristate "CometLake-LP Platforms"
|
|
|
|
depends on PCI && ACPI
|
2019-05-30 18:50:12 +07:00
|
|
|
depends on COMMON_CLK
|
2019-05-11 05:39:29 +07:00
|
|
|
select SND_SOC_INTEL_SKYLAKE_FAMILY
|
|
|
|
help
|
|
|
|
If you have a Intel CometLake-LP platform with the DSP
|
|
|
|
enabled in the BIOS then enable this option by saying Y or m.
|
|
|
|
|
2018-12-14 02:03:00 +07:00
|
|
|
config SND_SOC_INTEL_SKYLAKE_FAMILY
|
|
|
|
tristate
|
|
|
|
select SND_SOC_INTEL_SKYLAKE_COMMON
|
2018-11-19 05:38:09 +07:00
|
|
|
|
2018-12-14 02:03:00 +07:00
|
|
|
if SND_SOC_INTEL_SKYLAKE_FAMILY
|
2018-11-19 05:38:09 +07:00
|
|
|
|
|
|
|
config SND_SOC_INTEL_SKYLAKE_SSP_CLK
|
|
|
|
tristate
|
|
|
|
|
|
|
|
config SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
|
|
|
|
bool "HDAudio codec support"
|
|
|
|
help
|
2019-11-02 00:30:41 +07:00
|
|
|
This option broke audio on Linus' Skylake laptop in December 2018
|
|
|
|
and the race conditions during the probe were not fixed since.
|
|
|
|
This option is DEPRECATED, all HDaudio codec support needs
|
|
|
|
to be handled by the SOF driver.
|
|
|
|
Distributions should not enable this option and there are no known
|
|
|
|
users of this capability.
|
2018-11-19 05:38:09 +07:00
|
|
|
|
|
|
|
config SND_SOC_INTEL_SKYLAKE_COMMON
|
|
|
|
tristate
|
2015-07-09 16:50:10 +07:00
|
|
|
select SND_HDA_EXT_CORE
|
2016-03-11 11:42:56 +07:00
|
|
|
select SND_HDA_DSP_LOADER
|
2015-10-07 17:31:56 +07:00
|
|
|
select SND_SOC_TOPOLOGY
|
2015-07-09 23:08:54 +07:00
|
|
|
select SND_SOC_INTEL_SST
|
2018-11-19 05:38:09 +07:00
|
|
|
select SND_SOC_HDAC_HDA if SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC
|
2018-01-05 05:35:53 +07:00
|
|
|
select SND_SOC_ACPI_INTEL_MATCH
|
2019-10-23 00:43:12 +07:00
|
|
|
select SND_INTEL_DSP_CONFIG
|
2018-01-05 05:35:53 +07:00
|
|
|
help
|
|
|
|
If you have a Intel Skylake/Broxton/ApolloLake/KabyLake/
|
|
|
|
GeminiLake or CannonLake platform with the DSP enabled in the BIOS
|
|
|
|
then enable this option by saying Y or m.
|
|
|
|
|
2018-12-14 02:03:00 +07:00
|
|
|
endif ## SND_SOC_INTEL_SKYLAKE_FAMILY
|
2018-11-19 05:38:09 +07:00
|
|
|
|
2019-04-12 23:09:01 +07:00
|
|
|
endif ## SND_SOC_INTEL_SST_TOPLEVEL
|
|
|
|
|
|
|
|
if SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
|
|
|
|
|
2018-01-05 05:35:53 +07:00
|
|
|
config SND_SOC_ACPI_INTEL_MATCH
|
|
|
|
tristate
|
|
|
|
select SND_SOC_ACPI if ACPI
|
|
|
|
# this option controls the compilation of ACPI matching tables and
|
|
|
|
# helpers and is not meant to be selected by the user.
|
|
|
|
|
2019-04-12 23:09:01 +07:00
|
|
|
endif ## SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL_TOPLEVEL
|
|
|
|
|
2015-10-14 22:41:43 +07:00
|
|
|
|
2017-10-13 06:49:43 +07:00
|
|
|
# ASoC codec drivers
|
|
|
|
source "sound/soc/intel/boards/Kconfig"
|