drm: Fix shifts of EDID vsync offset/width fields.
authorLinus Torvalds <torvalds@linux-foundation.org>
Mon, 23 Feb 2009 16:44:33 +0000 (08:44 -0800)
committerDave Airlie <airlied@linux.ie>
Wed, 25 Feb 2009 04:10:55 +0000 (14:10 +1000)
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Dave Airlie <airlied@linux.ie>
drivers/gpu/drm/drm_edid.c

index 5a4d3244758a102ec7cea6ed87342619dd47c85e..e902b1cefc061d018ee1f0eee622a91bfab8e7d1 100644 (file)
@@ -320,10 +320,10 @@ static struct drm_display_mode *drm_mode_detailed(struct drm_device *dev,
        mode->htotal = mode->hdisplay + ((pt->hblank_hi << 8) | pt->hblank_lo);
 
        mode->vdisplay = (pt->vactive_hi << 8) | pt->vactive_lo;
-       mode->vsync_start = mode->vdisplay + ((pt->vsync_offset_hi << 8) |
+       mode->vsync_start = mode->vdisplay + ((pt->vsync_offset_hi << 4) |
                                              pt->vsync_offset_lo);
        mode->vsync_end = mode->vsync_start +
-               ((pt->vsync_pulse_width_hi << 8) |
+               ((pt->vsync_pulse_width_hi << 4) |
                 pt->vsync_pulse_width_lo);
        mode->vtotal = mode->vdisplay + ((pt->vblank_hi << 8) | pt->vblank_lo);