diff mbox series

[2/4] media: i2c: ov02c10: Make reset gpio logic optional

Message ID 20250315134009.157132-3-bryan.odonoghue@linaro.org (mailing list archive)
State New
Headers show
Series ov02c10: OF extensions and fixups | expand

Commit Message

Bryan O'Donoghue March 15, 2025, 1:40 p.m. UTC
The reset gpio is optional. Only trigger the reset logic if the reset gpio
pin is valid.

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
---
 drivers/media/i2c/ov02c10.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
diff mbox series

Patch

diff --git a/drivers/media/i2c/ov02c10.c b/drivers/media/i2c/ov02c10.c
index f6542cdf7472..595998e60b22 100644
--- a/drivers/media/i2c/ov02c10.c
+++ b/drivers/media/i2c/ov02c10.c
@@ -664,7 +664,8 @@  static int ov02c10_power_off(struct device *dev)
 	struct v4l2_subdev *sd = dev_get_drvdata(dev);
 	struct ov02c10 *ov02c10 = to_ov02c10(sd);
 
-	gpiod_set_value_cansleep(ov02c10->reset, 1);
+	if (ov02c10->reset)
+		gpiod_set_value_cansleep(ov02c10->reset, 1);
 
 	regulator_bulk_disable(ARRAY_SIZE(ov02c10_supply_names),
 			       ov02c10->supplies);
@@ -694,8 +695,10 @@  static int ov02c10_power_on(struct device *dev)
 		return ret;
 	}
 
-	gpiod_set_value_cansleep(ov02c10->reset, 0);
-	usleep_range(1500, 1800);
+	if (ov02c10->reset) {
+		gpiod_set_value_cansleep(ov02c10->reset, 0);
+		usleep_range(1500, 1800);
+	}
 
 	return 0;
 }