xref: /linux/Documentation/devicetree/bindings/gpio/fsl-imx-gpio.yaml (revision 60e7432914467ed5e66c6eddad5a9d67fde408f8)
1493d8f46SAnson Huang# SPDX-License-Identifier: GPL-2.0
2493d8f46SAnson Huang%YAML 1.2
3493d8f46SAnson Huang---
4493d8f46SAnson Huang$id: http://devicetree.org/schemas/gpio/fsl-imx-gpio.yaml#
5493d8f46SAnson Huang$schema: http://devicetree.org/meta-schemas/core.yaml#
6493d8f46SAnson Huang
7493d8f46SAnson Huangtitle: Freescale i.MX/MXC GPIO controller
8493d8f46SAnson Huang
9493d8f46SAnson Huangmaintainers:
10493d8f46SAnson Huang  - Anson Huang <Anson.Huang@nxp.com>
11493d8f46SAnson Huang
12493d8f46SAnson Huangproperties:
13493d8f46SAnson Huang  compatible:
14bf276877SKrzysztof Kozlowski    oneOf:
15bf276877SKrzysztof Kozlowski      - enum:
16493d8f46SAnson Huang          - fsl,imx1-gpio
17493d8f46SAnson Huang          - fsl,imx21-gpio
18493d8f46SAnson Huang          - fsl,imx31-gpio
19493d8f46SAnson Huang          - fsl,imx35-gpio
20493d8f46SAnson Huang          - fsl,imx7d-gpio
21bf276877SKrzysztof Kozlowski      - items:
22256012abSKrzysztof Kozlowski          - const: fsl,imx35-gpio
23256012abSKrzysztof Kozlowski          - const: fsl,imx31-gpio
24256012abSKrzysztof Kozlowski      - items:
25bf276877SKrzysztof Kozlowski          - enum:
26256012abSKrzysztof Kozlowski              - fsl,imx50-gpio
27256012abSKrzysztof Kozlowski              - fsl,imx51-gpio
28256012abSKrzysztof Kozlowski              - fsl,imx53-gpio
29256012abSKrzysztof Kozlowski              - fsl,imx6q-gpio
30256012abSKrzysztof Kozlowski              - fsl,imx6sl-gpio
31256012abSKrzysztof Kozlowski              - fsl,imx6sll-gpio
32256012abSKrzysztof Kozlowski              - fsl,imx6sx-gpio
33256012abSKrzysztof Kozlowski              - fsl,imx6ul-gpio
34256012abSKrzysztof Kozlowski              - fsl,imx7d-gpio
35bf276877SKrzysztof Kozlowski              - fsl,imx8mm-gpio
36bf276877SKrzysztof Kozlowski              - fsl,imx8mn-gpio
37bf276877SKrzysztof Kozlowski              - fsl,imx8mp-gpio
38bf276877SKrzysztof Kozlowski              - fsl,imx8mq-gpio
39bf276877SKrzysztof Kozlowski              - fsl,imx8qxp-gpio
40bf276877SKrzysztof Kozlowski          - const: fsl,imx35-gpio
41493d8f46SAnson Huang
42493d8f46SAnson Huang  reg:
43493d8f46SAnson Huang    maxItems: 1
44493d8f46SAnson Huang
45493d8f46SAnson Huang  interrupts:
46493d8f46SAnson Huang    description: |
47493d8f46SAnson Huang      Should be the port interrupt shared by all 32 pins, if one number.
48493d8f46SAnson Huang      If two numbers, the first one is the interrupt shared by low 16 pins
49493d8f46SAnson Huang      and the second one is for high 16 pins.
50493d8f46SAnson Huang    minItems: 1
51493d8f46SAnson Huang    maxItems: 2
52493d8f46SAnson Huang
53493d8f46SAnson Huang  interrupt-controller: true
54493d8f46SAnson Huang
55493d8f46SAnson Huang  "#interrupt-cells":
56493d8f46SAnson Huang    const: 2
57493d8f46SAnson Huang
58493d8f46SAnson Huang  clocks:
59493d8f46SAnson Huang    maxItems: 1
60493d8f46SAnson Huang
61493d8f46SAnson Huang  "#gpio-cells":
62493d8f46SAnson Huang    const: 2
63493d8f46SAnson Huang
64493d8f46SAnson Huang  gpio-controller: true
65*60e74329SKrzysztof Kozlowski  gpio-line-names: true
660c77a86aSKrzysztof Kozlowski  gpio-ranges: true
670c77a86aSKrzysztof Kozlowski
688c0aa567SKrzysztof Kozlowski  power-domains:
698c0aa567SKrzysztof Kozlowski    maxItems: 1
708c0aa567SKrzysztof Kozlowski
71dfb49cc2SKrzysztof KozlowskipatternProperties:
72dfb49cc2SKrzysztof Kozlowski  "^(hog-[0-9]+|.+-hog(-[0-9]+)?)$":
73dfb49cc2SKrzysztof Kozlowski    type: object
74dfb49cc2SKrzysztof Kozlowski    properties:
75dfb49cc2SKrzysztof Kozlowski      gpio-hog: true
76dfb49cc2SKrzysztof Kozlowski      gpios: true
77dfb49cc2SKrzysztof Kozlowski      input: true
78dfb49cc2SKrzysztof Kozlowski      output-high: true
79dfb49cc2SKrzysztof Kozlowski      output-low: true
80dfb49cc2SKrzysztof Kozlowski      line-name: true
81dfb49cc2SKrzysztof Kozlowski
82dfb49cc2SKrzysztof Kozlowski    required:
83dfb49cc2SKrzysztof Kozlowski      - gpio-hog
84dfb49cc2SKrzysztof Kozlowski      - gpios
85dfb49cc2SKrzysztof Kozlowski
86dfb49cc2SKrzysztof Kozlowski    additionalProperties: false
87dfb49cc2SKrzysztof Kozlowski
88493d8f46SAnson Huangrequired:
89493d8f46SAnson Huang  - compatible
90493d8f46SAnson Huang  - reg
91493d8f46SAnson Huang  - interrupts
92493d8f46SAnson Huang  - interrupt-controller
93493d8f46SAnson Huang  - "#interrupt-cells"
94493d8f46SAnson Huang  - "#gpio-cells"
95493d8f46SAnson Huang  - gpio-controller
96493d8f46SAnson Huang
97493d8f46SAnson HuangadditionalProperties: false
98493d8f46SAnson Huang
99493d8f46SAnson Huangexamples:
100493d8f46SAnson Huang  - |
101493d8f46SAnson Huang    gpio0: gpio@73f84000 {
102493d8f46SAnson Huang        compatible = "fsl,imx35-gpio";
103493d8f46SAnson Huang        reg = <0x73f84000 0x4000>;
104493d8f46SAnson Huang        interrupts = <50 51>;
105493d8f46SAnson Huang        gpio-controller;
106493d8f46SAnson Huang        #gpio-cells = <2>;
107493d8f46SAnson Huang        interrupt-controller;
108493d8f46SAnson Huang        #interrupt-cells = <2>;
109493d8f46SAnson Huang    };
110493d8f46SAnson Huang
111493d8f46SAnson Huang...
112