ASoC: rt5682: Fix the issue of garbled recording after powerd_dbus_suspend
[ Upstream commit 6a503e1c455316fd0bfd8188c0a62cce7c5525ca ] While using the DMIC recording, the garbled data will be captured by the DMIC. It is caused by the critical power of PLL closed in the jack detect function. Signed-off-by: Oder Chiou <oder_chiou@realtek.com> Link: https://lore.kernel.org/r/20210716085853.20170-1-oder_chiou@realtek.com Signed-off-by: Mark Brown <broonie@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:

committed by
Greg Kroah-Hartman

parent
74b53ee4b8
commit
c6bdf7d97d
@@ -971,10 +971,14 @@ int rt5682_headset_detect(struct snd_soc_component *component, int jack_insert)
|
||||
rt5682_enable_push_button_irq(component, false);
|
||||
snd_soc_component_update_bits(component, RT5682_CBJ_CTRL_1,
|
||||
RT5682_TRIG_JD_MASK, RT5682_TRIG_JD_LOW);
|
||||
if (!snd_soc_dapm_get_pin_status(dapm, "MICBIAS"))
|
||||
if (!snd_soc_dapm_get_pin_status(dapm, "MICBIAS") &&
|
||||
!snd_soc_dapm_get_pin_status(dapm, "PLL1") &&
|
||||
!snd_soc_dapm_get_pin_status(dapm, "PLL2B"))
|
||||
snd_soc_component_update_bits(component,
|
||||
RT5682_PWR_ANLG_1, RT5682_PWR_MB, 0);
|
||||
if (!snd_soc_dapm_get_pin_status(dapm, "Vref2"))
|
||||
if (!snd_soc_dapm_get_pin_status(dapm, "Vref2") &&
|
||||
!snd_soc_dapm_get_pin_status(dapm, "PLL1") &&
|
||||
!snd_soc_dapm_get_pin_status(dapm, "PLL2B"))
|
||||
snd_soc_component_update_bits(component,
|
||||
RT5682_PWR_ANLG_1, RT5682_PWR_VREF2, 0);
|
||||
snd_soc_component_update_bits(component, RT5682_PWR_ANLG_3,
|
||||
|
Reference in New Issue
Block a user