mirror of
https://github.com/torvalds/linux.git
synced 2024-12-29 06:12:08 +00:00
ASoC: rt5645: improve headphone pop when system resumes from S3
When playing audio through headphone, headphone makes pop noise if system resumes from S3 to S0. We modify the sequence of writing register for avoiding pop sound. Signed-off-by: John Lin <john.lin@realtek.com> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
92e963f50f
commit
0150e8c053
@ -3029,13 +3029,18 @@ static int rt5645_set_bias_level(struct snd_soc_codec *codec,
|
||||
RT5645_PWR_BG | RT5645_PWR_VREF2,
|
||||
RT5645_PWR_VREF1 | RT5645_PWR_MB |
|
||||
RT5645_PWR_BG | RT5645_PWR_VREF2);
|
||||
mdelay(10);
|
||||
snd_soc_update_bits(codec, RT5645_PWR_ANLG1,
|
||||
RT5645_PWR_FV1 | RT5645_PWR_FV2,
|
||||
RT5645_PWR_FV1 | RT5645_PWR_FV2);
|
||||
if (rt5645->en_button_func &&
|
||||
snd_soc_codec_get_bias_level(codec) == SND_SOC_BIAS_OFF)
|
||||
queue_delayed_work(system_power_efficient_wq,
|
||||
&rt5645->jack_detect_work, msecs_to_jiffies(0));
|
||||
if (snd_soc_codec_get_bias_level(codec) == SND_SOC_BIAS_OFF) {
|
||||
snd_soc_write(codec, RT5645_DEPOP_M2, 0x1140);
|
||||
msleep(40);
|
||||
if (rt5645->en_button_func)
|
||||
queue_delayed_work(system_power_efficient_wq,
|
||||
&rt5645->jack_detect_work,
|
||||
msecs_to_jiffies(0));
|
||||
}
|
||||
break;
|
||||
|
||||
case SND_SOC_BIAS_OFF:
|
||||
|
Loading…
Reference in New Issue
Block a user