On Wed, Jan 15, 2020 at 01:54:17PM +0200, Codrin Ciubotariu wrote: > From: Kamel Bouhara <kamel.bouhara@xxxxxxxxxxx> > > The at91 I2C controller can support bus recovery by re-assigning SCL > and SDA to gpios. Add the optional pinctrl and gpio properties to do > so. > > Signed-off-by: Kamel Bouhara <kamel.bouhara@xxxxxxxxxxx> > [codrin.ciubotariu@xxxxxxxxxxxxx: rebased] > Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@xxxxxxxxxxxxx> > Reviewed-by: Rob Herring <robh@xxxxxxxxxx> Acked-by: Ludovic Desroches <ludovic.desroches@xxxxxxxxxxxxx> > --- > > Changes in v3: > - rebased; > - added Reviewed-by tag from Rob; > > Changes in v2: > - none; > > Documentation/devicetree/bindings/i2c/i2c-at91.txt | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/Documentation/devicetree/bindings/i2c/i2c-at91.txt b/Documentation/devicetree/bindings/i2c/i2c-at91.txt > index d4bad86107b8..96c914e048f5 100644 > --- a/Documentation/devicetree/bindings/i2c/i2c-at91.txt > +++ b/Documentation/devicetree/bindings/i2c/i2c-at91.txt > @@ -28,8 +28,13 @@ Optional properties: > "atmel,sama5d4-i2c", > "atmel,sama5d2-i2c", > "microchip,sam9x60-i2c". > +- scl-gpios: specify the gpio related to SCL pin > +- sda-gpios: specify the gpio related to SDA pin > +- pinctrl: add extra pinctrl to configure i2c pins to gpio function for i2c > + bus recovery, call it "gpio" state > - Child nodes conforming to i2c bus binding > > + > Examples : > > i2c0: i2c@fff84000 { > @@ -64,6 +69,11 @@ i2c0: i2c@f8034600 { > clocks = <&flx0>; > atmel,fifo-size = <16>; > i2c-sda-hold-time-ns = <336>; > + pinctrl-names = "default", "gpio"; > + pinctrl-0 = <&pinctrl_i2c0>; > + pinctrl-1 = <&pinctrl_i2c0_gpio>; > + sda-gpios = <&pioA 30 GPIO_ACTIVE_HIGH>; > + scl-gpios = <&pioA 31 GPIO_ACTIVE_HIGH>; > > wm8731: wm8731@1a { > compatible = "wm8731"; > -- > 2.20.1 >