^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) %YAML 1.2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) ---
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) $id: http://devicetree.org/schemas/gpio/fsl-imx-gpio.yaml#
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) $schema: http://devicetree.org/meta-schemas/core.yaml#
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) title: Freescale i.MX/MXC GPIO controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) maintainers:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) - Anson Huang <Anson.Huang@nxp.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) compatible:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) oneOf:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) - enum:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) - fsl,imx1-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) - fsl,imx21-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) - fsl,imx31-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) - fsl,imx35-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) - fsl,imx7d-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) - items:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) - const: fsl,imx35-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) - const: fsl,imx31-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) - items:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) - enum:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) - fsl,imx50-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) - fsl,imx51-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) - fsl,imx53-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) - fsl,imx6q-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) - fsl,imx6sl-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) - fsl,imx6sll-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) - fsl,imx6sx-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) - fsl,imx6ul-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) - fsl,imx7d-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) - fsl,imx8mm-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) - fsl,imx8mn-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) - fsl,imx8mp-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) - fsl,imx8mq-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) - fsl,imx8qxp-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) - const: fsl,imx35-gpio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) reg:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) maxItems: 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) interrupts:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) description: |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) Should be the port interrupt shared by all 32 pins, if one number.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) If two numbers, the first one is the interrupt shared by low 16 pins
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) and the second one is for high 16 pins.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) minItems: 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) maxItems: 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) interrupt-controller: true
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) "#interrupt-cells":
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) const: 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) clocks:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) maxItems: 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) "#gpio-cells":
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) const: 2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) gpio-controller: true
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) gpio-line-names: true
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) gpio-ranges: true
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) power-domains:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) maxItems: 1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) patternProperties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) "^(hog-[0-9]+|.+-hog(-[0-9]+)?)$":
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) type: object
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) properties:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) gpio-hog: true
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) gpios: true
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) input: true
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) output-high: true
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) output-low: true
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) line-name: true
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) required:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) - gpio-hog
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) - gpios
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) additionalProperties: false
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) required:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) - compatible
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) - reg
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) - interrupts
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) - interrupt-controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) - "#interrupt-cells"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) - "#gpio-cells"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) - gpio-controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) additionalProperties: false
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) examples:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) - |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) gpio0: gpio@73f84000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) compatible = "fsl,imx35-gpio";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) reg = <0x73f84000 0x4000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) interrupts = <50 51>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) gpio-controller;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) #gpio-cells = <2>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) interrupt-controller;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) #interrupt-cells = <2>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) ...