Merge tag 'at91-fixes' of git://github.com/at91linux/linux-at91 into fixes

From Nicolas Ferre:
Here are fixes for AT91 that are mainly related to device tree.
One RM9200 setup option is the only C code change.
Some documentation changes can clarify the pinctrl use.
Then, some defconfig modifications are allowing the affected platforms
to boot.

* tag 'at91-fixes' of git://github.com/at91linux/linux-at91:
ARM: at91/dts: correct comment in at91sam9x5.dtsi for mii
ARM: at91/at91_dt_defconfig: add at91sam9n12 SoC to DT defconfig
ARM: at91/at91_dt_defconfig: remove memory specification to cmdline
ARM: at91/dts: add macb mii pinctrl config for kizbox
ARM: at91: rm9200: remake the BGA as default version
ARM: at91: fix gpios on i2c-gpio for RM9200 DT
ARM: at91/at91sam9x5 DTS: add SCK USART pins
ARM: at91/at91sam9x5 DTS: correct wrong PIO BANK values on u(s)arts
ARM: at91/at91-pinctrl documentation: fix typo and add some details

+51 -25
+3 -2
Documentation/devicetree/bindings/pinctrl/atmel,at91-pinctrl.txt
··· 81 Required properties for pin configuration node: 82 - atmel,pins: 4 integers array, represents a group of pins mux and config 83 setting. The format is atmel,pins = <PIN_BANK PIN_BANK_NUM PERIPH CONFIG>. 84 - The PERIPH 0 means gpio. 85 86 Bits used for CONFIG: 87 PULL_UP (1 << 0): indicate this pin need a pull up. ··· 127 pinctrl_dbgu: dbgu-0 { 128 atmel,pins = 129 <1 14 0x1 0x0 /* PB14 periph A */ 130 - 1 15 0x1 0x1>; /* PB15 periph with pullup */ 131 }; 132 }; 133 };
··· 81 Required properties for pin configuration node: 82 - atmel,pins: 4 integers array, represents a group of pins mux and config 83 setting. The format is atmel,pins = <PIN_BANK PIN_BANK_NUM PERIPH CONFIG>. 84 + The PERIPH 0 means gpio, PERIPH 1 is periph A, PERIPH 2 is periph B... 85 + PIN_BANK 0 is pioA, PIN_BANK 1 is pioB... 86 87 Bits used for CONFIG: 88 PULL_UP (1 << 0): indicate this pin need a pull up. ··· 126 pinctrl_dbgu: dbgu-0 { 127 atmel,pins = 128 <1 14 0x1 0x0 /* PB14 periph A */ 129 + 1 15 0x1 0x1>; /* PB15 periph A with pullup */ 130 }; 131 }; 132 };
+2 -2
arch/arm/boot/dts/at91rm9200.dtsi
··· 336 337 i2c@0 { 338 compatible = "i2c-gpio"; 339 - gpios = <&pioA 23 0 /* sda */ 340 - &pioA 24 0 /* scl */ 341 >; 342 i2c-gpio,sda-open-drain; 343 i2c-gpio,scl-open-drain;
··· 336 337 i2c@0 { 338 compatible = "i2c-gpio"; 339 + gpios = <&pioA 25 0 /* sda */ 340 + &pioA 26 0 /* scl */ 341 >; 342 i2c-gpio,sda-open-drain; 343 i2c-gpio,scl-open-drain;
+40 -20
arch/arm/boot/dts/at91sam9x5.dtsi
··· 143 atmel,pins = 144 <0 3 0x1 0x0>; /* PA3 periph A */ 145 }; 146 }; 147 148 usart1 { ··· 159 160 pinctrl_usart1_rts: usart1_rts-0 { 161 atmel,pins = 162 - <3 27 0x3 0x0>; /* PC27 periph C */ 163 }; 164 165 pinctrl_usart1_cts: usart1_cts-0 { 166 atmel,pins = 167 - <3 28 0x3 0x0>; /* PC28 periph C */ 168 }; 169 }; 170 ··· 182 183 pinctrl_uart2_rts: uart2_rts-0 { 184 atmel,pins = 185 - <0 0 0x2 0x0>; /* PB0 periph B */ 186 }; 187 188 pinctrl_uart2_cts: uart2_cts-0 { 189 atmel,pins = 190 - <0 1 0x2 0x0>; /* PB1 periph B */ 191 }; 192 }; 193 194 usart3 { 195 pinctrl_uart3: usart3-0 { 196 atmel,pins = 197 - <3 23 0x2 0x1 /* PC22 periph B with pullup */ 198 - 3 23 0x2 0x0>; /* PC23 periph B */ 199 }; 200 201 pinctrl_usart3_rts: usart3_rts-0 { 202 atmel,pins = 203 - <3 24 0x2 0x0>; /* PC24 periph B */ 204 }; 205 206 pinctrl_usart3_cts: usart3_cts-0 { 207 atmel,pins = 208 - <3 25 0x2 0x0>; /* PC25 periph B */ 209 }; 210 }; 211 212 uart0 { 213 pinctrl_uart0: uart0-0 { 214 atmel,pins = 215 - <3 8 0x3 0x0 /* PC8 periph C */ 216 - 3 9 0x3 0x1>; /* PC9 periph C with pullup */ 217 }; 218 }; 219 220 uart1 { 221 pinctrl_uart1: uart1-0 { 222 atmel,pins = 223 - <3 16 0x3 0x0 /* PC16 periph C */ 224 - 3 17 0x3 0x1>; /* PC17 periph C with pullup */ 225 }; 226 }; 227 ··· 260 261 pinctrl_macb0_rmii_mii: macb0_rmii_mii-0 { 262 atmel,pins = 263 - <1 8 0x1 0x0 /* PA8 periph A */ 264 - 1 11 0x1 0x0 /* PA11 periph A */ 265 - 1 12 0x1 0x0 /* PA12 periph A */ 266 - 1 13 0x1 0x0 /* PA13 periph A */ 267 - 1 14 0x1 0x0 /* PA14 periph A */ 268 - 1 15 0x1 0x0 /* PA15 periph A */ 269 - 1 16 0x1 0x0 /* PA16 periph A */ 270 - 1 17 0x1 0x0>; /* PA17 periph A */ 271 }; 272 }; 273
··· 143 atmel,pins = 144 <0 3 0x1 0x0>; /* PA3 periph A */ 145 }; 146 + 147 + pinctrl_usart0_sck: usart0_sck-0 { 148 + atmel,pins = 149 + <0 4 0x1 0x0>; /* PA4 periph A */ 150 + }; 151 }; 152 153 usart1 { ··· 154 155 pinctrl_usart1_rts: usart1_rts-0 { 156 atmel,pins = 157 + <2 27 0x3 0x0>; /* PC27 periph C */ 158 }; 159 160 pinctrl_usart1_cts: usart1_cts-0 { 161 atmel,pins = 162 + <2 28 0x3 0x0>; /* PC28 periph C */ 163 + }; 164 + 165 + pinctrl_usart1_sck: usart1_sck-0 { 166 + atmel,pins = 167 + <2 28 0x3 0x0>; /* PC29 periph C */ 168 }; 169 }; 170 ··· 172 173 pinctrl_uart2_rts: uart2_rts-0 { 174 atmel,pins = 175 + <1 0 0x2 0x0>; /* PB0 periph B */ 176 }; 177 178 pinctrl_uart2_cts: uart2_cts-0 { 179 atmel,pins = 180 + <1 1 0x2 0x0>; /* PB1 periph B */ 181 + }; 182 + 183 + pinctrl_usart2_sck: usart2_sck-0 { 184 + atmel,pins = 185 + <1 2 0x2 0x0>; /* PB2 periph B */ 186 }; 187 }; 188 189 usart3 { 190 pinctrl_uart3: usart3-0 { 191 atmel,pins = 192 + <2 23 0x2 0x1 /* PC22 periph B with pullup */ 193 + 2 23 0x2 0x0>; /* PC23 periph B */ 194 }; 195 196 pinctrl_usart3_rts: usart3_rts-0 { 197 atmel,pins = 198 + <2 24 0x2 0x0>; /* PC24 periph B */ 199 }; 200 201 pinctrl_usart3_cts: usart3_cts-0 { 202 atmel,pins = 203 + <2 25 0x2 0x0>; /* PC25 periph B */ 204 + }; 205 + 206 + pinctrl_usart3_sck: usart3_sck-0 { 207 + atmel,pins = 208 + <2 26 0x2 0x0>; /* PC26 periph B */ 209 }; 210 }; 211 212 uart0 { 213 pinctrl_uart0: uart0-0 { 214 atmel,pins = 215 + <2 8 0x3 0x0 /* PC8 periph C */ 216 + 2 9 0x3 0x1>; /* PC9 periph C with pullup */ 217 }; 218 }; 219 220 uart1 { 221 pinctrl_uart1: uart1-0 { 222 atmel,pins = 223 + <2 16 0x3 0x0 /* PC16 periph C */ 224 + 2 17 0x3 0x1>; /* PC17 periph C with pullup */ 225 }; 226 }; 227 ··· 240 241 pinctrl_macb0_rmii_mii: macb0_rmii_mii-0 { 242 atmel,pins = 243 + <1 8 0x1 0x0 /* PB8 periph A */ 244 + 1 11 0x1 0x0 /* PB11 periph A */ 245 + 1 12 0x1 0x0 /* PB12 periph A */ 246 + 1 13 0x1 0x0 /* PB13 periph A */ 247 + 1 14 0x1 0x0 /* PB14 periph A */ 248 + 1 15 0x1 0x0 /* PB15 periph A */ 249 + 1 16 0x1 0x0 /* PB16 periph A */ 250 + 1 17 0x1 0x0>; /* PB17 periph A */ 251 }; 252 }; 253
+2
arch/arm/boot/dts/kizbox.dts
··· 48 49 macb0: ethernet@fffc4000 { 50 phy-mode = "mii"; 51 status = "okay"; 52 }; 53
··· 48 49 macb0: ethernet@fffc4000 { 50 phy-mode = "mii"; 51 + pinctrl-0 = <&pinctrl_macb_rmii 52 + &pinctrl_macb_rmii_mii_alt>; 53 status = "okay"; 54 }; 55
+2 -1
arch/arm/configs/at91_dt_defconfig
··· 19 CONFIG_SOC_AT91SAM9263=y 20 CONFIG_SOC_AT91SAM9G45=y 21 CONFIG_SOC_AT91SAM9X5=y 22 CONFIG_MACH_AT91SAM_DT=y 23 CONFIG_AT91_PROGRAMMABLE_CLOCKS=y 24 CONFIG_AT91_TIMER_HZ=128 ··· 32 CONFIG_ZBOOT_ROM_BSS=0x0 33 CONFIG_ARM_APPENDED_DTB=y 34 CONFIG_ARM_ATAG_DTB_COMPAT=y 35 - CONFIG_CMDLINE="mem=128M console=ttyS0,115200 initrd=0x21100000,25165824 root=/dev/ram0 rw" 36 CONFIG_KEXEC=y 37 CONFIG_AUTO_ZRELADDR=y 38 # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
··· 19 CONFIG_SOC_AT91SAM9263=y 20 CONFIG_SOC_AT91SAM9G45=y 21 CONFIG_SOC_AT91SAM9X5=y 22 + CONFIG_SOC_AT91SAM9N12=y 23 CONFIG_MACH_AT91SAM_DT=y 24 CONFIG_AT91_PROGRAMMABLE_CLOCKS=y 25 CONFIG_AT91_TIMER_HZ=128 ··· 31 CONFIG_ZBOOT_ROM_BSS=0x0 32 CONFIG_ARM_APPENDED_DTB=y 33 CONFIG_ARM_ATAG_DTB_COMPAT=y 34 + CONFIG_CMDLINE="console=ttyS0,115200 initrd=0x21100000,25165824 root=/dev/ram0 rw" 35 CONFIG_KEXEC=y 36 CONFIG_AUTO_ZRELADDR=y 37 # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
+2
arch/arm/mach-at91/setup.c
··· 105 switch (socid) { 106 case ARCH_ID_AT91RM9200: 107 at91_soc_initdata.type = AT91_SOC_RM9200; 108 at91_boot_soc = at91rm9200_soc; 109 break; 110
··· 105 switch (socid) { 106 case ARCH_ID_AT91RM9200: 107 at91_soc_initdata.type = AT91_SOC_RM9200; 108 + if (at91_soc_initdata.subtype == AT91_SOC_SUBTYPE_NONE) 109 + at91_soc_initdata.subtype = AT91_SOC_RM9200_BGA; 110 at91_boot_soc = at91rm9200_soc; 111 break; 112