Julien Chauveau <[email protected]> writes:

Hello Julien,

> The it66121_ctx structure has a gpio_reset field, and it66121_hw_reset()
> calls gpiod_set_value() on it. However, the GPIO descriptor is never
> acquired via devm_gpiod_get(), leaving gpio_reset as NULL throughout
> the driver lifetime.
>
> gpiod_set_value() silently returns when passed a NULL descriptor, so
> the hardware reset sequence in it66121_hw_reset() is a no-op. This
> leaves the chip in an undefined state at probe time, which can prevent
> it from responding on the I2C bus.
>
> The DT binding marks reset-gpios as a required property, so all
> compliant device trees provide this GPIO. Add the missing
> devm_gpiod_get() call after enabling power supplies and before the
> hardware reset, so the chip is properly reset with power applied.
>
> Fixes: 988156dc2fc9 ("drm: bridge: add it66121 driver")
> Cc: [email protected]
> Signed-off-by: Julien Chauveau <[email protected]>
> ---

The patch looks good to me. I've also tested it on my BeaglePlay board.

Reviewed-by: Javier Martinez Canillas <[email protected]>
Tested-by: Javier Martinez Canillas <[email protected]>

-- 
Best regards,

Javier Martinez Canillas
Core Platforms
Red Hat

Reply via email to