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