From: Manivannan Sadhasivam <manivannan.sadhasi...@linaro.org>

The 10ms settle time is needed only at the end of all consecutive
register writes. So move the delay to outside of the for loop of
imx290_set_register_array().

Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasi...@linaro.org>
Signed-off-by: Andrey Konovalov <andrey.konova...@linaro.org>
---
 drivers/media/i2c/imx290.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/media/i2c/imx290.c b/drivers/media/i2c/imx290.c
index fd147fac5ef2..02001c1b0dfc 100644
--- a/drivers/media/i2c/imx290.c
+++ b/drivers/media/i2c/imx290.c
@@ -404,11 +404,11 @@ static int imx290_set_register_array(struct imx290 
*imx290,
                ret = imx290_write_reg(imx290, settings->reg, settings->val);
                if (ret < 0)
                        return ret;
-
-               /* Settle time is 10ms for all registers */
-               msleep(10);
        }
 
+       /* Provide 10ms settle time */
+       msleep(10);
+
        return 0;
 }
 
-- 
2.17.1

Reply via email to