Javier Martinez Canillas <[email protected]> writes:

> 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]>
>

Pushed to drm-misc (drm-misc-fixes). Thanks!

-- 
Best regards,

Javier Martinez Canillas
Core Platforms
Red Hat

Reply via email to