mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/
synced 2026-04-17 22:23:45 -04:00
For distributions, we need one place where we can decide which driver will be activated for the auto-configation of the Intel's HDA hardware with DSP. Actually, we cover three drivers: * Legacy HDA * Intel SST * Intel Sound Open Firmware (SOF) All those drivers registers similar PCI IDs, so the first driver probed from the PCI stack can win. But... it is not guaranteed that the correct driver wins. This commit changes Intel's NHLT ACPI module to a common DSP probe module for the Intel's hardware. All above sound drivers calls this code. The user can force another behaviour using the module parameter 'dsp_driver' located in the 'snd-intel-dspcfg' module. This change allows to add specific dmi checks for the specific systems. The examples are taken from the pull request: https://github.com/thesofproject/linux/pull/927 Tested on Lenovo Carbon X1 7th gen. Signed-off-by: Jaroslav Kysela <perex@perex.cz> Tested-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Link: https://lore.kernel.org/r/20191022174313.29087-1-perex@perex.cz Signed-off-by: Takashi Iwai <tiwai@suse.de>
297 lines
8.7 KiB
Plaintext
297 lines
8.7 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
config SND_SOC_SOF_INTEL_TOPLEVEL
|
|
bool "SOF support for Intel audio DSPs"
|
|
depends on X86 || COMPILE_TEST
|
|
help
|
|
This adds support for Sound Open Firmware for Intel(R) platforms.
|
|
Say Y if you have such a device.
|
|
If unsure select "N".
|
|
|
|
if SND_SOC_SOF_INTEL_TOPLEVEL
|
|
|
|
config SND_SOC_SOF_INTEL_ACPI
|
|
tristate
|
|
select SND_SOC_SOF_BAYTRAIL if SND_SOC_SOF_BAYTRAIL_SUPPORT
|
|
select SND_SOC_SOF_BROADWELL if SND_SOC_SOF_BROADWELL_SUPPORT
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_INTEL_PCI
|
|
tristate
|
|
select SND_SOC_SOF_MERRIFIELD if SND_SOC_SOF_MERRIFIELD_SUPPORT
|
|
select SND_SOC_SOF_APOLLOLAKE if SND_SOC_SOF_APOLLOLAKE_SUPPORT
|
|
select SND_SOC_SOF_GEMINILAKE if SND_SOC_SOF_GEMINILAKE_SUPPORT
|
|
select SND_SOC_SOF_CANNONLAKE if SND_SOC_SOF_CANNONLAKE_SUPPORT
|
|
select SND_SOC_SOF_COFFEELAKE if SND_SOC_SOF_COFFEELAKE_SUPPORT
|
|
select SND_SOC_SOF_ICELAKE if SND_SOC_SOF_ICELAKE_SUPPORT
|
|
select SND_SOC_SOF_COMETLAKE_LP if SND_SOC_SOF_COMETLAKE_LP_SUPPORT
|
|
select SND_SOC_SOF_COMETLAKE_H if SND_SOC_SOF_COMETLAKE_H_SUPPORT
|
|
select SND_SOC_SOF_TIGERLAKE if SND_SOC_SOF_TIGERLAKE_SUPPORT
|
|
select SND_SOC_SOF_ELKHARTLAKE if SND_SOC_SOF_ELKHARTLAKE_SUPPORT
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_INTEL_HIFI_EP_IPC
|
|
tristate
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_INTEL_ATOM_HIFI_EP
|
|
tristate
|
|
select SND_SOC_SOF_INTEL_COMMON
|
|
select SND_SOC_SOF_INTEL_HIFI_EP_IPC
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_INTEL_COMMON
|
|
tristate
|
|
select SND_SOC_ACPI_INTEL_MATCH
|
|
select SND_SOC_SOF_XTENSA
|
|
select SND_SOC_INTEL_MACH
|
|
select SND_SOC_ACPI if ACPI
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
if SND_SOC_SOF_INTEL_ACPI
|
|
|
|
config SND_SOC_SOF_BAYTRAIL_SUPPORT
|
|
bool "SOF support for Baytrail, Braswell and Cherrytrail"
|
|
help
|
|
This adds support for Sound Open Firmware for Intel(R) platforms
|
|
using the Baytrail, Braswell or Cherrytrail processors.
|
|
Say Y if you have such a device.
|
|
If unsure select "N".
|
|
|
|
config SND_SOC_SOF_BAYTRAIL
|
|
tristate
|
|
select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_BROADWELL_SUPPORT
|
|
bool "SOF support for Broadwell"
|
|
help
|
|
This adds support for Sound Open Firmware for Intel(R) platforms
|
|
using the Broadwell processors.
|
|
Say Y if you have such a device.
|
|
If unsure select "N".
|
|
|
|
config SND_SOC_SOF_BROADWELL
|
|
tristate
|
|
select SND_SOC_SOF_INTEL_COMMON
|
|
select SND_SOC_SOF_INTEL_HIFI_EP_IPC
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
endif ## SND_SOC_SOF_INTEL_ACPI
|
|
|
|
if SND_SOC_SOF_INTEL_PCI
|
|
|
|
config SND_SOC_SOF_MERRIFIELD_SUPPORT
|
|
bool "SOF support for Tangier/Merrifield"
|
|
help
|
|
This adds support for Sound Open Firmware for Intel(R) platforms
|
|
using the Tangier/Merrifield processors.
|
|
Say Y if you have such a device.
|
|
If unsure select "N".
|
|
|
|
config SND_SOC_SOF_MERRIFIELD
|
|
tristate
|
|
select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_APOLLOLAKE_SUPPORT
|
|
bool "SOF support for Apollolake"
|
|
help
|
|
This adds support for Sound Open Firmware for Intel(R) platforms
|
|
using the Apollolake processors.
|
|
Say Y if you have such a device.
|
|
If unsure select "N".
|
|
|
|
config SND_SOC_SOF_APOLLOLAKE
|
|
tristate
|
|
select SND_SOC_SOF_HDA_COMMON
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_GEMINILAKE_SUPPORT
|
|
bool "SOF support for GeminiLake"
|
|
help
|
|
This adds support for Sound Open Firmware for Intel(R) platforms
|
|
using the Geminilake processors.
|
|
Say Y if you have such a device.
|
|
If unsure select "N".
|
|
|
|
config SND_SOC_SOF_GEMINILAKE
|
|
tristate
|
|
select SND_SOC_SOF_HDA_COMMON
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_CANNONLAKE_SUPPORT
|
|
bool "SOF support for Cannonlake"
|
|
help
|
|
This adds support for Sound Open Firmware for Intel(R) platforms
|
|
using the Cannonlake processors.
|
|
Say Y if you have such a device.
|
|
If unsure select "N".
|
|
|
|
config SND_SOC_SOF_CANNONLAKE
|
|
tristate
|
|
select SND_SOC_SOF_HDA_COMMON
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_COFFEELAKE_SUPPORT
|
|
bool "SOF support for CoffeeLake"
|
|
help
|
|
This adds support for Sound Open Firmware for Intel(R) platforms
|
|
using the Coffeelake processors.
|
|
Say Y if you have such a device.
|
|
If unsure select "N".
|
|
|
|
config SND_SOC_SOF_COFFEELAKE
|
|
tristate
|
|
select SND_SOC_SOF_HDA_COMMON
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_ICELAKE_SUPPORT
|
|
bool "SOF support for Icelake"
|
|
help
|
|
This adds support for Sound Open Firmware for Intel(R) platforms
|
|
using the Icelake processors.
|
|
Say Y if you have such a device.
|
|
If unsure select "N".
|
|
|
|
config SND_SOC_SOF_ICELAKE
|
|
tristate
|
|
select SND_SOC_SOF_HDA_COMMON
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_COMETLAKE_LP
|
|
tristate
|
|
select SND_SOC_SOF_HDA_COMMON
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_COMETLAKE_LP_SUPPORT
|
|
bool "SOF support for CometLake-LP"
|
|
help
|
|
This adds support for Sound Open Firmware for Intel(R) platforms
|
|
using the Cometlake-LP processors.
|
|
Say Y if you have such a device.
|
|
If unsure select "N".
|
|
|
|
config SND_SOC_SOF_COMETLAKE_H
|
|
tristate
|
|
select SND_SOC_SOF_HDA_COMMON
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_COMETLAKE_H_SUPPORT
|
|
bool "SOF support for CometLake-H"
|
|
help
|
|
This adds support for Sound Open Firmware for Intel(R) platforms
|
|
using the Cometlake-H processors.
|
|
Say Y if you have such a device.
|
|
If unsure select "N".
|
|
|
|
config SND_SOC_SOF_TIGERLAKE_SUPPORT
|
|
bool "SOF support for Tigerlake"
|
|
help
|
|
This adds support for Sound Open Firmware for Intel(R) platforms
|
|
using the Tigerlake processors.
|
|
Say Y if you have such a device.
|
|
If unsure select "N".
|
|
|
|
config SND_SOC_SOF_TIGERLAKE
|
|
tristate
|
|
select SND_SOC_SOF_HDA_COMMON
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_ELKHARTLAKE_SUPPORT
|
|
bool "SOF support for ElkhartLake"
|
|
help
|
|
This adds support for Sound Open Firmware for Intel(R) platforms
|
|
using the ElkhartLake processors.
|
|
Say Y if you have such a device.
|
|
If unsure select "N".
|
|
|
|
config SND_SOC_SOF_ELKHARTLAKE
|
|
tristate
|
|
select SND_SOC_SOF_HDA_COMMON
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_HDA_COMMON
|
|
tristate
|
|
select SND_SOC_SOF_INTEL_COMMON
|
|
select SND_SOC_SOF_HDA_LINK_BASELINE
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
if SND_SOC_SOF_HDA_COMMON
|
|
|
|
config SND_SOC_SOF_HDA_LINK
|
|
bool "SOF support for HDA Links(HDA/HDMI)"
|
|
depends on SND_SOC_SOF_NOCODEC=n
|
|
select SND_SOC_SOF_PROBE_WORK_QUEUE
|
|
help
|
|
This adds support for HDA links(HDA/HDMI) with Sound Open Firmware
|
|
for Intel(R) platforms.
|
|
Say Y if you want to enable HDA links with SOF.
|
|
If unsure select "N".
|
|
|
|
config SND_SOC_SOF_HDA_AUDIO_CODEC
|
|
bool "SOF support for HDAudio codecs"
|
|
depends on SND_SOC_SOF_HDA_LINK
|
|
help
|
|
This adds support for HDAudio codecs with Sound Open Firmware
|
|
for Intel(R) platforms.
|
|
Say Y if you want to enable HDAudio codecs with SOF.
|
|
If unsure select "N".
|
|
|
|
endif ## SND_SOC_SOF_HDA_COMMON
|
|
|
|
config SND_SOC_SOF_HDA_LINK_BASELINE
|
|
tristate
|
|
select SND_SOC_SOF_HDA if SND_SOC_SOF_HDA_LINK
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
config SND_SOC_SOF_HDA
|
|
tristate
|
|
select SND_HDA_EXT_CORE if SND_SOC_SOF_HDA_LINK
|
|
select SND_SOC_HDAC_HDA if SND_SOC_SOF_HDA_AUDIO_CODEC
|
|
select SND_INTEL_DSP_CONFIG
|
|
help
|
|
This option is not user-selectable but automagically handled by
|
|
'select' statements at a higher level
|
|
|
|
endif ## SND_SOC_SOF_INTEL_PCI
|
|
|
|
endif ## SND_SOC_SOF_INTEL_TOPLEVEL
|