summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2011-08-22 18:40:30 +0100
committerMark Brown <broonie@opensource.wolfsonmicro.com>2011-08-22 23:23:29 +0100
commit33c5f969b969c277e96cd9e9bf8472c4b8709c25 (patch)
treec43604f07c0f54173fb99f9f64cc36616ec192f8
parent1661699aaa64e6024770ea7adff4fc6216cb25ca (diff)
ASoC: Allow idle_bias_off to be specified in CODEC drivers
If devices can unconditionally support idle_bias_off let them flag it in their driver structure. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
-rw-r--r--include/sound/soc.h1
-rw-r--r--sound/soc/soc-core.c2
2 files changed, 3 insertions, 0 deletions
diff --git a/include/sound/soc.h b/include/sound/soc.h
index 3fe658eea28..6da55a17fcf 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
@@ -633,6 +633,7 @@ struct snd_soc_codec_driver {
/* codec bias level */
int (*set_bias_level)(struct snd_soc_codec *,
enum snd_soc_bias_level level);
+ bool idle_bias_off;
void (*seq_notifier)(struct snd_soc_dapm_context *,
enum snd_soc_dapm_type, int);
diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c
index ae93aa81244..f8f985a4f2a 100644
--- a/sound/soc/soc-core.c
+++ b/sound/soc/soc-core.c
@@ -956,6 +956,8 @@ static int soc_probe_codec(struct snd_soc_card *card,
snd_soc_dapm_new_controls(&codec->dapm, driver->dapm_widgets,
driver->num_dapm_widgets);
+ codec->dapm.idle_bias_off = driver->idle_bias_off;
+
if (driver->probe) {
ret = driver->probe(codec);
if (ret < 0) {