drm/i915: remove pre-atomic check from SKL update_primary_plane
authorPaulo Zanoni <paulo.r.zanoni@intel.com>
Wed, 30 Sep 2015 20:05:43 +0000 (17:05 -0300)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Fri, 9 Oct 2015 07:35:19 +0000 (09:35 +0200)
The comment suggests the check was there for some non-fully-atomic
case, and I couldn't find a case where we wouldn't correctly
initialize plane_state, so remove the check.

Let's leave a WARN there just in case.

Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Acked-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_display.c

index 184ba09842f588ef9fef29ca6633a66dd2802e79..6b3b65e3b36b3cf969e1703ff4731fdbe10f5147 100644 (file)
@@ -3131,27 +3131,19 @@ static void skylake_update_primary_plane(struct drm_crtc *crtc,
                                               fb->pixel_format);
        surf_addr = intel_plane_obj_offset(to_intel_plane(plane), obj, 0);
 
-       /*
-        * FIXME: intel_plane_state->src, dst aren't set when transitional
-        * update_plane helpers are called from legacy paths.
-        * Once full atomic crtc is available, below check can be avoided.
-        */
-       if (drm_rect_width(&plane_state->src)) {
-               scaler_id = plane_state->scaler_id;
-               src_x = plane_state->src.x1 >> 16;
-               src_y = plane_state->src.y1 >> 16;
-               src_w = drm_rect_width(&plane_state->src) >> 16;
-               src_h = drm_rect_height(&plane_state->src) >> 16;
-               dst_x = plane_state->dst.x1;
-               dst_y = plane_state->dst.y1;
-               dst_w = drm_rect_width(&plane_state->dst);
-               dst_h = drm_rect_height(&plane_state->dst);
-
-               WARN_ON(x != src_x || y != src_y);
-       } else {
-               src_w = intel_crtc->config->pipe_src_w;
-               src_h = intel_crtc->config->pipe_src_h;
-       }
+       WARN_ON(drm_rect_width(&plane_state->src) == 0);
+
+       scaler_id = plane_state->scaler_id;
+       src_x = plane_state->src.x1 >> 16;
+       src_y = plane_state->src.y1 >> 16;
+       src_w = drm_rect_width(&plane_state->src) >> 16;
+       src_h = drm_rect_height(&plane_state->src) >> 16;
+       dst_x = plane_state->dst.x1;
+       dst_y = plane_state->dst.y1;
+       dst_w = drm_rect_width(&plane_state->dst);
+       dst_h = drm_rect_height(&plane_state->dst);
+
+       WARN_ON(x != src_x || y != src_y);
 
        if (intel_rotation_90_or_270(rotation)) {
                /* stride = Surface height in tiles */