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