drm: hdlcd: Replace drm_fb_get_bpp_depth() with drm_format_plane_cpp()
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Mon, 17 Oct 2016 22:41:13 +0000 (01:41 +0300)
committerArchit Taneja <architt@codeaurora.org>
Tue, 18 Oct 2016 09:51:49 +0000 (15:21 +0530)
The driver needs the number of bytes per pixel, not the bpp and depth
info meant for fbdev compatibility. Use the right API.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Liviu Dudau <Liviu.Dudau@arm.com>
Signed-off-by: Archit Taneja <architt@codeaurora.org>
Link: http://patchwork.freedesktop.org/patch/msgid/1476744081-24485-6-git-send-email-laurent.pinchart@ideasonboard.com
drivers/gpu/drm/arm/hdlcd_crtc.c

index 48019ae22ddba5fcbb3283e94a016543fba3d8b3..bbaa55add2d231c96b1381df3d3a42cb44c1c20a 100644 (file)
@@ -223,14 +223,12 @@ static void hdlcd_plane_atomic_update(struct drm_plane *plane,
 {
        struct hdlcd_drm_private *hdlcd;
        struct drm_gem_cma_object *gem;
-       unsigned int depth, bpp;
        u32 src_w, src_h, dest_w, dest_h;
        dma_addr_t scanout_start;
 
        if (!plane->state->fb)
                return;
 
-       drm_fb_get_bpp_depth(plane->state->fb->pixel_format, &depth, &bpp);
        src_w = plane->state->src_w >> 16;
        src_h = plane->state->src_h >> 16;
        dest_w = plane->state->crtc_w;
@@ -238,7 +236,8 @@ static void hdlcd_plane_atomic_update(struct drm_plane *plane,
        gem = drm_fb_cma_get_gem_obj(plane->state->fb, 0);
        scanout_start = gem->paddr + plane->state->fb->offsets[0] +
                plane->state->crtc_y * plane->state->fb->pitches[0] +
-               plane->state->crtc_x * bpp / 8;
+               plane->state->crtc_x *
+               drm_format_plane_cpp(plane->state->fb->pixel_format, 0);
 
        hdlcd = plane->dev->dev_private;
        hdlcd_write(hdlcd, HDLCD_REG_FB_LINE_LENGTH, plane->state->fb->pitches[0]);