xref: /freebsd/sys/contrib/device-tree/Bindings/gpio/microchip,mpfs-gpio.yaml (revision 9f44a47fd07924afc035991af15d84e6585dea4f)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/gpio/microchip,mpfs-gpio.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Microchip MPFS GPIO Controller Device Tree Bindings
8
9maintainers:
10  - Conor Dooley <conor.dooley@microchip.com>
11
12properties:
13  compatible:
14    items:
15      - enum:
16          - microchip,mpfs-gpio
17
18  reg:
19    maxItems: 1
20
21  interrupts:
22    description:
23      Interrupt mapping, one per GPIO. Maximum 32 GPIOs.
24    minItems: 1
25    maxItems: 32
26
27  interrupt-controller: true
28
29  clocks:
30    maxItems: 1
31
32  "#gpio-cells":
33    const: 2
34
35  "#interrupt-cells":
36    const: 1
37
38  ngpios:
39    description:
40      The number of GPIOs available.
41    minimum: 1
42    maximum: 32
43    default: 32
44
45  gpio-controller: true
46
47required:
48  - compatible
49  - reg
50  - interrupts
51  - "#interrupt-cells"
52  - interrupt-controller
53  - "#gpio-cells"
54  - gpio-controller
55  - clocks
56
57additionalProperties: false
58
59examples:
60  - |
61    gpio@20122000 {
62        compatible = "microchip,mpfs-gpio";
63        reg = <0x20122000 0x1000>;
64        clocks = <&clkcfg 25>;
65        interrupt-parent = <&plic>;
66        gpio-controller;
67        #gpio-cells = <2>;
68        interrupt-controller;
69        #interrupt-cells = <1>;
70        interrupts = <53>, <53>, <53>, <53>,
71                     <53>, <53>, <53>, <53>,
72                     <53>, <53>, <53>, <53>,
73                     <53>, <53>, <53>, <53>,
74                     <53>, <53>, <53>, <53>,
75                     <53>, <53>, <53>, <53>,
76                     <53>, <53>, <53>, <53>,
77                     <53>, <53>, <53>, <53>;
78    };
79...
80