forked from Minki/linux
82d9d54a6c
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>
35 lines
639 B
C
35 lines
639 B
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/*
|
|
* intel-dsp-config.h - Intel DSP config
|
|
*
|
|
* Copyright (c) 2019 Jaroslav Kysela <perex@perex.cz>
|
|
*/
|
|
|
|
#ifndef __INTEL_DSP_CONFIG_H__
|
|
#define __INTEL_DSP_CONFIG_H__
|
|
|
|
struct pci_dev;
|
|
|
|
enum {
|
|
SND_INTEL_DSP_DRIVER_ANY = 0,
|
|
SND_INTEL_DSP_DRIVER_LEGACY,
|
|
SND_INTEL_DSP_DRIVER_SST,
|
|
SND_INTEL_DSP_DRIVER_SOF,
|
|
SND_INTEL_DSP_DRIVER_LAST = SND_INTEL_DSP_DRIVER_SOF
|
|
};
|
|
|
|
#if IS_ENABLED(CONFIG_SND_INTEL_DSP_CONFIG)
|
|
|
|
int snd_intel_dsp_driver_probe(struct pci_dev *pci);
|
|
|
|
#else
|
|
|
|
static inline int snd_intel_dsp_driver_probe(struct pci_dev *pci)
|
|
{
|
|
return SND_INTEL_DSP_DRIVER_ANY;
|
|
}
|
|
|
|
#endif
|
|
|
|
#endif
|