V4L/DVB (4908): Remove the fake RGB32 format from cafe_ccic

Jonathan Corbet corbet at lwn.unroutablenet
Wed Dec 20 16:06:48 EST 2006


Commit:     a66d23368068d6027feedc010304d510e6d1fe56
Parent:     bf5dbed6b499787809c78710b209efc76939592b
commit a66d23368068d6027feedc010304d510e6d1fe56
Author:     Jonathan Corbet <corbet at lwn.net>
AuthorDate: Fri Dec 1 15:37:49 2006 -0300
Commit:     Mauro Carvalho Chehab <mchehab at infradead.org>
CommitDate: Sun Dec 10 09:05:31 2006 -0200

    V4L/DVB (4908): Remove the fake RGB32 format from cafe_ccic
    
    Remove RGB32, useful for debugging, but with no place in production.
    
    Signed-off-by: Jonathan Corbet <corbet at lwn.net>
    Signed-off-by: Mauro Carvalho Chehab <mchehab at infradead.org>
---
 drivers/media/video/cafe_ccic.c |   42 +++------------------------------------
 drivers/media/video/ov7670.c    |   15 --------------
 2 files changed, 3 insertions(+), 54 deletions(-)

diff --git a/drivers/media/video/cafe_ccic.c b/drivers/media/video/cafe_ccic.c
index 30864da..9d9844e 100644
--- a/drivers/media/video/cafe_ccic.c
+++ b/drivers/media/video/cafe_ccic.c
@@ -612,16 +612,6 @@ static void cafe_ctlr_image(struct cafe_
 			    C0_DF_MASK);
 	    break;
 
-	/*
-	 * For "fake rgb32" get the image pitch right.
-	 */
-	case V4L2_PIX_FMT_RGB32:
-	    cafe_reg_write_mask(cam, REG_IMGPITCH, fmt->bytesperline/2,
-			    IMGP_YP_MASK);
-	    imgsz = ((fmt->height << IMGSZ_V_SHIFT) & IMGSZ_V_MASK) |
-		    ((fmt->bytesperline/2) & IMGSZ_H_MASK);
-	    cafe_reg_write(cam, REG_IMGSIZE, imgsz);
-	    /* fall into ... */
 	case V4L2_PIX_FMT_RGB444:
 	    cafe_reg_write_mask(cam, REG_CTRL0,
 			    C0_DF_RGB|C0_RGBF_444|C0_RGB4_XRGB,
@@ -902,11 +892,8 @@ static int cafe_alloc_dma_bufs(struct ca
 	cafe_set_config_needed(cam, 1);
 	if (loadtime)
 		cam->dma_buf_size = dma_buf_size;
-	else {
+	else
 		cam->dma_buf_size = cam->pix_format.sizeimage;
-		if (cam->pix_format.pixelformat == V4L2_PIX_FMT_RGB32)
-			cam->dma_buf_size /= 2;
-	}
 	if (n_dma_bufs > 3)
 		n_dma_bufs = 3;
 
@@ -1751,26 +1738,6 @@ static struct video_device cafe_v4l_temp
  * Interrupt handler stuff
  */
 
-/*
- * Create RGB32 from RGB444 so it can be displayed before the applications
- * know about the latter format.
- */
-static void cafe_fake_rgb32(struct cafe_camera *cam, char *dest, char *src)
-{
-	int i;
-	u16 *ssrc = (u16 *) src;
-
-	/* RGB444 version */
-	for (i = 0; i < cam->pix_format.sizeimage; i += 4) {
-	//		dest[0] = (*ssrc & 0xf000) >> 8;
-		dest[0] = (*ssrc & 0x000f) << 4;
-		dest[1] = (*ssrc & 0x00f0);
-		dest[2] = (*ssrc & 0x0f00) >> 4;
-		dest[3] = (*ssrc & 0xf000);   /* Alpha */
-		dest += 4;
-		ssrc++;
-	}
-}
 
 
 static void cafe_frame_tasklet(unsigned long data)
@@ -1800,11 +1767,8 @@ static void cafe_frame_tasklet(unsigned 
 		 */
 		sbuf = list_entry(cam->sb_avail.next,
 				struct cafe_sio_buffer, list);
-		if (cam->pix_format.pixelformat == V4L2_PIX_FMT_RGB32)
-			cafe_fake_rgb32(cam, sbuf->buffer, cam->dma_bufs[bufno]);
-		else
-			memcpy(sbuf->buffer, cam->dma_bufs[bufno],
-					cam->pix_format.sizeimage);
+		memcpy(sbuf->buffer, cam->dma_bufs[bufno],
+				cam->pix_format.sizeimage);
 		sbuf->v4lbuf.bytesused = cam->pix_format.sizeimage;
 		sbuf->v4lbuf.sequence = cam->buf_seq[bufno];
 		sbuf->v4lbuf.flags &= ~V4L2_BUF_FLAG_QUEUED;
diff --git a/drivers/media/video/ov7670.c b/drivers/media/video/ov7670.c
index b7d824e..7d380d7 100644
--- a/drivers/media/video/ov7670.c
+++ b/drivers/media/video/ov7670.c
@@ -497,19 +497,6 @@ static struct ov7670_format_struct {
 		.regs		= ov7670_fmt_rgb565,
 		.cmatrix	= { 179, -179, 0, -61, -176, 228 },
 	},
-	/*
-	 * Pretend we do RGB32.  This is here on the assumption that the
-	 * upper layer will reformat RGB444 appropriately.
-	 *
-	 * The entire purpose for this thing's existence is to enable easy
-	 * display of RGB444 for debugging purposes.  It will come out soon.
-	 */
-	{
-		.desc		= "RGB32 (faked)",
-		.pixelformat	= V4L2_PIX_FMT_RGB32,
-		.regs		= ov7670_fmt_rgb444,
-		.cmatrix	= { 179, -179, 0, -61, -176, 228 },
-	},
 };
 #define N_OV7670_FMTS (sizeof(ov7670_formats)/sizeof(ov7670_formats[0]))
 
@@ -694,8 +681,6 @@ static int ov7670_try_fmt(struct i2c_cli
 	pix->width = wsize->width;
 	pix->height = wsize->height;
 	pix->bytesperline = pix->width*BYTES_PER_PIXEL;
-	if (pix->pixelformat == V4L2_PIX_FMT_RGB32)
-		pix->bytesperline *= 2;
 	pix->sizeimage = pix->height*pix->bytesperline;
 	return 0;
 }


More information about the Commits-kernel mailing list