From 197775fb243b0ecab248f213d70bf0ac200e11f9 Mon Sep 17 00:00:00 2001
From: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Date: Wed, 10 Jun 2009 14:14:49 +0200
Subject: [PATCH 27/38] tw9910: do not lie about cropping abilities

The current tw9910 driver does not implement cropping correctly. Therefore, and
also because various rectangles in struct soc_camera_device are in user scale,
we cannot and shall not use rect_current as window location.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
---
 drivers/media/video/tw9910.c |    6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/media/video/tw9910.c b/drivers/media/video/tw9910.c
index 83596cb..735d0bd 100644
--- a/drivers/media/video/tw9910.c
+++ b/drivers/media/video/tw9910.c
@@ -719,9 +719,10 @@ static int tw9910_s_fmt(struct v4l2_subdev *sd, struct v4l2_format *f)
 	struct i2c_client *client = sd->priv;
 	struct soc_camera_device *icd = client->dev.platform_data;
 	struct v4l2_pix_format *pix = &f->fmt.pix;
+	/* See tw9910_set_crop() - no proper cropping support */
 	struct v4l2_rect rect = {
-		.left	= icd->rect_current.left,
-		.top	= icd->rect_current.top,
+		.left	= 0,
+		.top	= 0,
 		.width	= pix->width,
 		.height	= pix->height,
 	};
@@ -850,6 +851,7 @@ static struct v4l2_subdev_ops tw9910_subdev_ops = {
  * i2c_driver function
  */
 
+/* This is called during probe, so, setting rect_max is Ok here: scale == 1 */
 static void limit_to_scale(struct soc_camera_device *icd,
 			   const struct tw9910_scale_ctrl *scale)
 {
-- 
1.6.2.4

