1GPIO via CREG (control registers) driver 2 331 9 7 5 0 < bit number 4| | | | | 5[ not used | gpio-1 | gpio-0 | <-shift-> ] < 32 bit register 6 ^ ^ 7 | | 8 write 0x2 == set output to "1" (activate) 9 write 0x3 == set output to "0" (deactivate) 10 11Required properties: 12- compatible : "snps,creg-gpio" 13- reg : Exactly one register range with length 0x4. 14- #gpio-cells : Should be one - the pin number. 15- gpio-controller : Marks the device node as a GPIO controller. 16- gpio-count: Number of GPIO pins. 17- gpio-bit-per-line: Number of bits per gpio line (see picture). 18- gpio-first-shift: Shift (in bits) of the first GPIO field in register 19 (see picture). 20- gpio-activate-val: Value should be set in corresponding field to set 21 output to "1" (see picture). Applied to all GPIO ports. 22- gpio-deactivate-val: Value should be set in corresponding field to set 23 output to "0" (see picture). Applied to all GPIO ports. 24 25Optional properties: 26- gpio-bank-name: name of bank (as default driver name is used is used) 27- gpio-default-val: array of default output values (must me 0 or 1) 28 29Example (see picture): 30 31gpio: gpio@f00014b0 { 32 compatible = "snps,creg-gpio"; 33 reg = <0xf00014b0 0x4>; 34 gpio-controller; 35 #gpio-cells = <1>; 36 gpio-bank-name = "hsdk-spi-cs"; 37 gpio-count = <2>; 38 gpio-first-shift = <5>; 39 gpio-bit-per-line = <2>; 40 gpio-activate-val = <2>; 41 gpio-deactivate-val = <3>; 42 gpio-default-val = <1 1>; 43}; 44