Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

at91: regroup gpio and pinctrl under the same ranges

Fix also the reg size as we have 512 bytes bank not 256 bytes per gpio/mux
controller

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>

+218 -184
+33 -26
arch/arm/boot/dts/at91sam9260.dtsi
··· 98 98 interrupts = <26 4 0 27 4 0 28 4 0>; 99 99 }; 100 100 101 - pioA: gpio@fffff400 { 102 - compatible = "atmel,at91rm9200-gpio"; 103 - reg = <0xfffff400 0x100>; 104 - interrupts = <2 4 1>; 105 - #gpio-cells = <2>; 106 - gpio-controller; 107 - interrupt-controller; 108 - #interrupt-cells = <2>; 109 - }; 101 + pinctrl@fffff400 { 102 + #address-cells = <1>; 103 + #size-cells = <1>; 104 + compatible = "atmel,at91rm9200-pinctrl", "simple-bus"; 105 + ranges = <0xfffff400 0xfffff400 0x600>; 110 106 111 - pioB: gpio@fffff600 { 112 - compatible = "atmel,at91rm9200-gpio"; 113 - reg = <0xfffff600 0x100>; 114 - interrupts = <3 4 1>; 115 - #gpio-cells = <2>; 116 - gpio-controller; 117 - interrupt-controller; 118 - #interrupt-cells = <2>; 119 - }; 107 + pioA: gpio@fffff400 { 108 + compatible = "atmel,at91rm9200-gpio"; 109 + reg = <0xfffff400 0x200>; 110 + interrupts = <2 4 1>; 111 + #gpio-cells = <2>; 112 + gpio-controller; 113 + interrupt-controller; 114 + #interrupt-cells = <2>; 115 + }; 120 116 121 - pioC: gpio@fffff800 { 122 - compatible = "atmel,at91rm9200-gpio"; 123 - reg = <0xfffff800 0x100>; 124 - interrupts = <4 4 1>; 125 - #gpio-cells = <2>; 126 - gpio-controller; 127 - interrupt-controller; 128 - #interrupt-cells = <2>; 117 + pioB: gpio@fffff600 { 118 + compatible = "atmel,at91rm9200-gpio"; 119 + reg = <0xfffff600 0x200>; 120 + interrupts = <3 4 1>; 121 + #gpio-cells = <2>; 122 + gpio-controller; 123 + interrupt-controller; 124 + #interrupt-cells = <2>; 125 + }; 126 + 127 + pioC: gpio@fffff800 { 128 + compatible = "atmel,at91rm9200-gpio"; 129 + reg = <0xfffff800 0x200>; 130 + interrupts = <4 4 1>; 131 + #gpio-cells = <2>; 132 + gpio-controller; 133 + interrupt-controller; 134 + #interrupt-cells = <2>; 135 + }; 129 136 }; 130 137 131 138 dbgu: serial@fffff200 {
+50 -44
arch/arm/boot/dts/at91sam9263.dtsi
··· 89 89 reg = <0xfffffd10 0x10>; 90 90 }; 91 91 92 - pioA: gpio@fffff200 { 93 - compatible = "atmel,at91rm9200-gpio"; 94 - reg = <0xfffff200 0x100>; 95 - interrupts = <2 4 1>; 96 - #gpio-cells = <2>; 97 - gpio-controller; 98 - interrupt-controller; 99 - #interrupt-cells = <2>; 100 - }; 92 + pinctrl@fffff200 { 93 + #address-cells = <1>; 94 + #size-cells = <1>; 95 + compatible = "atmel,at91rm9200-pinctrl", "simple-bus"; 96 + ranges = <0xfffff200 0xfffff200 0xa00>; 101 97 102 - pioB: gpio@fffff400 { 103 - compatible = "atmel,at91rm9200-gpio"; 104 - reg = <0xfffff400 0x100>; 105 - interrupts = <3 4 1>; 106 - #gpio-cells = <2>; 107 - gpio-controller; 108 - interrupt-controller; 109 - #interrupt-cells = <2>; 110 - }; 98 + pioA: gpio@fffff200 { 99 + compatible = "atmel,at91rm9200-gpio"; 100 + reg = <0xfffff200 0x200>; 101 + interrupts = <2 4 1>; 102 + #gpio-cells = <2>; 103 + gpio-controller; 104 + interrupt-controller; 105 + #interrupt-cells = <2>; 106 + }; 111 107 112 - pioC: gpio@fffff600 { 113 - compatible = "atmel,at91rm9200-gpio"; 114 - reg = <0xfffff600 0x100>; 115 - interrupts = <4 4 1>; 116 - #gpio-cells = <2>; 117 - gpio-controller; 118 - interrupt-controller; 119 - #interrupt-cells = <2>; 120 - }; 108 + pioB: gpio@fffff400 { 109 + compatible = "atmel,at91rm9200-gpio"; 110 + reg = <0xfffff400 0x200>; 111 + interrupts = <3 4 1>; 112 + #gpio-cells = <2>; 113 + gpio-controller; 114 + interrupt-controller; 115 + #interrupt-cells = <2>; 116 + }; 121 117 122 - pioD: gpio@fffff800 { 123 - compatible = "atmel,at91rm9200-gpio"; 124 - reg = <0xfffff800 0x100>; 125 - interrupts = <4 4 1>; 126 - #gpio-cells = <2>; 127 - gpio-controller; 128 - interrupt-controller; 129 - #interrupt-cells = <2>; 130 - }; 118 + pioC: gpio@fffff600 { 119 + compatible = "atmel,at91rm9200-gpio"; 120 + reg = <0xfffff600 0x200>; 121 + interrupts = <4 4 1>; 122 + #gpio-cells = <2>; 123 + gpio-controller; 124 + interrupt-controller; 125 + #interrupt-cells = <2>; 126 + }; 131 127 132 - pioE: gpio@fffffa00 { 133 - compatible = "atmel,at91rm9200-gpio"; 134 - reg = <0xfffffa00 0x100>; 135 - interrupts = <4 4 1>; 136 - #gpio-cells = <2>; 137 - gpio-controller; 138 - interrupt-controller; 139 - #interrupt-cells = <2>; 128 + pioD: gpio@fffff800 { 129 + compatible = "atmel,at91rm9200-gpio"; 130 + reg = <0xfffff800 0x200>; 131 + interrupts = <4 4 1>; 132 + #gpio-cells = <2>; 133 + gpio-controller; 134 + interrupt-controller; 135 + #interrupt-cells = <2>; 136 + }; 137 + 138 + pioE: gpio@fffffa00 { 139 + compatible = "atmel,at91rm9200-gpio"; 140 + reg = <0xfffffa00 0x200>; 141 + interrupts = <4 4 1>; 142 + #gpio-cells = <2>; 143 + gpio-controller; 144 + interrupt-controller; 145 + #interrupt-cells = <2>; 140 146 }; 141 147 142 148 dbgu: serial@ffffee00 {
+51 -44
arch/arm/boot/dts/at91sam9g45.dtsi
··· 108 108 interrupts = <21 4 0>; 109 109 }; 110 110 111 - pioA: gpio@fffff200 { 112 - compatible = "atmel,at91rm9200-gpio"; 113 - reg = <0xfffff200 0x100>; 114 - interrupts = <2 4 1>; 115 - #gpio-cells = <2>; 116 - gpio-controller; 117 - interrupt-controller; 118 - #interrupt-cells = <2>; 119 - }; 111 + pinctrl@fffff200 { 112 + #address-cells = <1>; 113 + #size-cells = <1>; 114 + compatible = "atmel,at91rm9200-pinctrl", "simple-bus"; 115 + ranges = <0xfffff200 0xfffff200 0xa00>; 120 116 121 - pioB: gpio@fffff400 { 122 - compatible = "atmel,at91rm9200-gpio"; 123 - reg = <0xfffff400 0x100>; 124 - interrupts = <3 4 1>; 125 - #gpio-cells = <2>; 126 - gpio-controller; 127 - interrupt-controller; 128 - #interrupt-cells = <2>; 129 - }; 117 + pioA: gpio@fffff200 { 118 + compatible = "atmel,at91rm9200-gpio"; 119 + reg = <0xfffff200 0x200>; 120 + interrupts = <2 4 1>; 121 + #gpio-cells = <2>; 122 + gpio-controller; 123 + interrupt-controller; 124 + #interrupt-cells = <2>; 125 + }; 130 126 131 - pioC: gpio@fffff600 { 132 - compatible = "atmel,at91rm9200-gpio"; 133 - reg = <0xfffff600 0x100>; 134 - interrupts = <4 4 1>; 135 - #gpio-cells = <2>; 136 - gpio-controller; 137 - interrupt-controller; 138 - #interrupt-cells = <2>; 139 - }; 127 + pioB: gpio@fffff400 { 128 + compatible = "atmel,at91rm9200-gpio"; 129 + reg = <0xfffff400 0x200>; 130 + interrupts = <3 4 1>; 131 + #gpio-cells = <2>; 132 + gpio-controller; 133 + interrupt-controller; 134 + #interrupt-cells = <2>; 135 + }; 140 136 141 - pioD: gpio@fffff800 { 142 - compatible = "atmel,at91rm9200-gpio"; 143 - reg = <0xfffff800 0x100>; 144 - interrupts = <5 4 1>; 145 - #gpio-cells = <2>; 146 - gpio-controller; 147 - interrupt-controller; 148 - #interrupt-cells = <2>; 149 - }; 137 + pioC: gpio@fffff600 { 138 + compatible = "atmel,at91rm9200-gpio"; 139 + reg = <0xfffff600 0x200>; 140 + interrupts = <4 4 1>; 141 + #gpio-cells = <2>; 142 + gpio-controller; 143 + interrupt-controller; 144 + #interrupt-cells = <2>; 145 + }; 150 146 151 - pioE: gpio@fffffa00 { 152 - compatible = "atmel,at91rm9200-gpio"; 153 - reg = <0xfffffa00 0x100>; 154 - interrupts = <5 4 1>; 155 - #gpio-cells = <2>; 156 - gpio-controller; 157 - interrupt-controller; 158 - #interrupt-cells = <2>; 147 + pioD: gpio@fffff800 { 148 + compatible = "atmel,at91rm9200-gpio"; 149 + reg = <0xfffff800 0x200>; 150 + interrupts = <5 4 1>; 151 + #gpio-cells = <2>; 152 + gpio-controller; 153 + interrupt-controller; 154 + #interrupt-cells = <2>; 155 + }; 156 + 157 + pioE: gpio@fffffa00 { 158 + compatible = "atmel,at91rm9200-gpio"; 159 + reg = <0xfffffa00 0x200>; 160 + interrupts = <5 4 1>; 161 + #gpio-cells = <2>; 162 + gpio-controller; 163 + interrupt-controller; 164 + #interrupt-cells = <2>; 165 + }; 159 166 }; 160 167 161 168 dbgu: serial@ffffee00 {
+42 -35
arch/arm/boot/dts/at91sam9n12.dtsi
··· 102 102 interrupts = <20 4 0>; 103 103 }; 104 104 105 - pioA: gpio@fffff400 { 106 - compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 107 - reg = <0xfffff400 0x100>; 108 - interrupts = <2 4 1>; 109 - #gpio-cells = <2>; 110 - gpio-controller; 111 - interrupt-controller; 112 - #interrupt-cells = <2>; 113 - }; 105 + pinctrl@fffff400 { 106 + #address-cells = <1>; 107 + #size-cells = <1>; 108 + compatible = "atmel,at91rm9200-pinctrl", "simple-bus"; 109 + ranges = <0xfffff400 0xfffff400 0x800>; 114 110 115 - pioB: gpio@fffff600 { 116 - compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 117 - reg = <0xfffff600 0x100>; 118 - interrupts = <2 4 1>; 119 - #gpio-cells = <2>; 120 - gpio-controller; 121 - interrupt-controller; 122 - #interrupt-cells = <2>; 123 - }; 111 + pioA: gpio@fffff400 { 112 + compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 113 + reg = <0xfffff400 0x200>; 114 + interrupts = <2 4 1>; 115 + #gpio-cells = <2>; 116 + gpio-controller; 117 + interrupt-controller; 118 + #interrupt-cells = <2>; 119 + }; 124 120 125 - pioC: gpio@fffff800 { 126 - compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 127 - reg = <0xfffff800 0x100>; 128 - interrupts = <3 4 1>; 129 - #gpio-cells = <2>; 130 - gpio-controller; 131 - interrupt-controller; 132 - #interrupt-cells = <2>; 133 - }; 121 + pioB: gpio@fffff600 { 122 + compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 123 + reg = <0xfffff600 0x200>; 124 + interrupts = <2 4 1>; 125 + #gpio-cells = <2>; 126 + gpio-controller; 127 + interrupt-controller; 128 + #interrupt-cells = <2>; 129 + }; 134 130 135 - pioD: gpio@fffffa00 { 136 - compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 137 - reg = <0xfffffa00 0x100>; 138 - interrupts = <3 4 1>; 139 - #gpio-cells = <2>; 140 - gpio-controller; 141 - interrupt-controller; 142 - #interrupt-cells = <2>; 131 + pioC: gpio@fffff800 { 132 + compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 133 + reg = <0xfffff800 0x200>; 134 + interrupts = <3 4 1>; 135 + #gpio-cells = <2>; 136 + gpio-controller; 137 + interrupt-controller; 138 + #interrupt-cells = <2>; 139 + }; 140 + 141 + pioD: gpio@fffffa00 { 142 + compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 143 + reg = <0xfffffa00 0x200>; 144 + interrupts = <3 4 1>; 145 + #gpio-cells = <2>; 146 + gpio-controller; 147 + interrupt-controller; 148 + #interrupt-cells = <2>; 149 + }; 143 150 }; 144 151 145 152 dbgu: serial@fffff200 {
+42 -35
arch/arm/boot/dts/at91sam9x5.dtsi
··· 111 111 interrupts = <21 4 0>; 112 112 }; 113 113 114 - pioA: gpio@fffff400 { 115 - compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 116 - reg = <0xfffff400 0x100>; 117 - interrupts = <2 4 1>; 118 - #gpio-cells = <2>; 119 - gpio-controller; 120 - interrupt-controller; 121 - #interrupt-cells = <2>; 122 - }; 114 + pinctrl@fffff200 { 115 + #address-cells = <1>; 116 + #size-cells = <1>; 117 + compatible = "atmel,at91rm9200-pinctrl", "simple-bus"; 118 + ranges = <0xfffff400 0xfffff400 0x800>; 123 119 124 - pioB: gpio@fffff600 { 125 - compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 126 - reg = <0xfffff600 0x100>; 127 - interrupts = <2 4 1>; 128 - #gpio-cells = <2>; 129 - gpio-controller; 130 - interrupt-controller; 131 - #interrupt-cells = <2>; 132 - }; 120 + pioA: gpio@fffff400 { 121 + compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 122 + reg = <0xfffff400 0x200>; 123 + interrupts = <2 4 1>; 124 + #gpio-cells = <2>; 125 + gpio-controller; 126 + interrupt-controller; 127 + #interrupt-cells = <2>; 128 + }; 133 129 134 - pioC: gpio@fffff800 { 135 - compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 136 - reg = <0xfffff800 0x100>; 137 - interrupts = <3 4 1>; 138 - #gpio-cells = <2>; 139 - gpio-controller; 140 - interrupt-controller; 141 - #interrupt-cells = <2>; 142 - }; 130 + pioB: gpio@fffff600 { 131 + compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 132 + reg = <0xfffff600 0x200>; 133 + interrupts = <2 4 1>; 134 + #gpio-cells = <2>; 135 + gpio-controller; 136 + interrupt-controller; 137 + #interrupt-cells = <2>; 138 + }; 143 139 144 - pioD: gpio@fffffa00 { 145 - compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 146 - reg = <0xfffffa00 0x100>; 147 - interrupts = <3 4 1>; 148 - #gpio-cells = <2>; 149 - gpio-controller; 150 - interrupt-controller; 151 - #interrupt-cells = <2>; 140 + pioC: gpio@fffff800 { 141 + compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 142 + reg = <0xfffff800 0x200>; 143 + interrupts = <3 4 1>; 144 + #gpio-cells = <2>; 145 + gpio-controller; 146 + interrupt-controller; 147 + #interrupt-cells = <2>; 148 + }; 149 + 150 + pioD: gpio@fffffa00 { 151 + compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 152 + reg = <0xfffffa00 0x200>; 153 + interrupts = <3 4 1>; 154 + #gpio-cells = <2>; 155 + gpio-controller; 156 + interrupt-controller; 157 + #interrupt-cells = <2>; 158 + }; 152 159 }; 153 160 154 161 dbgu: serial@fffff200 {