18c2ecf20Sopenharmony_ciIntel IXP4xx XScale Networking Processors GPIO 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ciThis GPIO controller is found in the Intel IXP4xx processors. 48c2ecf20Sopenharmony_ciIt supports 16 GPIO lines. 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ciThe interrupt portions of the GPIO controller is hierarchical: 78c2ecf20Sopenharmony_cithe synchronous edge detector is part of the GPIO block, but the 88c2ecf20Sopenharmony_ciactual enabling/disabling of the interrupt line is done in the 98c2ecf20Sopenharmony_cimain IXP4xx interrupt controller which has a 1:1 mapping for 108c2ecf20Sopenharmony_cithe first 12 GPIO lines to 12 system interrupts. 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ciThe remaining 4 GPIO lines can not be used for receiving 138c2ecf20Sopenharmony_ciinterrupts. 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ciThe interrupt parent of this GPIO controller must be the 168c2ecf20Sopenharmony_ciIXP4xx interrupt controller. 178c2ecf20Sopenharmony_ci 188c2ecf20Sopenharmony_ciRequired properties: 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci- compatible : Should be 218c2ecf20Sopenharmony_ci "intel,ixp4xx-gpio" 228c2ecf20Sopenharmony_ci- reg : Should contain registers location and length 238c2ecf20Sopenharmony_ci- gpio-controller : marks this as a GPIO controller 248c2ecf20Sopenharmony_ci- #gpio-cells : Should be 2, see gpio/gpio.txt 258c2ecf20Sopenharmony_ci- interrupt-controller : marks this as an interrupt controller 268c2ecf20Sopenharmony_ci- #interrupt-cells : a standard two-cell interrupt, see 278c2ecf20Sopenharmony_ci interrupt-controller/interrupts.txt 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ciExample: 308c2ecf20Sopenharmony_ci 318c2ecf20Sopenharmony_cigpio0: gpio@c8004000 { 328c2ecf20Sopenharmony_ci compatible = "intel,ixp4xx-gpio"; 338c2ecf20Sopenharmony_ci reg = <0xc8004000 0x1000>; 348c2ecf20Sopenharmony_ci gpio-controller; 358c2ecf20Sopenharmony_ci #gpio-cells = <2>; 368c2ecf20Sopenharmony_ci interrupt-controller; 378c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 388c2ecf20Sopenharmony_ci}; 39