Эх сурвалжийг харах

ASoC: Ensure SYSCLK is enabled for WM8958 accessory detection

Ensure SYSCLK is enabled while running accessory detection on WM8958.
It is always required so there is no sense in requiring machine drivers
to individually do this.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Mark Brown 13 жил өмнө
parent
commit
4cdf5e49ce

+ 3 - 0
sound/soc/codecs/wm8994.c

@@ -3016,6 +3016,8 @@ int wm8958_mic_detect(struct snd_soc_codec *codec, struct snd_soc_jack *jack,
 			cb_data = codec;
 			cb_data = codec;
 		}
 		}
 
 
+		snd_soc_dapm_force_enable_pin(&codec->dapm, "CLK_SYS");
+
 		wm8994->micdet[0].jack = jack;
 		wm8994->micdet[0].jack = jack;
 		wm8994->jack_cb = cb;
 		wm8994->jack_cb = cb;
 		wm8994->jack_cb_data = cb_data;
 		wm8994->jack_cb_data = cb_data;
@@ -3025,6 +3027,7 @@ int wm8958_mic_detect(struct snd_soc_codec *codec, struct snd_soc_jack *jack,
 	} else {
 	} else {
 		snd_soc_update_bits(codec, WM8958_MIC_DETECT_1,
 		snd_soc_update_bits(codec, WM8958_MIC_DETECT_1,
 				    WM8958_MICD_ENA, 0);
 				    WM8958_MICD_ENA, 0);
+		snd_soc_dapm_disable_pin(&codec->dapm, "CLK_SYS");
 	}
 	}
 
 
 	return 0;
 	return 0;