drm: mali-dp: Fix destination size handling when rotating
authorBrian Starkey <brian.starkey@arm.com>
Wed, 7 Dec 2016 13:17:21 +0000 (13:17 +0000)
committerLiviu Dudau <Liviu.Dudau@arm.com>
Mon, 23 Jan 2017 09:46:24 +0000 (09:46 +0000)
The destination rectangle provided by userspace in the CRTC_X/Y/W/H
properties is already expressed as the dimensions after rotation.
This means we shouldn't swap the width and height ourselves when a
90/270 degree rotation is requested, so remove the code doing the swap.

Fixes: ad49f8602fe8 ("drm/arm: Add support for Mali Display Processors")

Signed-off-by: Brian Starkey <brian.starkey@arm.com>
Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com>
drivers/gpu/drm/arm/malidp_planes.c

index 69eba71..8c5ce36 100644 (file)
@@ -187,13 +187,8 @@ static void malidp_de_plane_update(struct drm_plane *plane,
        /* convert src values from Q16 fixed point to integer */
        src_w = plane->state->src_w >> 16;
        src_h = plane->state->src_h >> 16;
-       if (plane->state->rotation & MALIDP_ROTATED_MASK) {
-               dest_w = plane->state->crtc_h;
-               dest_h = plane->state->crtc_w;
-       } else {
-               dest_w = plane->state->crtc_w;
-               dest_h = plane->state->crtc_h;
-       }
+       dest_w = plane->state->crtc_w;
+       dest_h = plane->state->crtc_h;
 
        malidp_hw_write(mp->hwdev, ms->format, mp->layer->base);