On Fri, Jun 19, 2020 at 05:19:00PM +0300, Codrin Ciubotariu wrote: > GPIO recovery has been added already for some I2C bus drivers, such as > imx, pxa and at91. These drivers use similar bindings and have more or > less the same code for recovery. For this reason, we aim to move the > GPIO bus recovery implementation to the I2C core so that other drivers > can benefit from it, with small modifications. > This implementation initializes the pinctrl states and the SDA/SCL > GPIOs based on common bindings. The I2C bus drivers can still use > different bindings or other particular recovery steps if needed. > The ugly part with this patch series is the handle of PROBE_DEFER > which could be returned by devm_gpiod_get(). This changes things a > little for i2c_register_adapter() and for this reason this step is > implemented in a sperate patch. > The at91 Microchip driver is the first to use this implementation, > with an AI to move the rest of the drivers in the following steps. Thanks for doing this! On a first high level review, this looks very good. I have one question in patch 1. From Tuesday on, I'll be off-the-net for two weeks. Still I think it will be all good for the 5.9 merge window unless we encounter an unexpected problem. But as said, so far it is looking good!