enum surface_update_type update_type;
        struct dc_state *context;
        struct dc_context *dc_ctx = dc->ctx;
-       int i;
+       int i, j;
 
        stream_status = dc_stream_get_status(stream);
        context = dc->current_state;
 
                copy_surface_update_to_plane(surface, &srf_updates[i]);
 
+               if (update_type >= UPDATE_TYPE_MED) {
+                       for (j = 0; j < dc->res_pool->pipe_count; j++) {
+                               struct pipe_ctx *pipe_ctx =
+                                       &context->res_ctx.pipe_ctx[j];
+
+                               if (pipe_ctx->plane_state != surface)
+                                       continue;
+
+                               resource_build_scaling_params(pipe_ctx);
+                       }
+               }
        }
 
        copy_stream_update_to_stream(dc, context, stream, stream_update);