xref: /linux/Documentation/devicetree/bindings/gpio/pl061-gpio.yaml (revision 8795a739e5c72abeec51caf36b6df2b37e5720c5)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/gpio/pl061-gpio.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: ARM PL061 GPIO controller
8
9maintainers:
10  - Linus Walleij <linus.walleij@linaro.org>
11  - Rob Herring <robh@kernel.org>
12
13# We need a select here so we don't match all nodes with 'arm,primecell'
14select:
15  properties:
16    compatible:
17      contains:
18        const: arm,pl061
19  required:
20    - compatible
21
22properties:
23  $nodename:
24    pattern: "^gpio@[0-9a-f]+$"
25
26  compatible:
27    items:
28      - const: arm,pl061
29      - const: arm,primecell
30
31  reg:
32    maxItems: 1
33
34  interrupts:
35    oneOf:
36      - maxItems: 1
37      - maxItems: 8
38
39  interrupt-controller: true
40
41  "#interrupt-cells":
42    const: 2
43
44  clocks:
45    maxItems: 1
46
47  clock-names: true
48
49  "#gpio-cells":
50    const: 2
51
52  gpio-controller: true
53
54  gpio-ranges:
55    maxItems: 8
56
57required:
58  - compatible
59  - reg
60  - interrupts
61  - interrupt-controller
62  - "#interrupt-cells"
63  - clocks
64  - "#gpio-cells"
65  - gpio-controller
66
67additionalProperties: false
68
69...
70