diff options
Diffstat (limited to 'sound/soc/intel/common')
| -rw-r--r-- | sound/soc/intel/common/soc-acpi-intel-byt-match.c | 6 | ||||
| -rw-r--r-- | sound/soc/intel/common/soc-acpi-intel-cht-match.c | 6 | ||||
| -rw-r--r-- | sound/soc/intel/common/soc-acpi-intel-cnl-match.c | 19 | ||||
| -rw-r--r-- | sound/soc/intel/common/soc-acpi-intel-glk-match.c | 9 | ||||
| -rw-r--r-- | sound/soc/intel/common/soc-acpi-intel-icl-match.c | 6 | ||||
| -rw-r--r-- | sound/soc/intel/common/sst-firmware.c | 8 | 
6 files changed, 52 insertions, 2 deletions
diff --git a/sound/soc/intel/common/soc-acpi-intel-byt-match.c b/sound/soc/intel/common/soc-acpi-intel-byt-match.c index fe812a909db4..0cfab247876a 100644 --- a/sound/soc/intel/common/soc-acpi-intel-byt-match.c +++ b/sound/soc/intel/common/soc-acpi-intel-byt-match.c @@ -185,6 +185,12 @@ struct snd_soc_acpi_mach  snd_soc_acpi_intel_baytrail_machines[] = {  		.sof_fw_filename = "sof-byt.ri",  		.sof_tplg_filename = "sof-byt-es8316.tplg",  	}, +	{ +		.id = "10EC5682", +		.drv_name = "sof_rt5682", +		.sof_fw_filename = "sof-byt.ri", +		.sof_tplg_filename = "sof-byt-rt5682.tplg", +	},  	/* some Baytrail platforms rely on RT5645, use CHT machine driver */  	{  		.id = "10EC5645", diff --git a/sound/soc/intel/common/soc-acpi-intel-cht-match.c b/sound/soc/intel/common/soc-acpi-intel-cht-match.c index deafd87cc764..ff9c31a39ad4 100644 --- a/sound/soc/intel/common/soc-acpi-intel-cht-match.c +++ b/sound/soc/intel/common/soc-acpi-intel-cht-match.c @@ -160,6 +160,12 @@ struct snd_soc_acpi_mach  snd_soc_acpi_intel_cherrytrail_machines[] = {  		.sof_fw_filename = "sof-cht.ri",  		.sof_tplg_filename = "sof-cht-rt5640.tplg",  	}, +	{ +		.id = "10EC5682", +		.drv_name = "sof_rt5682", +		.sof_fw_filename = "sof-cht.ri", +		.sof_tplg_filename = "sof-cht-rt5682.tplg", +	},  	/* some CHT-T platforms rely on RT5651, use Baytrail machine driver */  	{  		.id = "10EC5651", diff --git a/sound/soc/intel/common/soc-acpi-intel-cnl-match.c b/sound/soc/intel/common/soc-acpi-intel-cnl-match.c index a914dd238d0a..df7c52cad5c3 100644 --- a/sound/soc/intel/common/soc-acpi-intel-cnl-match.c +++ b/sound/soc/intel/common/soc-acpi-intel-cnl-match.c @@ -14,6 +14,11 @@ static struct skl_machine_pdata cnl_pdata = {  	.use_tplg_pcm = true,  }; +static struct snd_soc_acpi_codecs cml_codecs = { +	.num_codecs = 1, +	.codecs = {"10EC5682"} +}; +  struct snd_soc_acpi_mach snd_soc_acpi_intel_cnl_machines[] = {  	{  		.id = "INT34C2", @@ -23,6 +28,20 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_cnl_machines[] = {  		.sof_fw_filename = "sof-cnl.ri",  		.sof_tplg_filename = "sof-cnl-rt274.tplg",  	}, +	{ +		.id = "10EC5682", +		.drv_name = "sof_rt5682", +		.sof_fw_filename = "sof-cnl.ri", +		.sof_tplg_filename = "sof-cml-rt5682.tplg", +	}, +	{ +		.id = "MX98357A", +		.drv_name = "sof_rt5682", +		.quirk_data = &cml_codecs, +		.sof_fw_filename = "sof-cnl.ri", +		.sof_tplg_filename = "sof-cml-rt5682-max98357a.tplg", +	}, +  	{},  };  EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_cnl_machines); diff --git a/sound/soc/intel/common/soc-acpi-intel-glk-match.c b/sound/soc/intel/common/soc-acpi-intel-glk-match.c index 3f2061475ae4..616eb09e78a0 100644 --- a/sound/soc/intel/common/soc-acpi-intel-glk-match.c +++ b/sound/soc/intel/common/soc-acpi-intel-glk-match.c @@ -31,6 +31,15 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_glk_machines[] = {  		.sof_fw_filename = "sof-glk.ri",  		.sof_tplg_filename = "sof-glk-da7219.tplg",  	}, +	{ +		.id = "10EC5682", +		.drv_name = "glk_rt5682_max98357a", +		.fw_filename = "intel/dsp_fw_glk.bin", +		.machine_quirk = snd_soc_acpi_codec_list, +		.quirk_data = &glk_codecs, +		.sof_fw_filename = "sof-glk.ri", +		.sof_tplg_filename = "sof-glk-rt5682.tplg", +	},  	{},  };  EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_glk_machines); diff --git a/sound/soc/intel/common/soc-acpi-intel-icl-match.c b/sound/soc/intel/common/soc-acpi-intel-icl-match.c index e5a6be5bc0ee..0b430b9b3673 100644 --- a/sound/soc/intel/common/soc-acpi-intel-icl-match.c +++ b/sound/soc/intel/common/soc-acpi-intel-icl-match.c @@ -23,6 +23,12 @@ struct snd_soc_acpi_mach snd_soc_acpi_intel_icl_machines[] = {  		.sof_fw_filename = "sof-icl.ri",  		.sof_tplg_filename = "sof-icl-rt274.tplg",  	}, +	{ +		.id = "10EC5682", +		.drv_name = "sof_rt5682", +		.sof_fw_filename = "sof-icl.ri", +		.sof_tplg_filename = "sof-icl-rt5682.tplg", +	},  	{},  };  EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_icl_machines); diff --git a/sound/soc/intel/common/sst-firmware.c b/sound/soc/intel/common/sst-firmware.c index 1e067504b604..f830e59f93ea 100644 --- a/sound/soc/intel/common/sst-firmware.c +++ b/sound/soc/intel/common/sst-firmware.c @@ -1251,11 +1251,15 @@ struct sst_dsp *sst_dsp_new(struct device *dev,  		goto irq_err;  	err = sst_dma_new(sst); -	if (err) -		dev_warn(dev, "sst_dma_new failed %d\n", err); +	if (err)  { +		dev_err(dev, "sst_dma_new failed %d\n", err); +		goto dma_err; +	}  	return sst; +dma_err: +	free_irq(sst->irq, sst);  irq_err:  	if (sst->ops->free)  		sst->ops->free(sst);  |