1*c66ec88fSEmmanuel Vadot* Freescale MPC512x/MPC8xxx/QorIQ/Layerscape GPIO controller 2*c66ec88fSEmmanuel Vadot 3*c66ec88fSEmmanuel VadotRequired properties: 4*c66ec88fSEmmanuel Vadot- compatible : Should be "fsl,<soc>-gpio" 5*c66ec88fSEmmanuel Vadot The following <soc>s are known to be supported: 6*c66ec88fSEmmanuel Vadot mpc5121, mpc5125, mpc8349, mpc8572, mpc8610, pq3, qoriq, 7*c66ec88fSEmmanuel Vadot ls1021a, ls1043a, ls2080a, ls1028a, ls1088a. 8*c66ec88fSEmmanuel Vadot- reg : Address and length of the register set for the device 9*c66ec88fSEmmanuel Vadot- interrupts : Should be the port interrupt shared by all 32 pins. 10*c66ec88fSEmmanuel Vadot- #gpio-cells : Should be two. The first cell is the pin number and 11*c66ec88fSEmmanuel Vadot the second cell is used to specify the gpio polarity: 12*c66ec88fSEmmanuel Vadot 0 = active high 13*c66ec88fSEmmanuel Vadot 1 = active low 14*c66ec88fSEmmanuel Vadot 15*c66ec88fSEmmanuel VadotOptional properties: 16*c66ec88fSEmmanuel Vadot- little-endian : GPIO registers are used as little endian. If not 17*c66ec88fSEmmanuel Vadot present registers are used as big endian by default. 18*c66ec88fSEmmanuel Vadot 19*c66ec88fSEmmanuel VadotExample of gpio-controller node for a mpc5125 SoC: 20*c66ec88fSEmmanuel Vadot 21*c66ec88fSEmmanuel Vadotgpio0: gpio@1100 { 22*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5125-gpio"; 23*c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 24*c66ec88fSEmmanuel Vadot reg = <0x1100 0x080>; 25*c66ec88fSEmmanuel Vadot interrupts = <78 0x8>; 26*c66ec88fSEmmanuel Vadot}; 27*c66ec88fSEmmanuel Vadot 28*c66ec88fSEmmanuel VadotExample of gpio-controller node for a ls2080a SoC: 29*c66ec88fSEmmanuel Vadot 30*c66ec88fSEmmanuel Vadotgpio0: gpio@2300000 { 31*c66ec88fSEmmanuel Vadot compatible = "fsl,ls2080a-gpio", "fsl,qoriq-gpio"; 32*c66ec88fSEmmanuel Vadot reg = <0x0 0x2300000 0x0 0x10000>; 33*c66ec88fSEmmanuel Vadot interrupts = <0 36 0x4>; /* Level high type */ 34*c66ec88fSEmmanuel Vadot gpio-controller; 35*c66ec88fSEmmanuel Vadot little-endian; 36*c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 37*c66ec88fSEmmanuel Vadot interrupt-controller; 38*c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 39*c66ec88fSEmmanuel Vadot}; 40*c66ec88fSEmmanuel Vadot 41*c66ec88fSEmmanuel Vadot 42*c66ec88fSEmmanuel VadotExample of gpio-controller node for a ls1028a/ls1088a SoC: 43*c66ec88fSEmmanuel Vadot 44*c66ec88fSEmmanuel Vadotgpio1: gpio@2300000 { 45*c66ec88fSEmmanuel Vadot compatible = "fsl,ls1028a-gpio", "fsl,ls1088a-gpio", "fsl,qoriq-gpio"; 46*c66ec88fSEmmanuel Vadot reg = <0x0 0x2300000 0x0 0x10000>; 47*c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 48*c66ec88fSEmmanuel Vadot gpio-controller; 49*c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 50*c66ec88fSEmmanuel Vadot interrupt-controller; 51*c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 52*c66ec88fSEmmanuel Vadot little-endian; 53*c66ec88fSEmmanuel Vadot}; 54