diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c index 611284194000e5d32afbe636469c572f07f9f5a2..476dbe6dabad182da3e15ee707275e4890876ee5 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; } }