OSDN Git Service

drm/amd/display: Use mdelay to avoid context switch
authorMartin Tsai <martin.tsai@amd.com>
Thu, 26 Dec 2019 08:19:47 +0000 (16:19 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 16 Jan 2020 19:16:40 +0000 (14:16 -0500)
[why]
The rapid msleep operation causes the white line garbage when
DAL check flip pending status in SetVidPnSourceVisibility.
To execute this msleep will induce context switch, and longer
delay could cause worse garbage situation.

[how]
To replace msleep with mdelay.

Signed-off-by: Martin Tsai <martin.tsai@amd.com>
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com>
Acked-by: Harry Wentland <harry.wentland@amd.com>
Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dcn20/dcn20_hwseq.c

index 8992092..f07899e 100644 (file)
@@ -1642,9 +1642,9 @@ void dcn20_program_front_end_for_ctx(
                        struct hubp *hubp = pipe->plane_res.hubp;
                        int j = 0;
 
-                       for (j = 0; j < TIMEOUT_FOR_PIPE_ENABLE_MS
+                       for (j = 0; j < TIMEOUT_FOR_PIPE_ENABLE_MS*1000
                                        && hubp->funcs->hubp_is_flip_pending(hubp); j++)
-                               msleep(1);
+                               mdelay(1);
                }
        }