ALSA: hda - Force to link down at runtime suspend on ATI/AMD HDMI
authorTakashi Iwai <tiwai@suse.de>
Thu, 21 Jun 2018 11:33:53 +0000 (13:33 +0200)
committerTakashi Iwai <tiwai@suse.de>
Thu, 21 Jun 2018 11:46:56 +0000 (13:46 +0200)
commit57cb54e53bddb59f5f542ddd4b0bfe005d31a8d5
treeec1faa541bf6d2c619a80be938b3538f6b36c3a4
parentf04684b4d85d6371126f476d3268ebf6a0bd57cf
ALSA: hda - Force to link down at runtime suspend on ATI/AMD HDMI

Henning Kühn reported that the discrete AMD GPU on his hybrid graphics
laptop no longer runtime-suspends due to the recent commit
07f4f97d7b4b ("vga_switcheroo: Use device link for HDA controller").

The root cause is that the HDMI codec on AMD GPU doesn't support
CLKSTOP and EPSS, which are currently mandatory for powering down the
HD-audio link at runtime suspend.  Because the HD-audio link is still
up, HD-audio controller driver blocks the transition to D3.

For addressing the regression, this patch adds a new flag to indicate
the forced link-down, and sets it for AMD HDMI codecs appropriately
in the codec driver.

Fixes: 07f4f97d7b4b ("vga_switcheroo: Use device link for HDA controller")
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106957
Reported-by: Lukas Wunner <lukas@wunner.de>
Reported-and-tested-by: Henning Kühn <prg@cooco.de>
Cc: <stable@vger.kernel.org> # v4.17+
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/hda_codec.c
sound/pci/hda/hda_codec.h
sound/pci/hda/patch_hdmi.c