OSDN Git Service

drm/amd/display: Defer LUT memory powerdown until LUT bypass latches
authorMichael Strauss <michael.strauss@amd.com>
Thu, 9 Sep 2021 20:33:52 +0000 (16:33 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 29 Sep 2021 21:29:59 +0000 (17:29 -0400)
commit028a998c62f72cb879d44809cb96acdcc47d6137
treedbb0c6e9890e2f7859516e0f1d3569c801777b2e
parent87e9585b3628555148a1671296a088871d6d35b6
drm/amd/display: Defer LUT memory powerdown until LUT bypass latches

[WHY]
Blnd, 3dlut, and shaper LUT select registers are double buffered, however
their accompanying LUT memory shutdown registers are not. As a result,
shutting down LUT memory immediately after setting a block to bypass causes
corruption as bypass only happens at next Vupdate.

[HOW]
Re-enable mem low power for CM block
Force optimization on next flip and disable LUT memory during optimization
sequence if LUT select field is then set to bypass

v2: squash in CONFIG_DRM_AMD_DC_DCN fix (Alex)

Reviewed-by: Eric Yang <Eric.Yang2@amd.com>
Acked-by: Anson Jacob <Anson.Jacob@amd.com>
Signed-off-by: Michael Strauss <michael.strauss@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc.c
drivers/gpu/drm/amd/display/dc/dcn30/dcn30_dpp.c
drivers/gpu/drm/amd/display/dc/dcn31/dcn31_resource.c
drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h