drm/mgag200: Fix framebuffer pitch calculation
authorTakashi Iwai <tiwai@suse.com>
Wed, 17 Jul 2013 13:07:26 +0000 (15:07 +0200)
committerDave Airlie <airlied@redhat.com>
Mon, 29 Jul 2013 23:44:30 +0000 (09:44 +1000)
The framebuffer pitch calculation needs to be done differently for bpp == 24
- check xf86-video-mga for reference.

Signed-off-by: Egbert Eich <eich@suse.de>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/mgag200/mgag200_mode.c

index 020a623..c8983f9 100644 (file)
@@ -877,7 +877,7 @@ static int mga_crtc_mode_set(struct drm_crtc *crtc,
 
        pitch = crtc->fb->pitches[0] / (crtc->fb->bits_per_pixel / 8);
        if (crtc->fb->bits_per_pixel == 24)
-               pitch = pitch >> (4 - bppshift);
+               pitch = (pitch * 3) >> (4 - bppshift);
        else
                pitch = pitch >> (4 - bppshift);