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