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>
This commit is contained in:
Mark Brown 2010-03-22 13:36:13 +00:00
parent d5021ec9fc
commit 5b9e87cccc
1 changed files with 3 additions and 0 deletions

View File

@ -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;
}
}