media: i2c: ov5670: Fix PIXEL_RATE minimum value
authorJacopo Mondi <jacopo@jmondi.org>
Mon, 21 Dec 2020 17:52:20 +0000 (18:52 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 4 Mar 2021 09:26:20 +0000 (10:26 +0100)
[ Upstream commit dc1eb7c9c290cba52937c9a224b22a400bb0ffd7 ]

The driver currently reports a single supported value for
V4L2_CID_PIXEL_RATE and initializes the control's minimum value to 0,
which is very risky, as userspace might accidentally use it as divider
when calculating the time duration of a line.

Fix this by using as minimum the only supported value when registering
the control.

Fixes: 5de35c9b8dcd1 ("media: i2c: Add Omnivision OV5670 5M sensor support")
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/media/i2c/ov5670.c

index 041fcbb4eebdf8cd4e6c44ee95042956e6da7074..79e608dba4b6d75dcf23a236c8f588ebab756ac0 100644 (file)
@@ -2081,7 +2081,8 @@ static int ov5670_init_controls(struct ov5670 *ov5670)
 
        /* By default, V4L2_CID_PIXEL_RATE is read only */
        ov5670->pixel_rate = v4l2_ctrl_new_std(ctrl_hdlr, &ov5670_ctrl_ops,
-                                              V4L2_CID_PIXEL_RATE, 0,
+                                              V4L2_CID_PIXEL_RATE,
+                                              link_freq_configs[0].pixel_rate,
                                               link_freq_configs[0].pixel_rate,
                                               1,
                                               link_freq_configs[0].pixel_rate);