dt-bindings: i2c: at91: document optional bus recovery properties
authorKamel Bouhara <kamel.bouhara@bootlin.com>
Wed, 15 Jan 2020 11:54:17 +0000 (13:54 +0200)
committerWolfram Sang <wsa@the-dreams.de>
Wed, 26 Feb 2020 10:06:41 +0000 (11:06 +0100)
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@bootlin.com>
[codrin.ciubotariu@microchip.com: rebased]
Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@microchip.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Acked-by: Ludovic Desroches <ludovic.desroches@microchip.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Documentation/devicetree/bindings/i2c/i2c-at91.txt

index d4bad86..96c914e 100644 (file)
@@ -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";