drm/amd/display: Reset pipe count when iterating for DET override
authorTaimur Hassan <Syed.Hassan@amd.com>
Wed, 13 Jul 2022 21:07:43 +0000 (17:07 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 25 Jul 2022 21:15:44 +0000 (17:15 -0400)
[Why]
Coding error in DET allocation was resulting in too few DET segments
being allocated, causing underflow.

[How]
Reset pipe count each time we begin iterating through pipes for a stream.

Reviewed-by: Alvin Lee <Alvin.Lee2@amd.com>
Acked-by: Alex Hung <alex.hung@amd.com>
Signed-off-by: Taimur Hassan <Syed.Hassan@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/dcn32/dcn32_resource_helpers.c

index 266c498..b3f8503 100644 (file)
@@ -184,7 +184,8 @@ void dcn32_determine_det_override(struct dc_state *context, display_e2e_pipe_par
 
        if (context->stream_count > 0) {
                stream_segments = 18 / context->stream_count;
-               for (i = 0, count = 0; i < context->stream_count; i++) {
+               for (i = 0; i < context->stream_count; i++) {
+                       count = 0;
                        for (j = 0; j < pipe_cnt; j++) {
                                if (context->res_ctx.pipe_ctx[j].stream == context->streams[i]) {
                                        count++;