diff options
author | Omair M Abdullah | 2015-12-03 18:59:56 +0100 |
---|---|---|
committer | Mark Brown | 2015-12-08 18:57:51 +0100 |
commit | 7d9f29119d3e4db6ae817881d8e305650424032c (patch) | |
tree | 4c9d788d943f547935440f6b805661ce9295c61f /sound/soc/intel/skylake/skl-topology.c | |
parent | ASoC: Intel: Skylake: add LARGE_CONFIG_GET IPC support (diff) | |
download | kernel-qcow2-linux-7d9f29119d3e4db6ae817881d8e305650424032c.tar.gz kernel-qcow2-linux-7d9f29119d3e4db6ae817881d8e305650424032c.tar.xz kernel-qcow2-linux-7d9f29119d3e4db6ae817881d8e305650424032c.zip |
ASoC: Intel: Skylake: read params from DSP if module is on
If a module is ON then we should read the module parameters from
DSP rather than driver cached values
Signed-off-by: Omair M Abdullah <omair.m.abdullah@intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/intel/skylake/skl-topology.c')
-rw-r--r-- | sound/soc/intel/skylake/skl-topology.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sound/soc/intel/skylake/skl-topology.c b/sound/soc/intel/skylake/skl-topology.c index eb31235f7040..b824450edcb4 100644 --- a/sound/soc/intel/skylake/skl-topology.c +++ b/sound/soc/intel/skylake/skl-topology.c @@ -908,6 +908,13 @@ static int skl_tplg_tlv_control_get(struct snd_kcontrol *kcontrol, struct soc_bytes_ext *sb = (struct soc_bytes_ext *)kcontrol->private_value; struct skl_algo_data *bc = (struct skl_algo_data *)sb->dobj.private; + struct snd_soc_dapm_widget *w = snd_soc_dapm_kcontrol_widget(kcontrol); + struct skl_module_cfg *mconfig = w->priv; + struct skl *skl = get_skl_ctx(w->dapm->dev); + + if (w->power) + skl_get_module_params(skl->skl_sst, (u32 *)bc->params, + bc->max, bc->param_id, mconfig); if (bc->params) { if (copy_to_user(data, &bc->param_id, sizeof(u32))) |