V4L/DVB (11544): gspca - m5602-mt9m111: Add experimental QVGA support

Signed-off-by: Erik Andr?n <erik.andren@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
Erik Andr?n 2009-01-20 04:16:28 -03:00 committed by Mauro Carvalho Chehab
parent f676bb3971
commit 60ed6e4f4e
2 changed files with 21 additions and 0 deletions

View File

@ -37,6 +37,15 @@ static int mt9m111_set_red_balance(struct gspca_dev *gspca_dev, __s32 val);
static struct v4l2_pix_format mt9m111_modes[] = { static struct v4l2_pix_format mt9m111_modes[] = {
{ {
320,
240,
V4L2_PIX_FMT_SBGGR8,
V4L2_FIELD_NONE,
.sizeimage = 320 * 240,
.bytesperline = 320,
.colorspace = V4L2_COLORSPACE_SRGB,
.priv = 0
}, {
640, 640,
480, 480,
V4L2_PIX_FMT_SBGGR8, V4L2_PIX_FMT_SBGGR8,
@ -340,6 +349,16 @@ int mt9m111_start(struct sd *sd)
err = m5602_write_sensor(sd, MT9M111_SC_R_MODE_CONTEXT_B, data, 2); err = m5602_write_sensor(sd, MT9M111_SC_R_MODE_CONTEXT_B, data, 2);
break; break;
case 320:
PDEBUG(D_V4L2, "Configuring camera for QVGA mode");
data[0] = MT9M111_RMB_OVER_SIZED;
data[1] = MT9M111_RMB_ROW_SKIP_4X |
MT9M111_RMB_COLUMN_SKIP_4X |
(sensor_settings[VFLIP_IDX] << 0) |
(sensor_settings[HFLIP_IDX] << 1);
err = m5602_write_sensor(sd, MT9M111_SC_R_MODE_CONTEXT_B, data, 2);
break;
} }
return err; return err;
} }

View File

@ -85,6 +85,8 @@
#define MT9M111_RMB_MIRROR_COLS (1 << 1) #define MT9M111_RMB_MIRROR_COLS (1 << 1)
#define MT9M111_RMB_ROW_SKIP_2X (1 << 2) #define MT9M111_RMB_ROW_SKIP_2X (1 << 2)
#define MT9M111_RMB_COLUMN_SKIP_2X (1 << 3) #define MT9M111_RMB_COLUMN_SKIP_2X (1 << 3)
#define MT9M111_RMB_ROW_SKIP_4X (1 << 4)
#define MT9M111_RMB_COLUMN_SKIP_4X (1 << 5)
#define MT9M111_COLOR_MATRIX_BYPASS (1 << 4) #define MT9M111_COLOR_MATRIX_BYPASS (1 << 4)
#define MT9M111_SEL_CONTEXT_B (1 << 3) #define MT9M111_SEL_CONTEXT_B (1 << 3)