From 68afc826a404acf55ce85647fb4f6e0290d10053 Mon Sep 17 00:00:00 2001 From: Mark Brown Date: Mon, 4 Apr 2011 21:05:11 +0900 Subject: [PATCH] --- yaml --- r: 248266 b: refs/heads/master c: 52ba67bf85889828b3766207fa43ce7159c84c78 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/sound/soc/soc-dapm.c | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 2a02145454ab..affc2e51bf4c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d25b7c1ec7da4636587ad1a22b324bcd7b89b6bc +refs/heads/master: 52ba67bf85889828b3766207fa43ce7159c84c78 diff --git a/trunk/sound/soc/soc-dapm.c b/trunk/sound/soc/soc-dapm.c index 567645c0308b..68879209b315 100644 --- a/trunk/sound/soc/soc-dapm.c +++ b/trunk/sound/soc/soc-dapm.c @@ -1101,6 +1101,15 @@ static int dapm_power_widgets(struct snd_soc_dapm_context *dapm, int event) } } + /* Force all contexts in the card to the same bias state */ + power = 0; + list_for_each_entry(d, &card->dapm_list, list) + if (d->dev_power) + power = 1; + list_for_each_entry(d, &card->dapm_list, list) + d->dev_power = power; + + /* Run all the bias changes in parallel */ list_for_each_entry(d, &dapm->card->dapm_list, list) async_schedule_domain(dapm_pre_sequence_async, d,