media: ov5640: fix spurious streamon failures
authorHugues Fruchet <hugues.fruchet@st.com>
Mon, 22 Jan 2018 10:06:40 +0000 (05:06 -0500)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Tue, 23 Jan 2018 13:10:31 +0000 (08:10 -0500)
Time to time, stream on is failing with a strange positive error.
Error code is returned erroneously by ov5640_set_ctrl_exposure()
due to ov5640_get_vts() return value wrongly treated as error.
Fix this by forcing ret to 0 after ov5640_get_vts() success call,
in order that ret is set to success for rest of code sequence.

Signed-off-by: Hugues Fruchet <hugues.fruchet@st.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/i2c/ov5640.c

index f017742..e2dd352 100644 (file)
@@ -2057,6 +2057,7 @@ static int ov5640_set_ctrl_exposure(struct ov5640_dev *sensor, int exp)
                if (ret < 0)
                        return ret;
                max_exp += ret;
+               ret = 0;
 
                if (ctrls->exposure->val < max_exp)
                        ret = ov5640_set_exposure(sensor, ctrls->exposure->val);