ASoC: Only provide a default bias level update for CODEC contexts
Mark Brown [Mon, 6 Jun 2011 18:03:34 +0000 (19:03 +0100)]
This allows the card driver to use the bias level variable more easily in
multi component systems.

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

sound/soc/soc-dapm.c

index 1682834..34106bc 100644 (file)
@@ -146,10 +146,13 @@ static int snd_soc_dapm_set_bias_level(struct snd_soc_dapm_context *dapm,
        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 (dapm->codec) {
+               if (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;