]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - doc/device-tree-bindings/i2c/i2c-gpio.txt
dm: i2c: add i2c-gpio driver
[karo-tx-uboot.git] / doc / device-tree-bindings / i2c / i2c-gpio.txt
diff --git a/doc/device-tree-bindings/i2c/i2c-gpio.txt b/doc/device-tree-bindings/i2c/i2c-gpio.txt
new file mode 100644 (file)
index 0000000..ba56ed5
--- /dev/null
@@ -0,0 +1,37 @@
+I2C gpio device binding
+=======================
+
+Driver:
+- drivers/i2c/i2c-gpio.c
+
+Software i2c device-tree node properties:
+Required:
+* #address-cells = <1>;
+* #size-cells = <0>;
+* compatible = "i2c-gpio";
+* gpios = <sda ...>, <scl ...>;
+
+Optional:
+* i2c-gpio,delay-us = <5>;
+   The resulting transfer speed can be adjusted by setting the delay[us]
+   between gpio-toggle operations. Speed [Hz] = 1000000 / 4 * udelay[us],
+   It not defined, then default is 5us (~50KHz).
+
+Example:
+
+i2c-gpio@1 {
+       #address-cells = <1>;
+       #size-cells = <0>;
+
+       compatible = "i2c-gpio";
+       gpios = <&gpd1 0 GPIO_ACTIVE_HIGH>, /* SDA */
+               <&gpd1 1 GPIO_ACTIVE_HIGH>; /* CLK */
+
+       i2c-gpio,delay-us = <5>;
+
+       some_device@5 {
+               compatible = "some_device";
+               reg = <0x5>;
+               ...
+       };
+};