media: imx: imx7_mipi_csis: Fix input size alignment
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Mon, 15 Feb 2021 04:27:27 +0000 (05:27 +0100)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Thu, 11 Mar 2021 10:59:52 +0000 (11:59 +0100)
The alignments given to the v4l_bound_align_image() are expressed in
bytes, while the function expects them to be expressed as a power of
two. Fix it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Rui Miguel Silva <rmfrfs@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/staging/media/imx/imx7-mipi-csis.c

index 36eabab22bfb410d29af5f5e215a591f5d8100d1..381eda94398a9d6b53e0ac61769a861f9ffcef71 100644 (file)
@@ -831,25 +831,25 @@ static int mipi_csis_set_fmt(struct v4l2_subdev *mipi_sd,
         */
        switch (csis_fmt->width % 8) {
        case 0:
-               align = 1;
+               align = 0;
                break;
        case 4:
-               align = 2;
+               align = 1;
                break;
        case 2:
        case 6:
-               align = 4;
+               align = 2;
                break;
        case 1:
        case 3:
        case 5:
        case 7:
-               align = 8;
+               align = 3;
                break;
        }
 
        v4l_bound_align_image(&fmt->width, 1, CSIS_MAX_PIX_WIDTH, align,
-                             &fmt->height, 1, CSIS_MAX_PIX_HEIGHT, 1, 0);
+                             &fmt->height, 1, CSIS_MAX_PIX_HEIGHT, 0, 0);
 
        sdformat->format = *fmt;