ASoC: Simplify logic in snd_soc_dapm_set_bias_level()
Mark Brown [Mon, 6 Jun 2011 17:15:19 +0000 (18:15 +0100)]
No functional changes but much less indentation.

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

sound/soc/soc-dapm.c

index 4452b57..d989dd7 100644 (file)
@@ -143,17 +143,19 @@ static int snd_soc_dapm_set_bias_level(struct snd_soc_dapm_context *dapm,
 
        if (card && card->set_bias_level)
                ret = card->set_bias_level(card, level);
-       if (ret == 0) {
-               if (dapm->codec && dapm->codec->driver->set_bias_level)
-                       ret = dapm->codec->driver->set_bias_level(dapm->codec, level);
-               else
-                       dapm->bias_level = level;
-       }
-       if (ret == 0) {
-               if (card && card->set_bias_level_post)
-                       ret = card->set_bias_level_post(card, level);
-       }
+       if (ret != 0)
+               goto out;
+
+       if (dapm->codec && dapm->codec->driver->set_bias_level)
+               ret = dapm->codec->driver->set_bias_level(dapm->codec, level);
+       else
+               dapm->bias_level = level;
+       if (ret != 0)
+               goto out;
 
+       if (card && card->set_bias_level_post)
+               ret = card->set_bias_level_post(card, level);
+out:
        trace_snd_soc_bias_level_done(card, level);
 
        return ret;