xref: /linux/Documentation/devicetree/bindings/gpio/nxp,lpc1850-gpio.yaml (revision fcb117e0758d1462128a50c5788555e03b48833b)
1*114ab5afSFrank Li# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*114ab5afSFrank Li%YAML 1.2
3*114ab5afSFrank Li---
4*114ab5afSFrank Li$id: http://devicetree.org/schemas/gpio/nxp,lpc1850-gpio.yaml#
5*114ab5afSFrank Li$schema: http://devicetree.org/meta-schemas/core.yaml#
6*114ab5afSFrank Li
7*114ab5afSFrank Lititle: NXP LPC18xx/43xx GPIO controller
8*114ab5afSFrank Li
9*114ab5afSFrank Limaintainers:
10*114ab5afSFrank Li  - Frank Li <Frank.Li@nxp.com>
11*114ab5afSFrank Li
12*114ab5afSFrank Liproperties:
13*114ab5afSFrank Li  compatible:
14*114ab5afSFrank Li    const: nxp,lpc1850-gpio
15*114ab5afSFrank Li
16*114ab5afSFrank Li  reg:
17*114ab5afSFrank Li    minItems: 1
18*114ab5afSFrank Li    maxItems: 4
19*114ab5afSFrank Li
20*114ab5afSFrank Li  reg-names:
21*114ab5afSFrank Li    minItems: 1
22*114ab5afSFrank Li    items:
23*114ab5afSFrank Li      - const: gpio
24*114ab5afSFrank Li      - const: gpio-pin-ic
25*114ab5afSFrank Li      - const: gpio-group0-ic
26*114ab5afSFrank Li      - const: gpio-gpoup1-ic
27*114ab5afSFrank Li
28*114ab5afSFrank Li  clocks:
29*114ab5afSFrank Li    maxItems: 1
30*114ab5afSFrank Li
31*114ab5afSFrank Li  resets:
32*114ab5afSFrank Li    maxItems: 1
33*114ab5afSFrank Li
34*114ab5afSFrank Li  gpio-controller: true
35*114ab5afSFrank Li
36*114ab5afSFrank Li  '#gpio-cells':
37*114ab5afSFrank Li    const: 2
38*114ab5afSFrank Li
39*114ab5afSFrank Li  interrupt-controller: true
40*114ab5afSFrank Li
41*114ab5afSFrank Li  '#interrupt-cells':
42*114ab5afSFrank Li    const: 2
43*114ab5afSFrank Li    description: |
44*114ab5afSFrank Li      - The first cell is an interrupt number within
45*114ab5afSFrank Li        0..9 range, for GPIO pin interrupts it is equal
46*114ab5afSFrank Li        to 'nxp,gpio-pin-interrupt' property value of
47*114ab5afSFrank Li        GPIO pin configuration, 8 is for GPIO GROUP0
48*114ab5afSFrank Li        interrupt, 9 is for GPIO GROUP1 interrupt
49*114ab5afSFrank Li      - The second cell is used to specify interrupt type
50*114ab5afSFrank Li
51*114ab5afSFrank Li  gpio-ranges: true
52*114ab5afSFrank Li
53*114ab5afSFrank Lirequired:
54*114ab5afSFrank Li  - compatible
55*114ab5afSFrank Li  - reg
56*114ab5afSFrank Li  - clocks
57*114ab5afSFrank Li  - gpio-controller
58*114ab5afSFrank Li  - '#gpio-cells'
59*114ab5afSFrank Li
60*114ab5afSFrank LiadditionalProperties: false
61*114ab5afSFrank Li
62*114ab5afSFrank Liexamples:
63*114ab5afSFrank Li  - |
64*114ab5afSFrank Li    #include <dt-bindings/clock/lpc18xx-ccu.h>
65*114ab5afSFrank Li
66*114ab5afSFrank Li    gpio@400f4000 {
67*114ab5afSFrank Li        compatible = "nxp,lpc1850-gpio";
68*114ab5afSFrank Li        reg = <0x400f4000 0x4000>, <0x40087000 0x1000>,
69*114ab5afSFrank Li              <0x40088000 0x1000>, <0x40089000 0x1000>;
70*114ab5afSFrank Li        reg-names = "gpio", "gpio-pin-ic", "gpio-group0-ic", "gpio-gpoup1-ic";
71*114ab5afSFrank Li        clocks = <&ccu1 CLK_CPU_GPIO>;
72*114ab5afSFrank Li        resets = <&rgu 28>;
73*114ab5afSFrank Li        gpio-controller;
74*114ab5afSFrank Li        #gpio-cells = <2>;
75*114ab5afSFrank Li        interrupt-controller;
76*114ab5afSFrank Li        #interrupt-cells = <2>;
77*114ab5afSFrank Li    };
78*114ab5afSFrank Li
79