Thread (3 messages) 3 messages, 2 authors, 2021-09-24
STALE1710d

[PATCH] media: imx: Fix rounding

From: Dorota Czaplejewicz <hidden>
Date: 2021-09-24 10:07:14
Also in: linux-arm-kernel, linux-media, lkml, phone-devel
Subsystem: media drivers for freescale imx, media input infrastructure (v4l/dvb), staging subsystem, the rest · Maintainers: Steve Longerbeam, Philipp Zabel, Mauro Carvalho Chehab, Greg Kroah-Hartman, Linus Torvalds

Change rounding to the minimal burst size from 2^n to n.

This fixes images with sizes that are a multiple of 8 pixels.

See section 13.7.6.13 CSI Image Parameter Register of the
i.MX 8M Quad Applications Processors Reference Manual.

Fixes: 451a7b7815d0b ("media: imx: lift CSI and PRP ENC/VF width
alignment restriction")
Signed-off-by: Dorota Czaplejewicz <redacted>
---
Hi,

I tested this patch on the Librem 5 with the main camera.

--Dorota
 drivers/staging/media/imx/imx-media-utils.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/staging/media/imx/imx-media-utils.c b/drivers/staging/media/imx/imx-media-utils.c
index 5128915a5d6f..a2d8fab32a39 100644
--- a/drivers/staging/media/imx/imx-media-utils.c
+++ b/drivers/staging/media/imx/imx-media-utils.c
@@ -545,13 +545,13 @@ int imx_media_mbus_fmt_to_pix_fmt(struct v4l2_pix_format *pix,
 	}
 
 	/* Round up width for minimum burst size */
-	width = round_up(mbus->width, 8);
+	width = round_up(mbus->width, 3);
 
 	/* Round up stride for IDMAC line start address alignment */
 	if (cc->planar)
-		stride = round_up(width, 16);
+		stride = round_up(width, 4);
 	else
-		stride = round_up((width * cc->bpp) >> 3, 8);
+		stride = round_up((width * cc->bpp) >> 3, 3);
 
 	pix->width = width;
 	pix->height = mbus->height;
-- 
2.31.1

Attachments

  • (unnamed) [application/pgp-signature] 833 bytes
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help