media: ov5647: change defaults to better match raw camera applications.
authorDavid Plowman <david.plowman@raspberrypi.com>
Wed, 29 Jan 2020 15:31:32 +0000 (15:31 +0000)
committerpopcornmix <popcornmix@gmail.com>
Wed, 27 Jan 2021 19:13:09 +0000 (19:13 +0000)
Specifically:

* AWB is now off by default.

* AEC/AGC is also off by default.

* The default mode is changed to the 10-bit 2x2 binned mode.

AWB and AEC/AGC can be re-enabled using the usual V4L2 controls. The
original 8-bit mode will be respected if an application requests the
8-bit format.

Signed-off-by: David Plowman <david.plowman@raspberrypi.com>
Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
drivers/media/i2c/ov5647.c

index fc6c5d9..66b3ee5 100644 (file)
@@ -669,8 +669,8 @@ static struct ov5647_mode supported_modes_10bit[] = {
        },
 };
 
-/* Use original 8-bit VGA mode as default. */
-#define OV5647_DEFAULT_MODE (&supported_modes_8bit[0])
+/* Use 2x2 binned 10-bit mode as default. */
+#define OV5647_DEFAULT_MODE (&supported_modes_10bit[2])
 
 static int ov5647_write(struct v4l2_subdev *sd, u16 reg, u8 val)
 {
@@ -1367,18 +1367,18 @@ static int ov5647_probe(struct i2c_client *client)
                          0,  /* min */
                          1,  /* max */
                          1,  /* step */
-                         1); /* default */
+                         0); /* default */
        v4l2_ctrl_new_std(&sensor->ctrls, &ov5647_ctrl_ops,
                          V4L2_CID_AUTO_WHITE_BALANCE,
                          0,  /* min */
                          1,  /* max */
                          1,  /* step */
-                         1); /* default */
+                         0); /* default */
        v4l2_ctrl_new_std_menu(&sensor->ctrls, &ov5647_ctrl_ops,
                               V4L2_CID_EXPOSURE_AUTO,
                               V4L2_EXPOSURE_MANUAL,  /* max */
                               0,                     /* skip_mask */
-                              V4L2_EXPOSURE_AUTO);   /* default */
+                              V4L2_EXPOSURE_MANUAL); /* default */
        ctrl = v4l2_ctrl_new_std(&sensor->ctrls, &ov5647_ctrl_ops,
                                 V4L2_CID_EXPOSURE,
                                 4,     /* min lines */