summaryrefslogtreecommitdiffstats
path: root/sound/soc/soc-dapm.c
diff options
context:
space:
mode:
authorXiang Xiao2014-03-01 17:04:02 +0100
committerMark Brown2014-03-03 05:40:54 +0100
commit57996358f4d679b2bc39d4cd15166bb89fc8d981 (patch)
tree37eab28a27ed8b5e36bbe70f852113b711057c77 /sound/soc/soc-dapm.c
parentASoC: pxa: tosa: Update locking around use of DAPM pin API (diff)
downloadkernel-qcow2-linux-57996358f4d679b2bc39d4cd15166bb89fc8d981.tar.gz
kernel-qcow2-linux-57996358f4d679b2bc39d4cd15166bb89fc8d981.tar.xz
kernel-qcow2-linux-57996358f4d679b2bc39d4cd15166bb89fc8d981.zip
ASoC: dapm: Power off all widgets in the snd_soc_dapm_shutdown
The widgets generated by the machine driver need to power off too. Signed-off-by: Xiang Xiao <xiaoxiang@xiaomi.com> Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'sound/soc/soc-dapm.c')
-rw-r--r--sound/soc/soc-dapm.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c
index 4200f96a1483..d856e7c4c631 100644
--- a/sound/soc/soc-dapm.c
+++ b/sound/soc/soc-dapm.c
@@ -4116,7 +4116,7 @@ void snd_soc_dapm_free(struct snd_soc_dapm_context *dapm)
}
EXPORT_SYMBOL_GPL(snd_soc_dapm_free);
-static void soc_dapm_shutdown_codec(struct snd_soc_dapm_context *dapm)
+static void soc_dapm_shutdown_dapm(struct snd_soc_dapm_context *dapm)
{
struct snd_soc_card *card = dapm->card;
struct snd_soc_dapm_widget *w;
@@ -4156,12 +4156,12 @@ static void soc_dapm_shutdown_codec(struct snd_soc_dapm_context *dapm)
*/
void snd_soc_dapm_shutdown(struct snd_soc_card *card)
{
- struct snd_soc_codec *codec;
+ struct snd_soc_dapm_context *dapm;
- list_for_each_entry(codec, &card->codec_dev_list, card_list) {
- soc_dapm_shutdown_codec(&codec->dapm);
- if (codec->dapm.bias_level == SND_SOC_BIAS_STANDBY)
- snd_soc_dapm_set_bias_level(&codec->dapm,
+ list_for_each_entry(dapm, &card->dapm_list, list) {
+ soc_dapm_shutdown_dapm(dapm);
+ if (dapm->bias_level == SND_SOC_BIAS_STANDBY)
+ snd_soc_dapm_set_bias_level(dapm,
SND_SOC_BIAS_OFF);
}
}