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