linux/drivers/gpu/drm/amd/display/dc/dpp
Matthew Schwartz 382bd6a792 drm/amd/display: Don't program BLNDGAM_MEM_PWR_FORCE when CM low-power is disabled on DCN30
Before commit 33056a97ae ("drm/amd/display: Remove double checks for
`debug.enable_mem_low_power.bits.cm`"), dpp3_program_blnd_lut(NULL)
checked the low-power debug flag before calling
dpp3_power_on_blnd_lut(false).

After commit 33056a97ae ("drm/amd/display: Remove double checks for
`debug.enable_mem_low_power.bits.cm`"), dpp3_program_blnd_lut(NULL)
unconditionally calls dpp3_power_on_blnd_lut(false). The BLNDGAM power
helper writes BLNDGAM_MEM_PWR_FORCE when CM low-power is disabled, causing
immediate SRAM power toggles instead of deferring at vupdate. This can
disrupt atomic color/LUT sequencing during transitions between
direct scanout and composition within gamescope's DRM backend on
Steam Deck OLED.

To fix this, leave the BLNDGAM power state unchanged when low-power is
disabled, matching dpp3_power_on_hdr3dlut and dpp3_power_on_shaper.

Fixes: 33056a97ae ("drm/amd/display: Remove double checks for `debug.enable_mem_low_power.bits.cm`")
Signed-off-by: Matthew Schwartz <matthew.schwartz@linux.dev>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Reviewed-by: Mario Limonciello <mario.limonciello@amd.com>
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 13ff4f63fc)
Cc: stable@vger.kernel.org
2025-10-28 11:01:44 -04:00
..
dcn10 drm/amd/display: Clear the CUR_ENABLE register on DCN314 w/out DPP PG 2025-08-29 10:22:52 -04:00
dcn20 drm/amd/display: Move SPL to a new path 2025-02-12 21:03:01 -05:00
dcn30 drm/amd/display: Don't program BLNDGAM_MEM_PWR_FORCE when CM low-power is disabled on DCN30 2025-10-28 11:01:44 -04:00
dcn32 drm/amd/display: Move SPL to a new path 2025-02-12 21:03:01 -05:00
dcn35 drm/amd/display: Update IPS sequential_ono requirement checks 2025-05-05 12:54:12 -04:00
dcn201 drm/amd/display: Remove unnecessary files 2024-04-30 09:52:21 -04:00
dcn401 drm/amd/display: Refactor DPP enum for backwards compatibility 2025-08-18 16:57:03 -04:00
Makefile drm/amd/display: Add misc DC changes for DCN401 2024-04-26 17:23:34 -04:00