ASoC: Simplify logic in snd_soc_dapm_set_bias_level()
No functional changes but much less indentation.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@ti.com>
diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c
index 4452b57..d989dd7 100644
--- a/sound/soc/soc-dapm.c
+++ b/sound/soc/soc-dapm.c
@@ -143,17 +143,19 @@
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;