diff mbox series

[v6,7/7] ASoC: Intel: Skylake: add option to control HDAudio + DSP usage

Message ID 20180816214653.11797-8-pierre-louis.bossart@linux.intel.com (mailing list archive)
State New, archived
Headers show
Series Enable HDA Codec support on Intel Platforms​ | expand

Commit Message

Pierre-Louis Bossart Aug. 16, 2018, 9:46 p.m. UTC
Add option to explicitly enable HDAudio + DSP usage.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
---
 sound/soc/intel/Kconfig       | 9 +++++++++
 sound/soc/intel/skylake/skl.c | 8 ++++++++
 2 files changed, 17 insertions(+)
diff mbox series

Patch

diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
index 0caa1f4eb94d..3ee6a407eb08 100644
--- a/sound/soc/intel/Kconfig
+++ b/sound/soc/intel/Kconfig
@@ -117,6 +117,15 @@  config SND_SOC_INTEL_SKYLAKE
 	  GeminiLake or CannonLake platform with the DSP enabled in the BIOS
 	  then enable this option by saying Y or m.
 
+config SND_SOC_INTEL_SKYLAKE_HDA_DSP
+	bool "Enable HDAudio Codec + DSP support"
+	depends on SND_SOC_INTEL_SKYLAKE
+	help
+	  If you have a Intel Skylake+ platform with the DSP enabled in
+	  the BIOS and an HDAudio codec, then enable this option by saying Y
+	  This option will only have an effect if there are no ACPI-enumerated
+	  audio devices (I2C, SoundWire).
+
 config SND_SOC_ACPI_INTEL_MATCH
 	tristate
 	select SND_SOC_ACPI if ACPI
diff --git a/sound/soc/intel/skylake/skl.c b/sound/soc/intel/skylake/skl.c
index d81a275f0bc0..1c260e81798a 100644
--- a/sound/soc/intel/skylake/skl.c
+++ b/sound/soc/intel/skylake/skl.c
@@ -474,6 +474,7 @@  static struct skl_ssp_clk skl_ssp_clks[] = {
 						{.name = "ssp5_sclkfs"},
 };
 
+#if IS_ENABLED(CONFIG_SND_SOC_INTEL_SKYLAKE_HDA_DSP)
 static struct snd_soc_acpi_mach *skl_find_hda_machine(struct skl *skl,
 					struct snd_soc_acpi_mach *machines)
 {
@@ -492,6 +493,13 @@  static struct snd_soc_acpi_mach *skl_find_hda_machine(struct skl *skl,
 
 	return mach;
 }
+#else
+static struct snd_soc_acpi_mach *skl_find_hda_machine(struct skl *skl,
+					struct snd_soc_acpi_mach *machines)
+{
+	return NULL;
+}
+#endif
 
 static int skl_find_machine(struct skl *skl, void *driver_data)
 {