summaryrefslogtreecommitdiffstats
path: root/sound/soc/soc-dapm.c
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2010-03-22 13:36:13 +0000
committerMark Brown <broonie@opensource.wolfsonmicro.com>2010-03-22 17:21:23 +0000
commit5b9e87ccccf77f46c006c2cf0988a66d0f3f310d (patch)
tree53ab5d4006ccb37b85a615203a0bc325b5e5dcd8 /sound/soc/soc-dapm.c
parentd5021ec9fc32edc6f512c2375923d757e9825f6a (diff)
downloadop-kernel-dev-5b9e87ccccf77f46c006c2cf0988a66d0f3f310d.zip
op-kernel-dev-5b9e87ccccf77f46c006c2cf0988a66d0f3f310d.tar.gz
ASoC: Allow force enabled pins to be disabled
Some systems, such as those with mechanical jack detection, may wish to force enable a pin (typically mic bias) only some of the time. Support such systems by having disable_pin() also coveer force enabled pins. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Diffstat (limited to 'sound/soc/soc-dapm.c')
-rw-r--r--sound/soc/soc-dapm.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c
index 6112841..476dbe6 100644
--- a/sound/soc/soc-dapm.c
+++ b/sound/soc/soc-dapm.c
@@ -1266,6 +1266,9 @@ static int snd_soc_dapm_set_pin(struct snd_soc_codec *codec,
if (!strcmp(w->name, pin)) {
pr_debug("dapm: %s: pin %s\n", codec->name, pin);
w->connected = status;
+ /* Allow disabling of forced pins */
+ if (status == 0)
+ w->force = 0;
return 0;
}
}
OpenPOWER on IntegriCloud