summaryrefslogtreecommitdiff
path: root/sound/soc/codecs/wm_adsp.c
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2012-11-28 19:53:59 +0000
committerMark Brown <broonie@opensource.wolfsonmicro.com>2012-11-28 20:29:20 +0000
commita7f9be7ec5503166164ee4a037d6d497964ccdb6 (patch)
tree7b6271f1bfd37922b23ea505e4c6de7b5e45ecac /sound/soc/codecs/wm_adsp.c
parent973838a030d2a91fbd524c95281991510ed0a865 (diff)
downloadlinux-stable-a7f9be7ec5503166164ee4a037d6d497964ccdb6.tar.gz
linux-stable-a7f9be7ec5503166164ee4a037d6d497964ccdb6.tar.bz2
linux-stable-a7f9be7ec5503166164ee4a037d6d497964ccdb6.zip
ASoC: wm_adsp: Set the core enable as well as start bit for ADSP2
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/codecs/wm_adsp.c')
-rw-r--r--sound/soc/codecs/wm_adsp.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/sound/soc/codecs/wm_adsp.c b/sound/soc/codecs/wm_adsp.c
index a41742da20cb..c0b7f9d18b23 100644
--- a/sound/soc/codecs/wm_adsp.c
+++ b/sound/soc/codecs/wm_adsp.c
@@ -588,14 +588,16 @@ int wm_adsp2_event(struct snd_soc_dapm_widget *w,
ret = regmap_update_bits(dsp->regmap,
dsp->base + ADSP2_CONTROL,
- ADSP2_SYS_ENA | ADSP2_START, 0);
+ ADSP2_CORE_ENA | ADSP2_START,
+ ADSP2_CORE_ENA | ADSP2_START);
if (ret != 0)
goto err;
break;
case SND_SOC_DAPM_PRE_PMD:
regmap_update_bits(dsp->regmap, dsp->base + ADSP2_CONTROL,
- ADSP2_SYS_ENA | ADSP2_START, 0);
+ ADSP2_SYS_ENA | ADSP2_CORE_ENA |
+ ADSP2_START, 0);
if (dsp->dvfs) {
ret = regulator_set_voltage(dsp->dvfs, 1200000,
@@ -620,7 +622,7 @@ int wm_adsp2_event(struct snd_soc_dapm_widget *w,
return 0;
err:
regmap_update_bits(dsp->regmap, dsp->base + ADSP2_CONTROL,
- ADSP2_SYS_ENA | ADSP2_START, 0);
+ ADSP2_SYS_ENA | ADSP2_CORE_ENA | ADSP2_START, 0);
return ret;
}
EXPORT_SYMBOL_GPL(wm_adsp2_event);