Add a delay after the OV490 chip is put in reset state. The reset
signal shall be held for at least 250 useconds.

Signed-off-by: Jacopo Mondi <jacopo+rene...@jmondi.org>
---
 drivers/media/i2c/rdacm21.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/media/i2c/rdacm21.c b/drivers/media/i2c/rdacm21.c
index 553e3f03752b..6be8ce130e78 100644
--- a/drivers/media/i2c/rdacm21.c
+++ b/drivers/media/i2c/rdacm21.c
@@ -469,7 +469,10 @@ static int rdacm21_initialize(struct rdacm21_device *dev)
        if (ret)
                return ret;
 
-       /* Enable GPIO1 and hold OV490 in reset during max9271 configuration. */
+       /*
+        * Enable GPIO1 and hold OV490 in reset during max9271 configuration.
+        * The reset signal has to be asserted for at least 250 useconds.
+        */
        ret = max9271_enable_gpios(&dev->serializer, MAX9271_GPIO1OUT);
        if (ret)
                return ret;
@@ -477,6 +480,7 @@ static int rdacm21_initialize(struct rdacm21_device *dev)
        ret = max9271_clear_gpios(&dev->serializer, MAX9271_GPIO1OUT);
        if (ret)
                return ret;
+       usleep_range(250, 500);
 
        ret = max9271_configure_gmsl_link(&dev->serializer);
        if (ret)
-- 
2.31.1

Reply via email to