1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/gpio/st,nomadik-gpio.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Nomadik GPIO controller
8
9description:
10  The Nomadik GPIO driver handles Nomadik SoC GPIO blocks. This block has also
11  been called ST STA2X11. On the Nomadik platform, this driver is intertwined
12  with pinctrl-nomadik.
13
14maintainers:
15  - Linus Walleij <linus.walleij@linaro.org>
16
17properties:
18  $nodename:
19    pattern: "^gpio@[0-9a-f]+$"
20
21  compatible:
22    enum:
23      - st,nomadik-gpio
24      - mobileye,eyeq5-gpio
25
26  reg:
27    maxItems: 1
28
29  interrupts:
30    maxItems: 1
31
32  "#gpio-cells":
33    const: 2
34
35  gpio-controller: true
36
37  interrupt-controller: true
38
39  "#interrupt-cells":
40    const: 2
41
42  gpio-bank:
43    description: System-wide GPIO bank index.
44    $ref: /schemas/types.yaml#/definitions/uint32
45
46  st,supports-sleepmode:
47    description: Whether the controller can sleep or not.
48    $ref: /schemas/types.yaml#/definitions/flag
49
50  clocks:
51    maxItems: 1
52
53  gpio-ranges:
54    maxItems: 1
55
56  ngpios:
57    minimum: 0
58    maximum: 32
59
60  resets:
61    maxItems: 1
62
63required:
64  - compatible
65  - reg
66  - interrupts
67  - "#gpio-cells"
68  - gpio-controller
69  - interrupt-controller
70  - gpio-bank
71
72unevaluatedProperties: false
73
74allOf:
75  - if:
76      properties:
77        compatible:
78          contains:
79            const: mobileye,eyeq5-gpio
80    then:
81      properties:
82        st,supports-sleepmode: false
83
84examples:
85  - |
86    gpio@8012e080 {
87        compatible = "st,nomadik-gpio";
88        reg =  <0x8012e080 0x80>;
89        interrupts = <0 120 0x4>;
90        #gpio-cells = <2>;
91        gpio-controller;
92        interrupt-controller;
93        st,supports-sleepmode;
94        gpio-bank = <1>;
95    };
96