]> www.infradead.org Git - users/dwmw2/linux.git/commit
drm/amd/display: fix DMCU hang when going into Modern Standby
authorZi Yu Liao <ziyu.liao@amd.com>
Thu, 20 Jun 2019 14:55:26 +0000 (10:55 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 16 Aug 2019 08:11:01 +0000 (10:11 +0200)
commit8f17b4dcd46b54c5f6f38e85d87d7527310ff075
treebe2c25bc6e3142defd83b3501f3197449dc94671
parent26341f1139404362785132fe9ce7f3dc86a85992
drm/amd/display: fix DMCU hang when going into Modern Standby

[ Upstream commit 1ca068ed34d6b39d336c1b0d618ed73ba8f04548 ]

[why]
When the system is going into suspend, set_backlight gets called
after the eDP got blanked. Since smooth brightness is enabled,
the driver will make a call into the DMCU to ramp the brightness.
The DMCU would try to enable ABM to do so. But since the display is
blanked, this ends up causing ABM1_ACE_DBUF_REG_UPDATE_PENDING to
get stuck at 1, which results in a dead lock in the DMCU firmware.

[how]
Disable brightness ramping when the eDP display is blanked.

Signed-off-by: Zi Yu Liao <ziyu.liao@amd.com>
Reviewed-by: Eric Yang <eric.yang2@amd.com>
Acked-by: Anthony Koo <Anthony.Koo@amd.com>
Acked-by: Leo Li <sunpeng.li@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/amd/display/dc/core/dc_link.c