drm/amd/display: Assign stream status for FPO + Vactive cases
authorAlvin Lee <alvin.lee2@amd.com>
Wed, 13 Dec 2023 14:46:50 +0000 (09:46 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 3 Jan 2024 15:46:21 +0000 (10:46 -0500)
A new check was added to ensure FPO is not enabled when the FPO pipe has
0 planes. This requires the stream status to check the plane count, but
the stream status was not assigned for FPO + Vactive cases which leads
to FPO not be enabled always.

Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Reviewed-by: Relja Vojvodic <relja.vojvodic@amd.com>
Acked-by: Rodrigo Siqueira <rodrigo.siqueira@amd.com>
Signed-off-by: Alvin Lee <alvin.lee2@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dcn32/dcn32_resource_helpers.c

index cca6436ecdf589cfa1a97f3f5b1eea0e36e60418..f698a7e6329107c6ee840d2e07b0ee5771e32d9b 100644 (file)
@@ -554,7 +554,8 @@ struct dc_stream_state *dcn32_can_support_mclk_switch_using_fw_based_vblank_stre
                DC_FP_START();
                dcn32_assign_fpo_vactive_candidate(dc, context, &fpo_candidate_stream);
                DC_FP_END();
-
+               if (fpo_candidate_stream)
+                       fpo_stream_status = dc_state_get_stream_status(context, fpo_candidate_stream);
                DC_FP_START();
                is_fpo_vactive = dcn32_find_vactive_pipe(dc, context, dc->debug.fpo_vactive_min_active_margin_us);
                DC_FP_END();