ASoC: jack: Always update jack state even for noop changes
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Wed, 25 Jul 2012 21:57:35 +0000 (22:57 +0100)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Fri, 3 Aug 2012 22:03:56 +0000 (23:03 +0100)
Now that DAPM is very cheap for most updates we've no need to avoid trying
to run it so always notify even if we don't think there are any changes.
This avoids potential issues with bootstrapping state like the pin state
or other notifiers when there's nothing in the jack.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@ti.com>
sound/soc/soc-jack.c

index 7f8b3b7..2ca3c73 100644 (file)
@@ -83,11 +83,6 @@ void snd_soc_jack_report(struct snd_soc_jack *jack, int status, int mask)
        jack->status &= ~mask;
        jack->status |= status & mask;
 
-       /* The DAPM sync is expensive enough to be worth skipping.
-        * However, empty mask means pin synchronization is desired. */
-       if (mask && (jack->status == oldstatus))
-               goto out;
-
        trace_snd_soc_jack_notify(jack, status);
 
        list_for_each_entry(pin, &jack->pins, list) {
@@ -109,7 +104,6 @@ void snd_soc_jack_report(struct snd_soc_jack *jack, int status, int mask)
 
        snd_jack_report(jack->jack, jack->status);
 
-out:
        mutex_unlock(&jack->mutex);
 }
 EXPORT_SYMBOL_GPL(snd_soc_jack_report);