aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>2016-02-08 00:15:38 -0500
committerMark Brown <broonie@kernel.org>2016-02-08 09:36:05 -0500
commitcfffcc66a89ab6d9961b2cde6cdab2ba056451ad (patch)
tree81bb1ae62c8e0872e0d85542800bb754bfc241bc
parent2dcffcee23a2bd491a8c4041db3a8041b23fa4eb (diff)
ASoC: Intel: Load the atom DPCM driver only
DPCM driver is recommended for BYT, CHT based platforms, so if CONFIG_SND_SST_IPC_ACPI is selected then don't compile the BYT Device IDs in common ACPI driver to avoid probe conflicts. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Acked-by: Jie Yang <yang.jie@intel.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--sound/soc/intel/Kconfig4
-rw-r--r--sound/soc/intel/common/sst-acpi.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/sound/soc/intel/Kconfig b/sound/soc/intel/Kconfig
index af7aabbc0977..7d7c872c280d 100644
--- a/sound/soc/intel/Kconfig
+++ b/sound/soc/intel/Kconfig
@@ -61,7 +61,7 @@ config SND_SOC_INTEL_HASWELL_MACH
61config SND_SOC_INTEL_BYT_RT5640_MACH 61config SND_SOC_INTEL_BYT_RT5640_MACH
62 tristate "ASoC Audio driver for Intel Baytrail with RT5640 codec" 62 tristate "ASoC Audio driver for Intel Baytrail with RT5640 codec"
63 depends on X86_INTEL_LPSS && I2C 63 depends on X86_INTEL_LPSS && I2C
64 depends on DW_DMAC_CORE=y && (SND_SOC_INTEL_BYTCR_RT5640_MACH = n) 64 depends on DW_DMAC_CORE=y && (SND_SST_IPC_ACPI = n)
65 select SND_SOC_INTEL_SST 65 select SND_SOC_INTEL_SST
66 select SND_SOC_INTEL_BAYTRAIL 66 select SND_SOC_INTEL_BAYTRAIL
67 select SND_SOC_RT5640 67 select SND_SOC_RT5640
@@ -73,7 +73,7 @@ config SND_SOC_INTEL_BYT_RT5640_MACH
73config SND_SOC_INTEL_BYT_MAX98090_MACH 73config SND_SOC_INTEL_BYT_MAX98090_MACH
74 tristate "ASoC Audio driver for Intel Baytrail with MAX98090 codec" 74 tristate "ASoC Audio driver for Intel Baytrail with MAX98090 codec"
75 depends on X86_INTEL_LPSS && I2C 75 depends on X86_INTEL_LPSS && I2C
76 depends on DW_DMAC_CORE=y 76 depends on DW_DMAC_CORE=y && (SND_SST_IPC_ACPI = n)
77 select SND_SOC_INTEL_SST 77 select SND_SOC_INTEL_SST
78 select SND_SOC_INTEL_BAYTRAIL 78 select SND_SOC_INTEL_BAYTRAIL
79 select SND_SOC_MAX98090 79 select SND_SOC_MAX98090
diff --git a/sound/soc/intel/common/sst-acpi.c b/sound/soc/intel/common/sst-acpi.c
index 7a85c576dad3..2c5eda14d510 100644
--- a/sound/soc/intel/common/sst-acpi.c
+++ b/sound/soc/intel/common/sst-acpi.c
@@ -215,6 +215,7 @@ static struct sst_acpi_desc sst_acpi_broadwell_desc = {
215 .dma_size = SST_LPT_DSP_DMA_SIZE, 215 .dma_size = SST_LPT_DSP_DMA_SIZE,
216}; 216};
217 217
218#if !IS_ENABLED(CONFIG_SND_SST_IPC_ACPI)
218static struct sst_acpi_mach baytrail_machines[] = { 219static struct sst_acpi_mach baytrail_machines[] = {
219 { "10EC5640", "byt-rt5640", "intel/fw_sst_0f28.bin-48kHz_i2s_master", NULL, NULL, NULL }, 220 { "10EC5640", "byt-rt5640", "intel/fw_sst_0f28.bin-48kHz_i2s_master", NULL, NULL, NULL },
220 { "193C9890", "byt-max98090", "intel/fw_sst_0f28.bin-48kHz_i2s_master", NULL, NULL, NULL }, 221 { "193C9890", "byt-max98090", "intel/fw_sst_0f28.bin-48kHz_i2s_master", NULL, NULL, NULL },
@@ -231,11 +232,14 @@ static struct sst_acpi_desc sst_acpi_baytrail_desc = {
231 .sst_id = SST_DEV_ID_BYT, 232 .sst_id = SST_DEV_ID_BYT,
232 .resindex_dma_base = -1, 233 .resindex_dma_base = -1,
233}; 234};
235#endif
234 236
235static const struct acpi_device_id sst_acpi_match[] = { 237static const struct acpi_device_id sst_acpi_match[] = {
236 { "INT33C8", (unsigned long)&sst_acpi_haswell_desc }, 238 { "INT33C8", (unsigned long)&sst_acpi_haswell_desc },
237 { "INT3438", (unsigned long)&sst_acpi_broadwell_desc }, 239 { "INT3438", (unsigned long)&sst_acpi_broadwell_desc },
240#if !IS_ENABLED(CONFIG_SND_SST_IPC_ACPI)
238 { "80860F28", (unsigned long)&sst_acpi_baytrail_desc }, 241 { "80860F28", (unsigned long)&sst_acpi_baytrail_desc },
242#endif
239 { } 243 { }
240}; 244};
241MODULE_DEVICE_TABLE(acpi, sst_acpi_match); 245MODULE_DEVICE_TABLE(acpi, sst_acpi_match);