1*c66ec88fSEmmanuel VadotIntel IXP4xx XScale Networking Processors GPIO 2*c66ec88fSEmmanuel Vadot 3*c66ec88fSEmmanuel VadotThis GPIO controller is found in the Intel IXP4xx processors. 4*c66ec88fSEmmanuel VadotIt supports 16 GPIO lines. 5*c66ec88fSEmmanuel Vadot 6*c66ec88fSEmmanuel VadotThe interrupt portions of the GPIO controller is hierarchical: 7*c66ec88fSEmmanuel Vadotthe synchronous edge detector is part of the GPIO block, but the 8*c66ec88fSEmmanuel Vadotactual enabling/disabling of the interrupt line is done in the 9*c66ec88fSEmmanuel Vadotmain IXP4xx interrupt controller which has a 1:1 mapping for 10*c66ec88fSEmmanuel Vadotthe first 12 GPIO lines to 12 system interrupts. 11*c66ec88fSEmmanuel Vadot 12*c66ec88fSEmmanuel VadotThe remaining 4 GPIO lines can not be used for receiving 13*c66ec88fSEmmanuel Vadotinterrupts. 14*c66ec88fSEmmanuel Vadot 15*c66ec88fSEmmanuel VadotThe interrupt parent of this GPIO controller must be the 16*c66ec88fSEmmanuel VadotIXP4xx interrupt controller. 17*c66ec88fSEmmanuel Vadot 18*c66ec88fSEmmanuel VadotRequired properties: 19*c66ec88fSEmmanuel Vadot 20*c66ec88fSEmmanuel Vadot- compatible : Should be 21*c66ec88fSEmmanuel Vadot "intel,ixp4xx-gpio" 22*c66ec88fSEmmanuel Vadot- reg : Should contain registers location and length 23*c66ec88fSEmmanuel Vadot- gpio-controller : marks this as a GPIO controller 24*c66ec88fSEmmanuel Vadot- #gpio-cells : Should be 2, see gpio/gpio.txt 25*c66ec88fSEmmanuel Vadot- interrupt-controller : marks this as an interrupt controller 26*c66ec88fSEmmanuel Vadot- #interrupt-cells : a standard two-cell interrupt, see 27*c66ec88fSEmmanuel Vadot interrupt-controller/interrupts.txt 28*c66ec88fSEmmanuel Vadot 29*c66ec88fSEmmanuel VadotExample: 30*c66ec88fSEmmanuel Vadot 31*c66ec88fSEmmanuel Vadotgpio0: gpio@c8004000 { 32*c66ec88fSEmmanuel Vadot compatible = "intel,ixp4xx-gpio"; 33*c66ec88fSEmmanuel Vadot reg = <0xc8004000 0x1000>; 34*c66ec88fSEmmanuel Vadot gpio-controller; 35*c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 36*c66ec88fSEmmanuel Vadot interrupt-controller; 37*c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 38*c66ec88fSEmmanuel Vadot}; 39