From: Alvin Lee <alvin.l...@amd.com>

[Description]
When checking the subvp type of the previous state we must
pass in current_state to the interface instead of context
otherwise we will get the wrong result.

Reviewed-by: Samson Tam <samson....@amd.com>
Acked-by: Zaeem Mohamed <zaeem.moha...@amd.com>
Signed-off-by: Alvin Lee <alvin.l...@amd.com>
---
 drivers/gpu/drm/amd/display/dc/hwss/dcn32/dcn32_hwseq.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/display/dc/hwss/dcn32/dcn32_hwseq.c 
b/drivers/gpu/drm/amd/display/dc/hwss/dcn32/dcn32_hwseq.c
index 25c9a407779b..0d27eec724b4 100644
--- a/drivers/gpu/drm/amd/display/dc/hwss/dcn32/dcn32_hwseq.c
+++ b/drivers/gpu/drm/amd/display/dc/hwss/dcn32/dcn32_hwseq.c
@@ -643,7 +643,7 @@ void dcn32_update_force_pstate(struct dc *dc, struct 
dc_state *context)
 
                if (pipe->stream && (dc_state_get_pipe_subvp_type(context, 
pipe) == SUBVP_MAIN ||
                                (stream_status && stream_status->fpo_in_use)) &&
-                               (!old_pipe->stream || 
(dc_state_get_pipe_subvp_type(context, old_pipe) != SUBVP_MAIN &&
+                               (!old_pipe->stream || 
(dc_state_get_pipe_subvp_type(dc->current_state, old_pipe) != SUBVP_MAIN &&
                                (old_stream_status && 
!old_stream_status->fpo_in_use)))) {
                        if (hubp && 
hubp->funcs->hubp_update_force_pstate_disallow)
                                
hubp->funcs->hubp_update_force_pstate_disallow(hubp, true);
-- 
2.34.1

Reply via email to