[PATCH] marvell-ccic: fix RGB444 format

2015-04-24 Thread Hans Verkuil
The RGB444 format swapped the red and blue components, fix this.

Rather than making a new BGR444 format (as I proposed initially), Jon prefers
to just fix this and return the colors in the right order. I think that makes
sense in this case.

Since the RGB444 pixel format is deprecated due to the ambiguous specification
of the alpha component we use the XRGB444 pixel format instead (specified as 
having
no alpha channel).

Signed-off-by: Hans Verkuil hans.verk...@cisco.com
Tested-by: Hans Verkuil hans.verk...@cisco.com
---
diff --git a/drivers/media/platform/marvell-ccic/mcam-core.c 
b/drivers/media/platform/marvell-ccic/mcam-core.c
index 3c12065..cc92ba5 100644
--- a/drivers/media/platform/marvell-ccic/mcam-core.c
+++ b/drivers/media/platform/marvell-ccic/mcam-core.c
@@ -138,8 +138,8 @@ static struct mcam_format_struct {
.planar = true,
},
{
-   .desc   = RGB 444,
-   .pixelformat= V4L2_PIX_FMT_RGB444,
+   .desc   = XRGB 444,
+   .pixelformat= V4L2_PIX_FMT_XRGB444,
.mbus_code  = MEDIA_BUS_FMT_RGB444_2X8_PADHI_LE,
.bpp= 2,
.planar = false,
@@ -777,10 +777,9 @@ static void mcam_ctlr_image(struct mcam_camera *cam)
mcam_reg_write_mask(cam, REG_CTRL0,
C0_DF_YUV | C0_YUV_PACKED | C0_YUVE_SWAP24, C0_DF_MASK);
break;
-   case V4L2_PIX_FMT_RGB444:
+   case V4L2_PIX_FMT_XRGB444:
mcam_reg_write_mask(cam, REG_CTRL0,
-   C0_DF_RGB | C0_RGBF_444 | C0_RGB4_XRGB, C0_DF_MASK);
-   /* Alpha value? */
+   C0_DF_RGB | C0_RGBF_444 | C0_RGB4_XBGR, C0_DF_MASK);
break;
case V4L2_PIX_FMT_RGB565:
mcam_reg_write_mask(cam, REG_CTRL0,
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH] marvell-ccic: fix RGB444 format

2015-04-24 Thread Jonathan Corbet
On Fri, 24 Apr 2015 11:52:47 +0200
Hans Verkuil hverk...@xs4all.nl wrote:

 The RGB444 format swapped the red and blue components, fix this.
 
 Rather than making a new BGR444 format (as I proposed initially), Jon prefers
 to just fix this and return the colors in the right order. I think that makes
 sense in this case.
 
 Since the RGB444 pixel format is deprecated due to the ambiguous specification
 of the alpha component we use the XRGB444 pixel format instead (specified as 
 having
 no alpha channel).

Seems good to me.

Acked-by: Jonathan Corbet cor...@lwn.net

jon
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html