[alsa-devel] [PATCH] ASoC: dapm: don't skip evaluate the power of widget with force set
Signed-off-by: Xiang Xiao xiaoxiang@xiaomi.com --- sound/soc/soc-dapm.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c index c8a780d..14af77e 100644 --- a/sound/soc/soc-dapm.c +++ b/sound/soc/soc-dapm.c @@ -1673,7 +1673,7 @@ static void dapm_widget_set_peer_power(struct snd_soc_dapm_widget *peer,
/* If the peer is already in the state we're moving to then we * won't have an impact on it. */ - if (power != peer->power) + if (peer->force || power != peer->power) dapm_mark_dirty(peer, "peer state change"); }
@@ -1683,7 +1683,7 @@ static void dapm_widget_set_power(struct snd_soc_dapm_widget *w, bool power, { struct snd_soc_dapm_path *path;
- if (w->power == power) + if (!w->force && w->power == power) return;
trace_snd_soc_dapm_widget_power(w, power);
On Sun, Apr 13, 2014 at 04:37:20PM +0800, Xiang Xiao wrote:
Signed-off-by: Xiang Xiao xiaoxiang@xiaomi.com
You should explain why you want to do this in the changelog - what's the problem that's being fixed or benefit?
- if (power != peer->power)
- if (peer->force || power != peer->power) dapm_mark_dirty(peer, "peer state change");
This doesn't correspond to your changelog - it *will* skip evaluating the widget power if the widget is forced. It's not clear why this would be a benefit.
- if (w->power == power)
- if (!w->force && w->power == power) return;
Similarly here.
participants (2)
-
Mark Brown
-
Xiang Xiao