drm/amd/display: update clock when non-seamless boot stream exist
authorLewis Huang <Lewis.Huang@amd.com>
Thu, 3 Sep 2020 06:04:58 +0000 (14:04 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 15 Sep 2020 21:52:42 +0000 (17:52 -0400)
[Why]
Seamless boot skip porgram clock when set path mode.
It cause driverprogram clock after unblank stream.

[How]
update clock when non-seamless boot stream exist

Signed-off-by: Lewis Huang <Lewis.Huang@amd.com>
Acked-by: Aurabindo Pillai <aurabindo.pillai@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc.c

index f01610d..83ce55e 100644 (file)
@@ -1286,7 +1286,7 @@ static enum dc_status dc_commit_state_no_check(struct dc *dc, struct dc_state *c
                        dc->optimize_seamless_boot_streams++;
        }
 
-       if (dc->optimize_seamless_boot_streams == 0)
+       if (context->stream_count > dc->optimize_seamless_boot_streams)
                dc->hwss.prepare_bandwidth(dc, context);
 
        disable_dangling_plane(dc, context);
@@ -1368,7 +1368,7 @@ static enum dc_status dc_commit_state_no_check(struct dc *dc, struct dc_state *c
 
        dc_enable_stereo(dc, context, dc_streams, context->stream_count);
 
-       if (dc->optimize_seamless_boot_streams == 0) {
+       if (context->stream_count > dc->optimize_seamless_boot_streams) {
                /* Must wait for no flips to be pending before doing optimize bw */
                wait_for_no_pipes_pending(dc, context);
                /* pplib is notified if disp_num changed */