From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: From: Pantelis Antoniou To: Lee Jones Cc: Linus Walleij , Alexandre Courbot , Rob Herring , Mark Rutland , Frank Rowand , Wolfram Sang , Richard Purdie , Jacek Anaszewski , Jean Delvare , Peter Rosin , Avirup Banerjee , Georgi Vlaev , Guenter Roeck , JawaharBalaji Thirumalaisamy , Pantelis Antoniou , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org, linux-i2c@vger.kernel.org, linux-leds@vger.kernel.org, linux-hwmon@vger.kernel.org Subject: [PATCH 06/10] gpio: gpio-i2cs: Document bindings of I2CS FPGA GPIO block Date: Fri, 7 Oct 2016 18:21:05 +0300 Message-Id: <1475853669-22480-7-git-send-email-pantelis.antoniou@konsulko.com> In-Reply-To: <1475853669-22480-1-git-send-email-pantelis.antoniou@konsulko.com> References: <1475853669-22480-1-git-send-email-pantelis.antoniou@konsulko.com> List-ID: From: Georgi Vlaev Add device tree bindings document for the GPIO driver of Juniper's I2CS FPGA. Signed-off-by: Georgi Vlaev [Ported from Juniper kernel] Signed-off-by: Pantelis Antoniou --- .../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