xref: /linux/Documentation/devicetree/bindings/gpio/gpio-zynq.yaml (revision cdd5b5a9761fd66d17586e4f4ba6588c70e640ea)
145ca1607SNobuhiro Iwamatsu# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
245ca1607SNobuhiro Iwamatsu%YAML 1.2
345ca1607SNobuhiro Iwamatsu---
445ca1607SNobuhiro Iwamatsu$id: http://devicetree.org/schemas/gpio/gpio-zynq.yaml#
545ca1607SNobuhiro Iwamatsu$schema: http://devicetree.org/meta-schemas/core.yaml#
645ca1607SNobuhiro Iwamatsu
7dd3cb467SAndrew Lunntitle: Xilinx Zynq GPIO controller
845ca1607SNobuhiro Iwamatsu
945ca1607SNobuhiro Iwamatsumaintainers:
10*d5c421d2SMichal Simek  - Michal Simek <michal.simek@amd.com>
1145ca1607SNobuhiro Iwamatsu
1245ca1607SNobuhiro Iwamatsuproperties:
1345ca1607SNobuhiro Iwamatsu  compatible:
147668048eSMichal Simek    enum:
157668048eSMichal Simek      - xlnx,zynq-gpio-1.0
167668048eSMichal Simek      - xlnx,zynqmp-gpio-1.0
177668048eSMichal Simek      - xlnx,versal-gpio-1.0
187668048eSMichal Simek      - xlnx,pmc-gpio-1.0
1945ca1607SNobuhiro Iwamatsu
2045ca1607SNobuhiro Iwamatsu  reg:
2145ca1607SNobuhiro Iwamatsu    maxItems: 1
2245ca1607SNobuhiro Iwamatsu
2345ca1607SNobuhiro Iwamatsu  "#gpio-cells":
2445ca1607SNobuhiro Iwamatsu    const: 2
2545ca1607SNobuhiro Iwamatsu
2645ca1607SNobuhiro Iwamatsu  interrupts:
2745ca1607SNobuhiro Iwamatsu    maxItems: 1
2845ca1607SNobuhiro Iwamatsu
2945ca1607SNobuhiro Iwamatsu  gpio-controller: true
3045ca1607SNobuhiro Iwamatsu
31847e2ed2SMichal Simek  gpio-line-names:
32847e2ed2SMichal Simek    description: strings describing the names of each gpio line
33847e2ed2SMichal Simek    minItems: 58
34847e2ed2SMichal Simek    maxItems: 174
35847e2ed2SMichal Simek
3645ca1607SNobuhiro Iwamatsu  interrupt-controller: true
3745ca1607SNobuhiro Iwamatsu
3845ca1607SNobuhiro Iwamatsu  "#interrupt-cells":
3945ca1607SNobuhiro Iwamatsu    const: 2
4045ca1607SNobuhiro Iwamatsu
4145ca1607SNobuhiro Iwamatsu  clocks:
4245ca1607SNobuhiro Iwamatsu    maxItems: 1
4345ca1607SNobuhiro Iwamatsu
440aec3958SMichal Simek  power-domains:
450aec3958SMichal Simek    maxItems: 1
460aec3958SMichal Simek
47847e2ed2SMichal SimekallOf:
48847e2ed2SMichal Simek  - if:
49847e2ed2SMichal Simek      properties:
50847e2ed2SMichal Simek        compatible:
51847e2ed2SMichal Simek          enum:
52847e2ed2SMichal Simek            - xlnx,zynqmp-gpio-1.0
53847e2ed2SMichal Simek    then:
54847e2ed2SMichal Simek      properties:
55847e2ed2SMichal Simek        gpio-line-names:
56847e2ed2SMichal Simek          minItems: 174
57847e2ed2SMichal Simek          maxItems: 174
58847e2ed2SMichal Simek
59847e2ed2SMichal Simek  - if:
60847e2ed2SMichal Simek      properties:
61847e2ed2SMichal Simek        compatible:
62847e2ed2SMichal Simek          enum:
63847e2ed2SMichal Simek            - xlnx,zynq-gpio-1.0
64847e2ed2SMichal Simek    then:
65847e2ed2SMichal Simek      properties:
66847e2ed2SMichal Simek        gpio-line-names:
67847e2ed2SMichal Simek          minItems: 118
68847e2ed2SMichal Simek          maxItems: 118
69847e2ed2SMichal Simek
70847e2ed2SMichal Simek  - if:
71847e2ed2SMichal Simek      properties:
72847e2ed2SMichal Simek        compatible:
73847e2ed2SMichal Simek          enum:
74847e2ed2SMichal Simek            - xlnx,versal-gpio-1.0
75847e2ed2SMichal Simek    then:
76847e2ed2SMichal Simek      properties:
77847e2ed2SMichal Simek        gpio-line-names:
78847e2ed2SMichal Simek          minItems: 58
79847e2ed2SMichal Simek          maxItems: 58
80847e2ed2SMichal Simek
81847e2ed2SMichal Simek  - if:
82847e2ed2SMichal Simek      properties:
83847e2ed2SMichal Simek        compatible:
84847e2ed2SMichal Simek          enum:
85847e2ed2SMichal Simek            - xlnx,pmc-gpio-1.0
86847e2ed2SMichal Simek    then:
87847e2ed2SMichal Simek      properties:
88847e2ed2SMichal Simek        gpio-line-names:
89847e2ed2SMichal Simek          minItems: 116
90847e2ed2SMichal Simek          maxItems: 116
91847e2ed2SMichal Simek
9245ca1607SNobuhiro Iwamatsurequired:
9345ca1607SNobuhiro Iwamatsu  - compatible
9445ca1607SNobuhiro Iwamatsu  - reg
9545ca1607SNobuhiro Iwamatsu  - "#gpio-cells"
9645ca1607SNobuhiro Iwamatsu  - interrupts
9745ca1607SNobuhiro Iwamatsu  - gpio-controller
9845ca1607SNobuhiro Iwamatsu  - interrupt-controller
9945ca1607SNobuhiro Iwamatsu  - "#interrupt-cells"
10045ca1607SNobuhiro Iwamatsu  - clocks
10145ca1607SNobuhiro Iwamatsu
10245ca1607SNobuhiro IwamatsuadditionalProperties: false
10345ca1607SNobuhiro Iwamatsu
10445ca1607SNobuhiro Iwamatsuexamples:
10545ca1607SNobuhiro Iwamatsu  - |
10645ca1607SNobuhiro Iwamatsu    gpio@e000a000 {
10745ca1607SNobuhiro Iwamatsu      #gpio-cells = <2>;
10845ca1607SNobuhiro Iwamatsu      compatible = "xlnx,zynq-gpio-1.0";
10945ca1607SNobuhiro Iwamatsu      clocks = <&clkc 42>;
11045ca1607SNobuhiro Iwamatsu      gpio-controller;
11145ca1607SNobuhiro Iwamatsu      interrupt-parent = <&intc>;
11245ca1607SNobuhiro Iwamatsu      interrupts = <0 20 4>;
11345ca1607SNobuhiro Iwamatsu      interrupt-controller;
11445ca1607SNobuhiro Iwamatsu      #interrupt-cells = <2>;
11545ca1607SNobuhiro Iwamatsu      reg = <0xe000a000 0x1000>;
11645ca1607SNobuhiro Iwamatsu    };
117