drm/amd/display: Remove SubVp support if src/dst rect does not equal stream timing
authorSaaem Rizvi <SyedSaaem.Rizvi@amd.com>
Thu, 15 Dec 2022 21:38:08 +0000 (16:38 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 17 Jan 2023 20:38:22 +0000 (15:38 -0500)
Current implementation of SubVP does not support cases where stream
timing matched neither the destination rect nor the source rect.

Will need to further debug to see how we can support these cases.

Tested-by: Daniel Wheeler <Daniel.Wheeler@amd.com>
Reviewed-by: Alvin Lee <Alvin.Lee2@amd.com>
Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Signed-off-by: Saaem Rizvi <SyedSaaem.Rizvi@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dcn32/dcn32_resource_helpers.c

index 50f20549c951da26e27e9f033dbaf1ba03550dc9..0fc79d75ce766eb65f99c2e7d02817a2e9e7faee 100644 (file)
@@ -240,6 +240,14 @@ bool dcn32_is_center_timing(struct pipe_ctx *pipe)
                        is_center_timing = true;
                }
        }
+
+       if (pipe->plane_state) {
+               if (pipe->stream->timing.v_addressable != pipe->plane_state->dst_rect.height &&
+                               pipe->stream->timing.v_addressable != pipe->plane_state->src_rect.height) {
+                       is_center_timing = true;
+               }
+       }
+
        return is_center_timing;
 }