drm: rcar-du: Fix vblank initialization
authorLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Wed, 17 Oct 2018 19:08:31 +0000 (22:08 +0300)
committerBen Hutchings <ben@decadent.org.uk>
Thu, 4 Apr 2019 15:13:44 +0000 (16:13 +0100)
commit 3d61fe5f59dd3e6f96fc0772156d257cb04dc656 upstream.

The drm_vblank_init() takes the total number of CRTCs as an argument,
but the rcar-du driver passes a bitmask of the CRTC indices. Fix it.

Fixes: 4bf8e1962f91 ("drm: Renesas R-Car Display Unit DRM driver")
Reported-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
[bwh: Backported to 3.16: adjust filename, context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/gpu/drm/rcar-du/rcar_du_drv.c

index 792fd1d20e865df1125294dcfbf626e6a7a16524..f3be7393334d78870c0a80a46185b8e48b9406de 100644 (file)
@@ -89,7 +89,7 @@ static int rcar_du_load(struct drm_device *dev, unsigned long flags)
        }
 
        /* vblank handling */
-       ret = drm_vblank_init(dev, (1 << rcdu->num_crtcs) - 1);
+       ret = drm_vblank_init(dev, rcdu->num_crtcs);
        if (ret < 0) {
                dev_err(&pdev->dev, "failed to initialize vblank\n");
                goto done;