linux/Documentation/devicetree/bindings/gpio/gpio-xilinx.txt
<<
>>
Prefs
   1Xilinx plb/axi GPIO controller
   2
   3Dual channel GPIO controller with configurable number of pins
   4(from 1 to 32 per channel). Every pin can be configured as
   5input/output/tristate. Both channels share the same global IRQ but
   6local interrupts can be enabled on channel basis.
   7
   8Required properties:
   9- compatible : Should be "xlnx,xps-gpio-1.00.a"
  10- reg : Address and length of the register set for the device
  11- #gpio-cells : Should be two. The first cell is the pin number and the
  12  second cell is used to specify optional parameters (currently unused).
  13- gpio-controller : Marks the device node as a GPIO controller.
  14
  15Optional properties:
  16- interrupts : Interrupt mapping for GPIO IRQ.
  17- interrupt-parent : Phandle for the interrupt controller that
  18  services interrupts for this device.
  19- xlnx,all-inputs : if n-th bit is setup, GPIO-n is input
  20- xlnx,dout-default : if n-th bit is 1, GPIO-n default value is 1
  21- xlnx,gpio-width : gpio width
  22- xlnx,tri-default : if n-th bit is 1, GPIO-n is in tristate mode
  23- xlnx,is-dual : if 1, controller also uses the second channel
  24- xlnx,all-inputs-2 : as above but for the second channel
  25- xlnx,dout-default-2 : as above but the second channel
  26- xlnx,gpio2-width : as above but for the second channel
  27- xlnx,tri-default-2 : as above but for the second channel
  28
  29
  30Example:
  31gpio: gpio@40000000 {
  32        #gpio-cells = <2>;
  33        compatible = "xlnx,xps-gpio-1.00.a";
  34        gpio-controller ;
  35        interrupt-parent = <&microblaze_0_intc>;
  36        interrupts = < 6 2 >;
  37        reg = < 0x40000000 0x10000 >;
  38        xlnx,all-inputs = <0x0>;
  39        xlnx,all-inputs-2 = <0x0>;
  40        xlnx,dout-default = <0x0>;
  41        xlnx,dout-default-2 = <0x0>;
  42        xlnx,gpio-width = <0x2>;
  43        xlnx,gpio2-width = <0x2>;
  44        xlnx,interrupt-present = <0x1>;
  45        xlnx,is-dual = <0x1>;
  46        xlnx,tri-default = <0xffffffff>;
  47        xlnx,tri-default-2 = <0xffffffff>;
  48} ;
  49