Tom Rini | 53633a8 | 2024-02-29 12:33:36 -0500 | [diff] [blame] | 1 | NXP LPC32xx SoC GPIO controller |
| 2 | |
| 3 | Required properties: |
| 4 | - compatible: must be "nxp,lpc3220-gpio" |
| 5 | - reg: Physical base address and length of the controller's registers. |
| 6 | - gpio-controller: Marks the device node as a GPIO controller. |
| 7 | - #gpio-cells: Should be 3: |
| 8 | 1) bank: |
| 9 | 0: GPIO P0 |
| 10 | 1: GPIO P1 |
| 11 | 2: GPIO P2 |
| 12 | 3: GPIO P3 |
| 13 | 4: GPI P3 |
| 14 | 5: GPO P3 |
| 15 | 2) pin number |
| 16 | 3) optional parameters: |
| 17 | - bit 0 specifies polarity (0 for normal, 1 for inverted) |
| 18 | - reg: Index of the GPIO group |
| 19 | |
| 20 | Example: |
| 21 | |
| 22 | gpio: gpio@40028000 { |
| 23 | compatible = "nxp,lpc3220-gpio"; |
| 24 | reg = <0x40028000 0x1000>; |
| 25 | gpio-controller; |
| 26 | #gpio-cells = <3>; /* bank, pin, flags */ |
| 27 | }; |
| 28 | |
| 29 | leds { |
| 30 | compatible = "gpio-leds"; |
| 31 | |
| 32 | led0 { |
| 33 | gpios = <&gpio 5 1 1>; /* GPO_P3 1, active low */ |
| 34 | linux,default-trigger = "heartbeat"; |
| 35 | default-state = "off"; |
| 36 | }; |
| 37 | |
| 38 | led1 { |
| 39 | gpios = <&gpio 5 14 1>; /* GPO_P3 14, active low */ |
| 40 | linux,default-trigger = "timer"; |
| 41 | default-state = "off"; |
| 42 | }; |
| 43 | }; |