aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_hdmi.c
diff options
context:
space:
mode:
authorDavid Henningsson <david.henningsson@canonical.com>2012-11-07 03:22:33 -0500
committerTakashi Iwai <tiwai@suse.de>2012-11-07 03:35:02 -0500
commitc9adeefda0e29bed628e40e7f9da1f84243937e7 (patch)
tree7b6b505d430a49c1f7ec0955305eeeb6e34d2435 /sound/pci/hda/patch_hdmi.c
parent4492363251235c4499a2d073c5f09121ea23d39d (diff)
ALSA: hda - Keep power link on for PantherPoint HDMI
On some of the PantherPoint HDMI machines we currently enable, we're seeing trouble with unsol events, i e detecting monitor presence, especially when on battery and after suspend/resume. BugLink: https://bugs.launchpad.net/bugs/1075882 Tested-by: Cyrus Lien <cyrus.lien@canonical.com> Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_hdmi.c')
-rw-r--r--sound/pci/hda/patch_hdmi.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
index 39ca1005995d..3824699142ee 100644
--- a/sound/pci/hda/patch_hdmi.c
+++ b/sound/pci/hda/patch_hdmi.c
@@ -1288,13 +1288,17 @@ static int hdmi_parse_codec(struct hda_codec *codec)
1288 } 1288 }
1289 } 1289 }
1290 1290
1291#ifdef CONFIG_PM
1292 /* We're seeing some problems with unsolicited hot plug events on
1293 * PantherPoint after S3, if this is not enabled */
1294 if (codec->vendor_id == 0x80862806)
1295 codec->bus->power_keep_link_on = 1;
1291 /* 1296 /*
1292 * G45/IbexPeak don't support EPSS: the unsolicited pin hot plug event 1297 * G45/IbexPeak don't support EPSS: the unsolicited pin hot plug event
1293 * can be lost and presence sense verb will become inaccurate if the 1298 * can be lost and presence sense verb will become inaccurate if the
1294 * HDA link is powered off at hot plug or hw initialization time. 1299 * HDA link is powered off at hot plug or hw initialization time.
1295 */ 1300 */
1296#ifdef CONFIG_PM 1301 else if (!(snd_hda_param_read(codec, codec->afg, AC_PAR_POWER_STATE) &
1297 if (!(snd_hda_param_read(codec, codec->afg, AC_PAR_POWER_STATE) &
1298 AC_PWRST_EPSS)) 1302 AC_PWRST_EPSS))
1299 codec->bus->power_keep_link_on = 1; 1303 codec->bus->power_keep_link_on = 1;
1300#endif 1304#endif