aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/intel/catpt/device.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/soc/intel/catpt/device.c')
-rw-r--r--sound/soc/intel/catpt/device.c38
1 files changed, 31 insertions, 7 deletions
diff --git a/sound/soc/intel/catpt/device.c b/sound/soc/intel/catpt/device.c
index 85a34e37316d..d5d08bd766c7 100644
--- a/sound/soc/intel/catpt/device.c
+++ b/sound/soc/intel/catpt/device.c
@@ -22,7 +22,6 @@
#include <sound/intel-dsp-config.h>
#include <sound/soc.h>
#include <sound/soc-acpi.h>
-#include <sound/soc-acpi-intel-match.h>
#include "core.h"
#include "registers.h"
@@ -254,14 +253,11 @@ static int catpt_acpi_probe(struct platform_device *pdev)
return -ENODEV;
}
- spec = device_get_match_data(dev);
- if (!spec)
- return -ENODEV;
-
cdev = devm_kzalloc(dev, sizeof(*cdev), GFP_KERNEL);
if (!cdev)
return -ENOMEM;
+ spec = (const struct catpt_spec *)id->driver_data;
catpt_dev_init(cdev, dev, spec);
/* map DSP bar address */
@@ -313,8 +309,36 @@ static int catpt_acpi_remove(struct platform_device *pdev)
return 0;
}
+static struct snd_soc_acpi_mach lpt_machines[] = {
+ {
+ .id = "INT33CA",
+ .drv_name = "hsw_rt5640",
+ },
+ {}
+};
+
+static struct snd_soc_acpi_mach wpt_machines[] = {
+ {
+ .id = "INT33CA",
+ .drv_name = "hsw_rt5640",
+ },
+ {
+ .id = "INT343A",
+ .drv_name = "bdw_rt286",
+ },
+ {
+ .id = "10EC5650",
+ .drv_name = "bdw-rt5650",
+ },
+ {
+ .id = "RT5677CE",
+ .drv_name = "bdw-rt5677",
+ },
+ {}
+};
+
static struct catpt_spec lpt_desc = {
- .machines = snd_soc_acpi_intel_haswell_machines,
+ .machines = lpt_machines,
.core_id = 0x01,
.host_dram_offset = 0x000000,
.host_iram_offset = 0x080000,
@@ -329,7 +353,7 @@ static struct catpt_spec lpt_desc = {
};
static struct catpt_spec wpt_desc = {
- .machines = snd_soc_acpi_intel_broadwell_machines,
+ .machines = wpt_machines,
.core_id = 0x02,
.host_dram_offset = 0x000000,
.host_iram_offset = 0x0A0000,