diff options
author | Mark Brown <broonie@kernel.org> | 2016-01-11 13:54:29 +0000 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2016-01-11 13:54:29 +0000 |
commit | 804c0a9569bd383358680199a22404aafedcc993 (patch) | |
tree | 44d276d2b85c8952293271828f9dd7cb59cdefc0 | |
parent | fffe9b89d808782a7370b0f70c7271a9f65a261c (diff) | |
parent | 26eb5a9a6a8545ebb9d45de9e6d43e511b250839 (diff) | |
download | linux-804c0a9569bd383358680199a22404aafedcc993.tar.bz2 |
Merge remote-tracking branch 'asoc/topic/arizona' into asoc-next
-rw-r--r-- | sound/soc/codecs/arizona.c | 3 | ||||
-rw-r--r-- | sound/soc/codecs/wm5110.c | 10 |
2 files changed, 7 insertions, 6 deletions
diff --git a/sound/soc/codecs/arizona.c b/sound/soc/codecs/arizona.c index fb8f18880524..33143fe1de0b 100644 --- a/sound/soc/codecs/arizona.c +++ b/sound/soc/codecs/arizona.c @@ -1494,6 +1494,9 @@ static int arizona_startup(struct snd_pcm_substream *substream, const struct snd_pcm_hw_constraint_list *constraint; unsigned int base_rate; + if (!substream->runtime) + return 0; + switch (dai_priv->clk) { case ARIZONA_CLK_SYSCLK: base_rate = priv->sysclk; diff --git a/sound/soc/codecs/wm5110.c b/sound/soc/codecs/wm5110.c index 8d3b20ac7e30..f276d2dd1683 100644 --- a/sound/soc/codecs/wm5110.c +++ b/sound/soc/codecs/wm5110.c @@ -437,18 +437,17 @@ static int wm5110_in_pga_get(struct snd_kcontrol *kcontrol, { struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol); struct snd_soc_dapm_context *dapm = snd_soc_codec_get_dapm(codec); - struct snd_soc_card *card = dapm->card; int ret; /* * PGA Volume is also used as part of the enable sequence, so * usage of it should be avoided whilst that is running. */ - mutex_lock_nested(&card->dapm_mutex, SND_SOC_DAPM_CLASS_RUNTIME); + snd_soc_dapm_mutex_lock(dapm); ret = snd_soc_get_volsw_range(kcontrol, ucontrol); - mutex_unlock(&card->dapm_mutex); + snd_soc_dapm_mutex_unlock(dapm); return ret; } @@ -458,18 +457,17 @@ static int wm5110_in_pga_put(struct snd_kcontrol *kcontrol, { struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol); struct snd_soc_dapm_context *dapm = snd_soc_codec_get_dapm(codec); - struct snd_soc_card *card = dapm->card; int ret; /* * PGA Volume is also used as part of the enable sequence, so * usage of it should be avoided whilst that is running. */ - mutex_lock_nested(&card->dapm_mutex, SND_SOC_DAPM_CLASS_RUNTIME); + snd_soc_dapm_mutex_lock(dapm); ret = snd_soc_put_volsw_range(kcontrol, ucontrol); - mutex_unlock(&card->dapm_mutex); + snd_soc_dapm_mutex_unlock(dapm); return ret; } |