xref: /linux/Documentation/devicetree/bindings/gpio/microchip,pic32mzda-gpio.yaml (revision fcb117e0758d1462128a50c5788555e03b48833b)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/gpio/microchip,pic32mzda-gpio.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Microchip PIC32 GPIO controller
8
9maintainers:
10  - Joshua Henderson <joshua.henderson@microchip.com>
11  - Purna Chandra Mandal <purna.mandal@microchip.com>
12
13properties:
14  compatible:
15    const: microchip,pic32mzda-gpio
16
17  reg:
18    maxItems: 1
19
20  gpio-controller: true
21
22  gpio-ranges: true
23
24  "#gpio-cells":
25    const: 2
26
27  interrupts:
28    maxItems: 1
29
30  interrupt-controller: true
31
32  "#interrupt-cells":
33    const: 2
34
35  clocks:
36    maxItems: 1
37
38  microchip,gpio-bank:
39    description: Bank index owned by the controller
40    $ref: /schemas/types.yaml#/definitions/uint32
41
42required:
43  - compatible
44  - reg
45  - gpio-controller
46  - gpio-ranges
47  - "#gpio-cells"
48  - interrupts
49  - interrupt-controller
50  - "#interrupt-cells"
51  - clocks
52  - microchip,gpio-bank
53
54additionalProperties: false
55
56examples:
57  - |
58    #include <dt-bindings/interrupt-controller/irq.h>
59
60    gpio@1f860000 {
61        compatible = "microchip,pic32mzda-gpio";
62        reg = <0x1f860000 0x100>;
63        interrupts = <118 IRQ_TYPE_LEVEL_HIGH>;
64        #gpio-cells = <2>;
65        gpio-controller;
66        interrupt-controller;
67        #interrupt-cells = <2>;
68        clocks = <&rootclk 11>;
69        microchip,gpio-bank = <0>;
70        gpio-ranges = <&pic32_pinctrl 0 0 16>;
71    };
72