]> rtime.felk.cvut.cz Git - zynq/linux.git/commitdiff
drm: xilinx: plane: Use drm_format_plane_width_bytes
authorHyun Kwon <hyun.kwon@xilinx.com>
Wed, 7 Mar 2018 22:40:36 +0000 (14:40 -0800)
committerMichal Simek <michal.simek@xilinx.com>
Sat, 10 Mar 2018 11:14:17 +0000 (12:14 +0100)
This will calculate the number of bytes correctly for macropixel
formats.

Signed-off-by: Hyun Kwon <hyun.kwon@xilinx.com>
Reviewed-by: Satish Kumar Nagireddy <satishna@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
drivers/gpu/drm/xilinx/xilinx_drm_plane.c

index 67b87c5d01fa5e44e26ae141842968379cc70410..8467f22f86afdda4a6e9b66ced9bf834c6560772 100644 (file)
@@ -297,10 +297,13 @@ int xilinx_drm_plane_mode_set(struct drm_plane *base_plane,
                }
 
                plane->dma[i].xt.numf = height;
-               plane->dma[i].sgl[0].size = width * cpp;
+               plane->dma[i].sgl[0].size = drm_format_plane_width_bytes(info,
+                                                                        i,
+                                                                        width);
                plane->dma[i].sgl[0].icg = fb->pitches[i] -
                                           plane->dma[i].sgl[0].size;
-               offset = src_x * cpp + src_y * fb->pitches[i];
+               offset = drm_format_plane_width_bytes(info, i, src_x);
+               offset += src_y * fb->pitches[i];
                offset += fb->offsets[i];
                plane->dma[i].xt.src_start = obj->paddr + offset;
                plane->dma[i].xt.frame_size = 1;