]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
drm/amd/display: scaling changes should also be a full update
authorAric Cyr <aric.cyr@amd.com>
Mon, 25 Nov 2019 00:11:15 +0000 (19:11 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 18 Dec 2019 21:09:09 +0000 (16:09 -0500)
Signed-off-by: Aric Cyr <aric.cyr@amd.com>
Reviewed-by: Jun Lei <Jun.Lei@amd.com>
Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/core/dc.c

index 2cb31f403b747fc4c1c579703c66e8d6cf006009..c1348068585348b84a8ecef26077ef4d084f517e 100644 (file)
@@ -1577,7 +1577,7 @@ static enum surface_update_type get_scaling_info_update_type(
 
                update_flags->bits.scaling_change = 1;
                if (u->scaling_info->src_rect.width > u->surface->src_rect.width
-                               && u->scaling_info->src_rect.height > u->surface->src_rect.height)
+                               || u->scaling_info->src_rect.height > u->surface->src_rect.height)
                        /* Making src rect bigger requires a bandwidth change */
                        update_flags->bits.clock_change = 1;
        }
@@ -1591,11 +1591,11 @@ static enum surface_update_type get_scaling_info_update_type(
                update_flags->bits.position_change = 1;
 
        if (update_flags->bits.clock_change
-                       || update_flags->bits.bandwidth_change)
+                       || update_flags->bits.bandwidth_change
+                       || update_flags->bits.scaling_change)
                return UPDATE_TYPE_FULL;
 
-       if (update_flags->bits.scaling_change
-                       || update_flags->bits.position_change)
+       if (update_flags->bits.position_change)
                return UPDATE_TYPE_MED;
 
        return UPDATE_TYPE_FAST;