diff options
author | Takashi Iwai <tiwai@suse.de> | 2015-05-31 09:27:29 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2015-05-31 09:27:29 +0200 |
commit | 6b6d00076bf33fd1bfc95fa44218a6a089bc249a (patch) | |
tree | 282158704c41de9492e8d26071bc074ebedc6c03 /sound | |
parent | 2f80b2958abe5658000d5ad9b45a36ecf879666e (diff) | |
download | op-kernel-dev-6b6d00076bf33fd1bfc95fa44218a6a089bc249a.zip op-kernel-dev-6b6d00076bf33fd1bfc95fa44218a6a089bc249a.tar.gz |
ALSA: hda - Fix jack detection at resume with VT codecs
VT202x codecs seem requiring some delay after the resume D0 power
transition for making the jack detection working again. Without the
delay soon after D0, the jack is always detected as unplugged.
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=98921
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/pci/hda/patch_via.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_via.c b/sound/pci/hda/patch_via.c index 31a95cc..bab6c04 100644 --- a/sound/pci/hda/patch_via.c +++ b/sound/pci/hda/patch_via.c @@ -449,6 +449,15 @@ static int via_suspend(struct hda_codec *codec) return 0; } + +static int via_resume(struct hda_codec *codec) +{ + /* some delay here to make jack detection working (bko#98921) */ + msleep(10); + codec->patch_ops.init(codec); + regcache_sync(codec->core.regmap); + return 0; +} #endif #ifdef CONFIG_PM @@ -475,6 +484,7 @@ static const struct hda_codec_ops via_patch_ops = { .stream_pm = snd_hda_gen_stream_pm, #ifdef CONFIG_PM .suspend = via_suspend, + .resume = via_resume, .check_power_status = via_check_power_status, #endif }; |