drm/amd/display: Don't optimize bandwidth before disabling planes
authorAric Cyr <aric.cyr@amd.com>
Fri, 12 Feb 2021 23:13:59 +0000 (18:13 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 22 Feb 2021 23:05:57 +0000 (18:05 -0500)
[Why]
There is a window of time where we optimize bandwidth due to no streams
enabled will enable PSTATE changing but HUBPs are not disabled yet.
This results in underflow counter increasing in some hotplug scenarios.

[How]
Set the optimize-bandwidth flag for later processing once all the HUBPs
are properly disabled.

Signed-off-by: Aric Cyr <aric.cyr@amd.com>
Acked-by: Bindu Ramamurthy <bindu.r@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

index bbf088ab0dfc272cf37d2cc0d4c90db25b96b610..7f9fc22655c628d1031176843d2ed353583193a1 100644 (file)
@@ -2413,7 +2413,8 @@ static void commit_planes_do_stream_update(struct dc *dc,
                                        if (pipe_ctx->stream_res.audio && !dc->debug.az_endpoint_mute_only)
                                                pipe_ctx->stream_res.audio->funcs->az_disable(pipe_ctx->stream_res.audio);
 
-                                       dc->hwss.optimize_bandwidth(dc, dc->current_state);
+                                       dc->optimized_required = true;
+
                                } else {
                                        if (get_seamless_boot_stream_count(context) == 0)
                                                dc->hwss.prepare_bandwidth(dc, dc->current_state);