1/* 2 * at91-sama5d3_xplained.dts - Device Tree file for the SAMA5D3 Xplained board 3 * 4 * Copyright (C) 2014 Atmel, 5 * 2014 Nicolas Ferre <nicolas.ferre@atmel.com> 6 * 7 * Licensed under GPLv2 or later. 8 */ 9/dts-v1/; 10#include "sama5d36.dtsi" 11 12/ { 13 model = "SAMA5D3 Xplained"; 14 compatible = "atmel,sama5d3-xplained", "atmel,sama5d3", "atmel,sama5"; 15 16 chosen { 17 u-boot,dm-pre-reloc; 18 stdout-path = &dbgu; 19 }; 20 21 aliases { 22 spi0 = &spi0; 23 }; 24 25 memory { 26 reg = <0x20000000 0x10000000>; 27 }; 28 29 clocks { 30 slow_xtal { 31 clock-frequency = <32768>; 32 }; 33 34 main_xtal { 35 clock-frequency = <12000000>; 36 }; 37 }; 38 39 onewire_tm: onewire { 40 gpios = <&pioE 23 GPIO_ACTIVE_LOW>; 41 pinctrl-names = "default"; 42 pinctrl-0 = <&pinctrl_onewire_tm_default>; 43 status = "okay"; 44 45 w1_eeprom: w1_eeprom@0 { 46 compatible = "maxim,ds24b33"; 47 status = "okay"; 48 }; 49 }; 50 51 ahb { 52 apb { 53 mmc0: mmc@f0000000 { 54 u-boot,dm-pre-reloc; 55 pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_dat4_7 &pinctrl_mmc0_cd>; 56 vmmc-supply = <&vcc_mmc0_reg>; 57 vqmmc-supply = <&vcc_3v3_reg>; 58 status = "okay"; 59 slot@0 { 60 reg = <0>; 61 bus-width = <8>; 62 cd-gpios = <&pioE 0 GPIO_ACTIVE_LOW>; 63 }; 64 }; 65 66 mmc1: mmc@f8000000 { 67 u-boot,dm-pre-reloc; 68 vmmc-supply = <&vcc_3v3_reg>; 69 vqmmc-supply = <&vcc_3v3_reg>; 70 status = "disabled"; 71 slot@0 { 72 reg = <0>; 73 bus-width = <4>; 74 cd-gpios = <&pioE 1 GPIO_ACTIVE_LOW>; 75 }; 76 }; 77 78 spi0: spi@f0004000 { 79 cs-gpios = <&pioD 13 0>, <0>, <0>, <&pioD 16 0>; 80 status = "okay"; 81 }; 82 83 can0: can@f000c000 { 84 status = "okay"; 85 }; 86 87 i2c0: i2c@f0014000 { 88 pinctrl-0 = <&pinctrl_i2c0_pu>; 89 status = "okay"; 90 }; 91 92 i2c1: i2c@f0018000 { 93 status = "okay"; 94 95 pmic: act8865@5b { 96 compatible = "active-semi,act8865"; 97 reg = <0x5b>; 98 status = "disabled"; 99 100 regulators { 101 vcc_1v8_reg: DCDC_REG1 { 102 regulator-name = "VCC_1V8"; 103 regulator-min-microvolt = <1800000>; 104 regulator-max-microvolt = <1800000>; 105 regulator-always-on; 106 }; 107 108 vcc_1v2_reg: DCDC_REG2 { 109 regulator-name = "VCC_1V2"; 110 regulator-min-microvolt = <1200000>; 111 regulator-max-microvolt = <1200000>; 112 regulator-always-on; 113 }; 114 115 vcc_3v3_reg: DCDC_REG3 { 116 regulator-name = "VCC_3V3"; 117 regulator-min-microvolt = <3300000>; 118 regulator-max-microvolt = <3300000>; 119 regulator-always-on; 120 }; 121 122 vddfuse_reg: LDO_REG1 { 123 regulator-name = "FUSE_2V5"; 124 regulator-min-microvolt = <2500000>; 125 regulator-max-microvolt = <2500000>; 126 }; 127 128 vddana_reg: LDO_REG2 { 129 regulator-name = "VDDANA"; 130 regulator-min-microvolt = <3300000>; 131 regulator-max-microvolt = <3300000>; 132 regulator-always-on; 133 }; 134 }; 135 }; 136 }; 137 138 macb0: ethernet@f0028000 { 139 phy-mode = "rgmii"; 140 #address-cells = <1>; 141 #size-cells = <0>; 142 status = "okay"; 143 144 ethernet-phy@7 { 145 reg = <0x7>; 146 }; 147 }; 148 149 pwm0: pwm@f002c000 { 150 pinctrl-names = "default"; 151 pinctrl-0 = <&pinctrl_pwm0_pwmh0_0 &pinctrl_pwm0_pwmh1_0>; 152 status = "okay"; 153 }; 154 155 usart0: serial@f001c000 { 156 status = "okay"; 157 }; 158 159 usart1: serial@f0020000 { 160 pinctrl-0 = <&pinctrl_usart1 &pinctrl_usart1_rts_cts>; 161 status = "okay"; 162 }; 163 164 uart0: serial@f0024000 { 165 status = "okay"; 166 }; 167 168 mmc1: mmc@f8000000 { 169 pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3 &pinctrl_mmc1_cd>; 170 status = "okay"; 171 slot@0 { 172 reg = <0>; 173 bus-width = <4>; 174 cd-gpios = <&pioE 1 GPIO_ACTIVE_HIGH>; 175 }; 176 }; 177 178 spi1: spi@f8008000 { 179 cs-gpios = <&pioC 25 0>; 180 status = "okay"; 181 }; 182 183 adc0: adc@f8018000 { 184 pinctrl-0 = < 185 &pinctrl_adc0_adtrg 186 &pinctrl_adc0_ad0 187 &pinctrl_adc0_ad1 188 &pinctrl_adc0_ad2 189 &pinctrl_adc0_ad3 190 &pinctrl_adc0_ad4 191 &pinctrl_adc0_ad5 192 &pinctrl_adc0_ad6 193 &pinctrl_adc0_ad7 194 &pinctrl_adc0_ad8 195 &pinctrl_adc0_ad9 196 >; 197 status = "okay"; 198 }; 199 200 i2c2: i2c@f801c000 { 201 dmas = <0>, <0>; /* Do not use DMA for i2c2 */ 202 pinctrl-0 = <&pinctrl_i2c2_pu>; 203 status = "okay"; 204 }; 205 206 macb1: ethernet@f802c000 { 207 phy-mode = "rmii"; 208 #address-cells = <1>; 209 #size-cells = <0>; 210 status = "okay"; 211 212 ethernet-phy@1 { 213 reg = <0x1>; 214 }; 215 }; 216 217 dbgu: serial@ffffee00 { 218 u-boot,dm-pre-reloc; 219 status = "okay"; 220 }; 221 222 pinctrl@fffff200 { 223 board { 224 u-boot,dm-pre-reloc; 225 pinctrl_i2c0_pu: i2c0_pu { 226 atmel,pins = 227 <AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>, 228 <AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; 229 }; 230 231 pinctrl_i2c2_pu: i2c2_pu { 232 atmel,pins = 233 <AT91_PIOA 18 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>, 234 <AT91_PIOA 19 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>; 235 }; 236 237 pinctrl_key_gpio: key_gpio_0 { 238 atmel,pins = 239 <AT91_PIOE 29 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; 240 }; 241 242 pinctrl_mmc0_cd: mmc0_cd { 243 u-boot,dm-pre-reloc; 244 atmel,pins = 245 <AT91_PIOE 0 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; 246 }; 247 248 pinctrl_mmc1_cd: mmc1_cd { 249 u-boot,dm-pre-reloc; 250 atmel,pins = 251 <AT91_PIOE 1 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; 252 }; 253 254 pinctrl_usba_vbus: usba_vbus { 255 atmel,pins = 256 <AT91_PIOE 9 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>; /* PE9, conflicts with A9 */ 257 }; 258 259 pinctrl_onewire_tm_default: onewire_tm_default { 260 atmel,pins = 261 <AT91_PIOE 23 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; 262 }; 263 }; 264 }; 265 }; 266 267 nand0: nand@60000000 { 268 nand-bus-width = <8>; 269 nand-ecc-mode = "hw"; 270 atmel,has-pmecc; 271 atmel,pmecc-cap = <4>; 272 atmel,pmecc-sector-size = <512>; 273 nand-on-flash-bbt; 274 status = "okay"; 275 276 at91bootstrap@0 { 277 label = "at91bootstrap"; 278 reg = <0x0 0x40000>; 279 }; 280 281 bootloader@40000 { 282 label = "bootloader"; 283 reg = <0x40000 0x80000>; 284 }; 285 286 bootloaderenv@c0000 { 287 label = "bootloader env"; 288 reg = <0xc0000 0xc0000>; 289 }; 290 291 dtb@180000 { 292 label = "device tree"; 293 reg = <0x180000 0x80000>; 294 }; 295 296 kernel@200000 { 297 label = "kernel"; 298 reg = <0x200000 0x600000>; 299 }; 300 301 rootfs@800000 { 302 label = "rootfs"; 303 reg = <0x800000 0x0f800000>; 304 }; 305 }; 306 307 usb0: gadget@00500000 { 308 atmel,vbus-gpio = <&pioE 9 GPIO_ACTIVE_HIGH>; /* PE9, conflicts with A9 */ 309 pinctrl-names = "default"; 310 pinctrl-0 = <&pinctrl_usba_vbus>; 311 status = "okay"; 312 }; 313 314 usb1: ohci@00600000 { 315 num-ports = <3>; 316 atmel,vbus-gpio = <0 317 &pioE 3 GPIO_ACTIVE_LOW 318 &pioE 4 GPIO_ACTIVE_LOW 319 >; 320 status = "okay"; 321 }; 322 323 usb2: ehci@00700000 { 324 status = "okay"; 325 }; 326 }; 327 328 vcc_mmc0_reg: fixedregulator@0 { 329 compatible = "regulator-fixed"; 330 gpio = <&pioE 2 GPIO_ACTIVE_LOW>; 331 regulator-name = "mmc0-card-supply"; 332 regulator-min-microvolt = <3300000>; 333 regulator-max-microvolt = <3300000>; 334 regulator-always-on; 335 }; 336 337 gpio_keys { 338 compatible = "gpio-keys"; 339 340 pinctrl-names = "default"; 341 pinctrl-0 = <&pinctrl_key_gpio>; 342 343 bp3 { 344 label = "PB_USER"; 345 gpios = <&pioE 29 GPIO_ACTIVE_LOW>; 346 linux,code = <0x104>; 347 wakeup-source; 348 }; 349 }; 350 351 leds { 352 compatible = "gpio-leds"; 353 354 d2 { 355 label = "d2"; 356 gpios = <&pioE 23 GPIO_ACTIVE_LOW>; /* PE23, conflicts with A23, CTS2 */ 357 linux,default-trigger = "heartbeat"; 358 }; 359 360 d3 { 361 label = "d3"; 362 gpios = <&pioE 24 GPIO_ACTIVE_HIGH>; 363 }; 364 }; 365}; 366