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 = <µblaze_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