Re: [PATCH 1/4] media: i2c: ov2685: Make reset gpio optional

From: Jacopo Mondi
Date: Sun Jan 29 2023 - 06:23:05 EST


Hi Luca

On Sun, Jan 29, 2023 at 10:42:35AM +0100, Luca Weiss wrote:
> In some setups XSHUTDOWN is connected to DOVDD when it's unused,
> therefore treat the reset gpio as optional.

I don't have a datasheet for this sensor, but OV sensors usually have
to gpio lines to control powerdown and reset. Datasheets usually
suggest to hook one of the 2 to DOVDD and control the other from the
SoC. How is the sensor hooked up in your design ? No gpio lines is
controlled by the SoC ?

Another question is if we need to software-reset the sensor if no gpio
line is hooked up to XSHUTDOWN.

>
> Signed-off-by: Luca Weiss <luca@xxxxxxxxx>
> ---
> drivers/media/i2c/ov2685.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/media/i2c/ov2685.c b/drivers/media/i2c/ov2685.c
> index a3b524f15d89..a422f4c8a2eb 100644
> --- a/drivers/media/i2c/ov2685.c
> +++ b/drivers/media/i2c/ov2685.c
> @@ -734,7 +734,7 @@ static int ov2685_probe(struct i2c_client *client,
> if (clk_get_rate(ov2685->xvclk) != OV2685_XVCLK_FREQ)
> dev_warn(dev, "xvclk mismatched, modes are based on 24MHz\n");
>
> - ov2685->reset_gpio = devm_gpiod_get(dev, "reset", GPIOD_OUT_LOW);
> + ov2685->reset_gpio = devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_LOW);
> if (IS_ERR(ov2685->reset_gpio)) {
> dev_err(dev, "Failed to get reset-gpios\n");
> return -EINVAL;
>
> --
> 2.39.1
>