diff options
author | Mark Brown <broonie@kernel.org> | 2016-01-05 18:06:29 +0000 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2016-01-05 18:06:29 +0000 |
commit | ee1e4e3f0d50aebdc6dac2a2cd4ae203ed2a75c1 (patch) | |
tree | 3ae1d5d33402f3459a65fe492c97d75c168bb04c /sound/soc/intel | |
parent | 55fc205600ff3b529631cfe03b58645e3844bd92 (diff) | |
parent | d8018361b58bb7b9a2a657104e54c33c2ef1439d (diff) |
Merge branch 'fix/intel' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-intel
Diffstat (limited to 'sound/soc/intel')
-rw-r--r-- | sound/soc/intel/skylake/skl-topology.c | 2 | ||||
-rw-r--r-- | sound/soc/intel/skylake/skl.c | 4 | ||||
-rw-r--r-- | sound/soc/intel/skylake/skl.h | 3 |
3 files changed, 8 insertions, 1 deletions
diff --git a/sound/soc/intel/skylake/skl-topology.c b/sound/soc/intel/skylake/skl-topology.c index 34f2f7351f66..4624556f486d 100644 --- a/sound/soc/intel/skylake/skl-topology.c +++ b/sound/soc/intel/skylake/skl-topology.c @@ -1516,5 +1516,7 @@ int skl_tplg_init(struct snd_soc_platform *platform, struct hdac_ext_bus *ebus) skl->resource.max_mcps = SKL_MAX_MCPS; skl->resource.max_mem = SKL_FW_MAX_MEM; + skl->tplg = fw; + return 0; } diff --git a/sound/soc/intel/skylake/skl.c b/sound/soc/intel/skylake/skl.c index c38bf99ced10..b69649aa7809 100644 --- a/sound/soc/intel/skylake/skl.c +++ b/sound/soc/intel/skylake/skl.c @@ -25,6 +25,7 @@ #include <linux/pci.h> #include <linux/pm_runtime.h> #include <linux/platform_device.h> +#include <linux/firmware.h> #include <sound/pcm.h> #include "../common/sst-acpi.h" #include "skl.h" @@ -585,6 +586,9 @@ static void skl_remove(struct pci_dev *pci) struct hdac_ext_bus *ebus = pci_get_drvdata(pci); struct skl *skl = ebus_to_skl(ebus); + if (skl->tplg) + release_firmware(skl->tplg); + if (pci_dev_run_wake(pci)) pm_runtime_get_noresume(&pci->dev); pci_dev_put(pci); diff --git a/sound/soc/intel/skylake/skl.h b/sound/soc/intel/skylake/skl.h index 3d167eed0f59..36a1b8c5f6d0 100644 --- a/sound/soc/intel/skylake/skl.h +++ b/sound/soc/intel/skylake/skl.h @@ -68,8 +68,9 @@ struct skl { struct skl_dsp_resource resource; struct list_head ppl_list; - + struct list_head dapm_path_list; const char *fw_name; + const struct firmware *tplg; int supend_active; }; |