1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/gpio/gpio-mxs.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Freescale MXS GPIO controller 8 9maintainers: 10 - Shawn Guo <shawnguo@kernel.org> 11 12description: | 13 The Freescale MXS GPIO controller is part of MXS PIN controller. 14 The GPIOs are organized in port/bank, each port consists of 32 GPIOs. 15 As the GPIO controller is embedded in the PIN controller and all the 16 GPIO ports share the same IO space with PIN controller, the GPIO node 17 will be represented as sub-nodes of MXS pinctrl node. 18 19properties: 20 compatible: 21 enum: 22 - fsl,imx23-pinctrl 23 - fsl,imx28-pinctrl 24 25 '#address-cells': 26 const: 1 27 '#size-cells': 28 const: 0 29 30 reg: 31 maxItems: 1 32 33patternProperties: 34 "gpio@[0-9]+$": 35 type: object 36 properties: 37 compatible: 38 enum: 39 - fsl,imx23-gpio 40 - fsl,imx28-gpio 41 42 reg: 43 maxItems: 1 44 45 interrupts: 46 description: Should be the port interrupt shared by all 32 pins. 47 maxItems: 1 48 49 interrupt-controller: true 50 51 "#interrupt-cells": 52 const: 2 53 54 "#gpio-cells": 55 const: 2 56 57 gpio-controller: true 58 59 required: 60 - compatible 61 - reg 62 - interrupts 63 - interrupt-controller 64 - "#interrupt-cells" 65 - "#gpio-cells" 66 - gpio-controller 67 68 additionalProperties: false 69 70required: 71 - compatible 72 - reg 73 - '#address-cells' 74 - '#size-cells' 75 76additionalProperties: false 77 78examples: 79 - | 80 pinctrl@80018000 { 81 #address-cells = <1>; 82 #size-cells = <0>; 83 compatible = "fsl,imx28-pinctrl"; 84 reg = <0x80018000 0x2000>; 85 86 gpio@0 { 87 compatible = "fsl,imx28-gpio"; 88 reg = <0>; 89 interrupts = <127>; 90 gpio-controller; 91 #gpio-cells = <2>; 92 interrupt-controller; 93 #interrupt-cells = <2>; 94 }; 95 96 gpio@1 { 97 compatible = "fsl,imx28-gpio"; 98 reg = <1>; 99 interrupts = <126>; 100 gpio-controller; 101 #gpio-cells = <2>; 102 interrupt-controller; 103 #interrupt-cells = <2>; 104 }; 105 106 gpio@2 { 107 compatible = "fsl,imx28-gpio"; 108 reg = <2>; 109 interrupts = <125>; 110 gpio-controller; 111 #gpio-cells = <2>; 112 interrupt-controller; 113 #interrupt-cells = <2>; 114 }; 115 116 gpio@3 { 117 compatible = "fsl,imx28-gpio"; 118 reg = <3>; 119 interrupts = <124>; 120 gpio-controller; 121 #gpio-cells = <2>; 122 interrupt-controller; 123 #interrupt-cells = <2>; 124 }; 125 126 gpio@4 { 127 compatible = "fsl,imx28-gpio"; 128 reg = <4>; 129 interrupts = <123>; 130 gpio-controller; 131 #gpio-cells = <2>; 132 interrupt-controller; 133 #interrupt-cells = <2>; 134 }; 135 }; 136