diff options
Diffstat (limited to 'target/linux/bcm27xx/patches-5.15/950-0338-media-i2c-imx290-Replace-V4L2_CID_GAIN-with-V4L2_CID.patch')
-rw-r--r-- | target/linux/bcm27xx/patches-5.15/950-0338-media-i2c-imx290-Replace-V4L2_CID_GAIN-with-V4L2_CID.patch | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-5.15/950-0338-media-i2c-imx290-Replace-V4L2_CID_GAIN-with-V4L2_CID.patch b/target/linux/bcm27xx/patches-5.15/950-0338-media-i2c-imx290-Replace-V4L2_CID_GAIN-with-V4L2_CID.patch new file mode 100644 index 0000000000..f99cd4e99c --- /dev/null +++ b/target/linux/bcm27xx/patches-5.15/950-0338-media-i2c-imx290-Replace-V4L2_CID_GAIN-with-V4L2_CID.patch @@ -0,0 +1,38 @@ +From 8999614346ab0bbbd9ddd0798222edef7bce6b47 Mon Sep 17 00:00:00 2001 +From: David Plowman <david.plowman@raspberrypi.com> +Date: Thu, 4 Feb 2021 17:29:32 +0000 +Subject: [PATCH] media: i2c: imx290: Replace V4L2_CID_GAIN with + V4L2_CID_ANALOGUE_GAIN + +Most software (including libcamera) requires V4L2_CID_ANALOGUE_GAIN, +not V4L2_CID_GAIN. + +The range for the control is 0 to 100 for which the sensor uses only +analogue gain; higher values would involve digital gain which this +control should not apply. + +Signed-off-by: David Plowman <david.plowman@raspberrypi.com> +--- + drivers/media/i2c/imx290.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/drivers/media/i2c/imx290.c ++++ b/drivers/media/i2c/imx290.c +@@ -647,7 +647,7 @@ static int imx290_set_ctrl(struct v4l2_c + return 0; + + switch (ctrl->id) { +- case V4L2_CID_GAIN: ++ case V4L2_CID_ANALOGUE_GAIN: + ret = imx290_set_gain(imx290, ctrl->val); + break; + case V4L2_CID_EXPOSURE: +@@ -1327,7 +1327,7 @@ static int imx290_probe(struct i2c_clien + v4l2_ctrl_handler_init(&imx290->ctrls, 4); + + v4l2_ctrl_new_std(&imx290->ctrls, &imx290_ctrl_ops, +- V4L2_CID_GAIN, 0, 238, 1, 0); ++ V4L2_CID_ANALOGUE_GAIN, 0, 100, 1, 0); + + mode = imx290->current_mode; + imx290->hblank = v4l2_ctrl_new_std(&imx290->ctrls, &imx290_ctrl_ops, |