xref: /linux/Documentation/devicetree/bindings/pinctrl/nxp,lpc1850-scu.yaml (revision 186f3edfdd41f2ae87fc40a9ccba52a3bf930994)
1*d3eed11bSFrank Li# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*d3eed11bSFrank Li%YAML 1.2
3*d3eed11bSFrank Li---
4*d3eed11bSFrank Li$id: http://devicetree.org/schemas/pinctrl/nxp,lpc1850-scu.yaml#
5*d3eed11bSFrank Li$schema: http://devicetree.org/meta-schemas/core.yaml#
6*d3eed11bSFrank Li
7*d3eed11bSFrank Lititle: NXP LPC18xx/43xx SCU pin controller
8*d3eed11bSFrank Li
9*d3eed11bSFrank Lidescription:
10*d3eed11bSFrank Li  Not all pins support all pin generic node properties so either refer to
11*d3eed11bSFrank Li  the NXP 1850/4350 user manual or the pin table in the pinctrl-lpc18xx
12*d3eed11bSFrank Li  driver for supported pin properties.
13*d3eed11bSFrank Li
14*d3eed11bSFrank Limaintainers:
15*d3eed11bSFrank Li  - Frank Li <Frank.Li@nxp.com>
16*d3eed11bSFrank Li
17*d3eed11bSFrank Liproperties:
18*d3eed11bSFrank Li  compatible:
19*d3eed11bSFrank Li    const: nxp,lpc1850-scu
20*d3eed11bSFrank Li
21*d3eed11bSFrank Li  reg:
22*d3eed11bSFrank Li    maxItems: 1
23*d3eed11bSFrank Li
24*d3eed11bSFrank Li  clocks:
25*d3eed11bSFrank Li    maxItems: 1
26*d3eed11bSFrank Li
27*d3eed11bSFrank LipatternProperties:
28*d3eed11bSFrank Li  '-pins$':
29*d3eed11bSFrank Li    type: object
30*d3eed11bSFrank Li    additionalProperties: false
31*d3eed11bSFrank Li
32*d3eed11bSFrank Li    patternProperties:
33*d3eed11bSFrank Li      '_cfg$':
34*d3eed11bSFrank Li        type: object
35*d3eed11bSFrank Li
36*d3eed11bSFrank Li        allOf:
37*d3eed11bSFrank Li          - $ref: pincfg-node.yaml#
38*d3eed11bSFrank Li          - $ref: pinmux-node.yaml#
39*d3eed11bSFrank Li
40*d3eed11bSFrank Li        unevaluatedProperties: false
41*d3eed11bSFrank Li
42*d3eed11bSFrank Li        properties:
43*d3eed11bSFrank Li          nxp,gpio-pin-interrupt:
44*d3eed11bSFrank Li            $ref: /schemas/types.yaml#/definitions/uint32
45*d3eed11bSFrank Li            minimum: 0
46*d3eed11bSFrank Li            maximum: 7
47*d3eed11bSFrank Li            description:
48*d3eed11bSFrank Li              Assign pin to gpio pin interrupt controller
49*d3eed11bSFrank Li              irq number 0 to 7. See example below.
50*d3eed11bSFrank Li
51*d3eed11bSFrank Lirequired:
52*d3eed11bSFrank Li  - compatible
53*d3eed11bSFrank Li  - reg
54*d3eed11bSFrank Li  - clocks
55*d3eed11bSFrank Li
56*d3eed11bSFrank LiallOf:
57*d3eed11bSFrank Li  - $ref: pinctrl.yaml#
58*d3eed11bSFrank Li
59*d3eed11bSFrank LiunevaluatedProperties: false
60*d3eed11bSFrank Li
61*d3eed11bSFrank Liexamples:
62*d3eed11bSFrank Li  - |
63*d3eed11bSFrank Li    #include <dt-bindings/clock/lpc18xx-ccu.h>
64*d3eed11bSFrank Li
65*d3eed11bSFrank Li    pinctrl@40086000 {
66*d3eed11bSFrank Li        compatible = "nxp,lpc1850-scu";
67*d3eed11bSFrank Li        reg = <0x40086000 0x1000>;
68*d3eed11bSFrank Li        clocks = <&ccu1 CLK_CPU_SCU>;
69*d3eed11bSFrank Li
70*d3eed11bSFrank Li        gpio-joystick-pins {
71*d3eed11bSFrank Li            gpio-joystick-1_cfg {
72*d3eed11bSFrank Li                pins = "p9_0";
73*d3eed11bSFrank Li                function = "gpio";
74*d3eed11bSFrank Li                nxp,gpio-pin-interrupt = <0>;
75*d3eed11bSFrank Li                input-enable;
76*d3eed11bSFrank Li                bias-disable;
77*d3eed11bSFrank Li            };
78*d3eed11bSFrank Li        };
79*d3eed11bSFrank Li    };
80