Thread (23 messages) 23 messages, 5 authors, 2016-10-21
STALE3527d

[PATCH 06/10] gpio: gpio-i2cs: Document bindings of I2CS FPGA GPIO block

From: Pantelis Antoniou <hidden>
Date: 2016-10-07 15:24:37
Also in: linux-gpio, linux-hwmon, linux-i2c, linux-leds, lkml
Subsystem: gpio subsystem, open firmware and flattened device tree bindings, the rest · Maintainers: Linus Walleij, Bartosz Golaszewski, Rob Herring, Krzysztof Kozlowski, Conor Dooley, Linus Torvalds

From: Georgi Vlaev <redacted>

Add device tree bindings document for the GPIO driver of
Juniper's I2CS FPGA.

Signed-off-by: Georgi Vlaev <redacted>
[Ported from Juniper kernel]
Signed-off-by: Pantelis Antoniou <redacted>
---
 .../devicetree/bindings/gpio/jnx,gpio-i2cs.txt     | 43 ++++++++++++++++++++++
 1 file changed, 43 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/gpio/jnx,gpio-i2cs.txt
diff --git a/Documentation/devicetree/bindings/gpio/jnx,gpio-i2cs.txt b/Documentation/devicetree/bindings/gpio/jnx,gpio-i2cs.txt
new file mode 100644
index 0000000..835b7fb4
--- /dev/null
+++ b/Documentation/devicetree/bindings/gpio/jnx,gpio-i2cs.txt
@@ -0,0 +1,43 @@
+Juniper I2CS FPGA GPIO presence block
+
+This is virtual gpio driver, that maps each bit of the I2CS FPGA to
+a gpio. It's used as a compatibility replacement for FRUs that use
+I2CS FPGA to report presence, control and report power status in
+the Juniper's driver infra that uses gpios. Compatible with any I2CS.
+
+Required properties:
+
+Required properties:
+- compatible: "jnx,gpio-i2cs"
+
+- reg:
+    Address on the I2C bus of the I2CS FPGA
+
+- gpio-controller: Marks the device node as a gpio controller.
+
+- interrupt-controller: Marks the device node as an interrupt
+			controller.
+
+- i2c-gpio-map: Map of "I2CS register" and "direction". The registers
+	are 8 bit wide, each bit of the register is mapped to either
+	input or output depending on the bits of the "direction". If
+	the bit in the direction is 1, then that bit from the I2CS
+	register is mapped to gpio input, otherwise to gpio output.
+
+- #gpio-cells : Should be two.  The first cell is the pin number and
+	the second cell is used to specify the gpio polarity:
+	0 = active high
+	1 = active low
+
+Optional properties:
+
+Example:
+
+cb0_slave: i2c-slave@54 {
+	compatible = "jnx,gpio-i2cs";
+	reg = <0x54>;
+	#gpio-cells = <2>;
+	gpio-controller;
+	interrupt-controller;
+	i2c-gpio-map = <0x21 0xff>;	/* power status (bit 6) */
+};
-- 
1.9.1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help