drm/amd/display: Exit from idle state before accessing HW data
authorSung Joon Kim <sungkim@amd.com>
Wed, 6 Dec 2023 19:52:30 +0000 (14:52 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 13 Dec 2023 20:09:54 +0000 (15:09 -0500)
[why & how]
User interface cannot guarantee system is in
idle state, so need to ensure we exit idle state
before accessing any HW data.

Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Acked-by: Aurabindo Pillai <aurabindo.pillai@amd.com>
Signed-off-by: Sung Joon Kim <sungkim@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dce/dmub_abm.c

index 930fd929e93a4fb9dc0c0e7c4d81b58fb6cd180c..8c5e7f858be38a69f2ad5e4ea8e3937541e9d045 100644 (file)
@@ -64,11 +64,15 @@ static void dmub_abm_init_ex(struct abm *abm, uint32_t backlight)
 
 static unsigned int dmub_abm_get_current_backlight_ex(struct abm *abm)
 {
+       dc_allow_idle_optimizations(abm->ctx->dc, false);
+
        return dmub_abm_get_current_backlight(abm);
 }
 
 static unsigned int dmub_abm_get_target_backlight_ex(struct abm *abm)
 {
+       dc_allow_idle_optimizations(abm->ctx->dc, false);
+
        return dmub_abm_get_target_backlight(abm);
 }