Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 86efc504 authored by Laurent Pinchart's avatar Laurent Pinchart Committed by Mauro Carvalho Chehab
Browse files

[media] v4l: omap4iss: ipipeif: Shift input data according to the input format



Input samples must be left-aligned on the ISIF 16-bit data bus.
Configure the 16-to-16-bit selector to shift data according to the input
format.

Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: default avatarMauro Carvalho Chehab <m.chehab@samsung.com>
parent 74536b2f
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -129,6 +129,7 @@ static void ipipeif_set_outaddr(struct iss_ipipeif_device *ipipeif, u32 addr)
static void ipipeif_configure(struct iss_ipipeif_device *ipipeif)
{
	struct iss_device *iss = to_iss_device(ipipeif);
	const struct iss_format_info *info;
	struct v4l2_mbus_framefmt *format;
	u32 isif_ccolp = 0;

@@ -194,9 +195,10 @@ static void ipipeif_configure(struct iss_ipipeif_device *ipipeif)
			ISIF_MODESET_INPMOD_RAW | ISIF_MODESET_CCDW_2BIT,
			iss->regs[OMAP4_ISS_MEM_ISP_ISIF] + ISIF_MODESET);

		info = omap4iss_video_format_info(format->code);
		writel((readl(iss->regs[OMAP4_ISS_MEM_ISP_ISIF] + ISIF_CGAMMAWD) &
			~ISIF_CGAMMAWD_GWDI_MASK) |
			ISIF_CGAMMAWD_GWDI_BIT11,
			ISIF_CGAMMAWD_GWDI(info->bpp),
			iss->regs[OMAP4_ISS_MEM_ISP_ISIF] + ISIF_CGAMMAWD);

		/* Set RAW Bayer pattern */
+1 −1
Original line number Diff line number Diff line
@@ -368,7 +368,7 @@

#define ISIF_CGAMMAWD					(0x0080)
#define ISIF_CGAMMAWD_GWDI_MASK				(0xF << 1)
#define ISIF_CGAMMAWD_GWDI_BIT11			(0x4 << 1)
#define ISIF_CGAMMAWD_GWDI(bpp)				((16 - (bpp)) << 1)

#define ISIF_CCDCFG					(0x0088)
#define ISIF_CCDCFG_Y8POS				(1 << 11)