1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * at91-sam9x60ek.dts - Device Tree file for Microchip SAM9X60-EK board 4 * 5 * Copyright (C) 2019 Microchip Technology Inc. and its subsidiaries 6 * 7 * Author: Sandeep Sheriker M <sandeepsheriker.mallikarjun@microchip.com> 8 */ 9/dts-v1/; 10#include "sam9x60.dtsi" 11#include <dt-bindings/input/input.h> 12 13/ { 14 model = "Microchip SAM9X60-EK"; 15 compatible = "microchip,sam9x60ek", "microchip,sam9x60", "atmel,at91sam9"; 16 17 aliases { 18 i2c0 = &i2c0; 19 i2c1 = &i2c6; 20 serial1 = &uart5; 21 }; 22 23 chosen { 24 stdout-path = "serial0:115200n8"; 25 }; 26 27 clocks { 28 slow_xtal { 29 clock-frequency = <32768>; 30 }; 31 32 main_xtal { 33 clock-frequency = <24000000>; 34 }; 35 }; 36 37 gpio-keys { 38 compatible = "gpio-keys"; 39 pinctrl-names = "default"; 40 pinctrl-0 = <&pinctrl_key_gpio_default>; 41 42 button-1 { 43 label = "SW1"; 44 gpios = <&pioD 18 GPIO_ACTIVE_LOW>; 45 linux,code = <KEY_PROG1>; 46 wakeup-source; 47 }; 48 }; 49 50 leds { 51 compatible = "gpio-leds"; 52 pinctrl-names = "default"; 53 pinctrl-0 = <&pinctrl_gpio_leds>; 54 status = "okay"; /* Conflict with pwm0. */ 55 56 led-red { 57 label = "red"; 58 gpios = <&pioB 11 GPIO_ACTIVE_HIGH>; 59 }; 60 61 led-green { 62 label = "green"; 63 gpios = <&pioB 12 GPIO_ACTIVE_HIGH>; 64 }; 65 66 led-blue { 67 label = "blue"; 68 gpios = <&pioB 13 GPIO_ACTIVE_HIGH>; 69 linux,default-trigger = "heartbeat"; 70 }; 71 }; 72 73 vdd_1v8: fixed-regulator-vdd_1v8 { 74 compatible = "regulator-fixed"; 75 regulator-name = "VDD_1V8"; 76 regulator-min-microvolt = <1800000>; 77 regulator-max-microvolt = <1800000>; 78 regulator-always-on; 79 }; 80 81 vdd_1v15: fixed-regulator-vdd_1v15 { 82 compatible = "regulator-fixed"; 83 regulator-name = "VDD_1V15"; 84 regulator-min-microvolt = <1150000>; 85 regulator-max-microvolt = <1150000>; 86 regulator-always-on; 87 }; 88 89 vdd1_3v3: fixed-regulator-vdd1_3v3 { 90 compatible = "regulator-fixed"; 91 regulator-name = "VDD1_3V3"; 92 regulator-min-microvolt = <3300000>; 93 regulator-max-microvolt = <3300000>; 94 regulator-always-on; 95 }; 96 97 vdd2_3v3: regulator-fixed-vdd2_3v3 { 98 compatible = "regulator-fixed"; 99 regulator-name = "VDD2_3V3"; 100 regulator-min-microvolt = <3300000>; 101 regulator-max-microvolt = <3300000>; 102 regulator-always-on; 103 }; 104}; 105 106&adc { 107 vddana-supply = <&vdd1_3v3>; 108 vref-supply = <&vdd1_3v3>; 109 pinctrl-names = "default"; 110 pinctrl-0 = <&pinctrl_adc_default &pinctrl_adtrg_default>; 111 status = "okay"; 112}; 113 114&can0 { 115 pinctrl-names = "default"; 116 pinctrl-0 = <&pinctrl_can0_rx_tx>; 117 status = "disabled"; /* Conflict with dbgu. */ 118}; 119 120&can1 { 121 pinctrl-names = "default"; 122 pinctrl-0 = <&pinctrl_can1_rx_tx>; 123 status = "okay"; 124}; 125 126&classd { 127 pinctrl-names = "default"; 128 pinctrl-0 = <&pinctrl_classd_default>; 129 atmel,pwm-type = "diff"; 130 atmel,non-overlap-time = <10>; 131 status = "okay"; 132}; 133 134&dbgu { 135 pinctrl-names = "default"; 136 pinctrl-0 = <&pinctrl_dbgu>; 137 status = "okay"; /* Conflict with can0. */ 138}; 139 140&ebi { 141 pinctrl-names = "default"; 142 pinctrl-0 = <&pinctrl_ebi_addr_nand &pinctrl_ebi_data_0_7>; 143 status = "okay"; 144 145 nand_controller: nand-controller { 146 pinctrl-names = "default"; 147 pinctrl-0 = <&pinctrl_nand_oe_we &pinctrl_nand_cs &pinctrl_nand_rb>; 148 status = "okay"; 149 150 nand@3 { 151 reg = <0x3 0x0 0x800000>; 152 rb-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>; 153 cs-gpios = <&pioD 4 GPIO_ACTIVE_HIGH>; 154 nand-bus-width = <8>; 155 nand-ecc-mode = "hw"; 156 nand-ecc-strength = <8>; 157 nand-ecc-step-size = <512>; 158 nand-on-flash-bbt; 159 label = "atmel_nand"; 160 161 partitions { 162 compatible = "fixed-partitions"; 163 #address-cells = <1>; 164 #size-cells = <1>; 165 166 at91bootstrap@0 { 167 label = "at91bootstrap"; 168 reg = <0x0 0x40000>; 169 }; 170 171 uboot@40000 { 172 label = "u-boot"; 173 reg = <0x40000 0xc0000>; 174 }; 175 176 ubootenvred@100000 { 177 label = "U-Boot Env Redundant"; 178 reg = <0x100000 0x40000>; 179 }; 180 181 ubootenv@140000 { 182 label = "U-Boot Env"; 183 reg = <0x140000 0x40000>; 184 }; 185 186 dtb@180000 { 187 label = "device tree"; 188 reg = <0x180000 0x80000>; 189 }; 190 191 kernel@200000 { 192 label = "kernel"; 193 reg = <0x200000 0x600000>; 194 }; 195 196 rootfs@800000 { 197 label = "rootfs"; 198 reg = <0x800000 0x1f800000>; 199 }; 200 }; 201 }; 202 }; 203}; 204 205&flx0 { 206 atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>; 207 status = "okay"; 208 209 i2c0: i2c@600 { 210 dmas = <0>, <0>; 211 pinctrl-names = "default"; 212 pinctrl-0 = <&pinctrl_flx0_default>; 213 i2c-analog-filter; 214 i2c-digital-filter; 215 i2c-digital-filter-width-ns = <35>; 216 status = "okay"; 217 218 eeprom@53 { 219 compatible = "atmel,24c02"; 220 reg = <0x53>; 221 pagesize = <16>; 222 status = "okay"; 223 }; 224 }; 225}; 226 227&flx4 { 228 atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_SPI>; 229 status = "disabled"; 230 231 spi4: spi@400 { 232 dmas = <0>, <0>; 233 pinctrl-names = "default"; 234 pinctrl-0 = <&pinctrl_flx4_default>; 235 status = "disabled"; 236 }; 237}; 238 239&flx5 { 240 atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>; 241 status = "okay"; 242 243 uart5: serial@200 { 244 pinctrl-names = "default"; 245 pinctrl-0 = <&pinctrl_flx5_default>; 246 status = "okay"; 247 }; 248}; 249 250&flx6 { 251 atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>; 252 status = "okay"; 253 254 i2c6: i2c@600 { 255 dmas = <0>, <0>; 256 pinctrl-names = "default"; 257 pinctrl-0 = <&pinctrl_flx6_default>; 258 i2c-analog-filter; 259 i2c-digital-filter; 260 i2c-digital-filter-width-ns = <35>; 261 status = "okay"; 262 263 power-monitor@17 { 264 compatible = "microchip,pac1934"; 265 reg = <0x17>; 266 #address-cells = <1>; 267 #size-cells = <0>; 268 269 channel@1 { 270 reg = <0x1>; 271 shunt-resistor-micro-ohms = <10000>; 272 label = "VDDIOM"; 273 }; 274 275 channel@2 { 276 reg = <0x2>; 277 shunt-resistor-micro-ohms = <10000>; 278 label = "VDDCORE"; 279 }; 280 281 channel@3 { 282 reg = <0x3>; 283 shunt-resistor-micro-ohms = <10000>; 284 label = "VDD3V3_MPU"; 285 }; 286 287 channel@4 { 288 reg = <0x4>; 289 shunt-resistor-micro-ohms = <10000>; 290 label = "VDD3V3"; 291 }; 292 }; 293 294 gpio_exp: mcp23008@20 { 295 compatible = "microchip,mcp23008"; 296 reg = <0x20>; 297 }; 298 }; 299}; 300 301&gpbr { 302 status = "okay"; 303}; 304 305&i2s { 306 pinctrl-names = "default"; 307 pinctrl-0 = <&pinctrl_i2s_default>; 308 #sound-dai-cells = <0>; 309 status = "disabled"; /* Conflict with QSPI. */ 310}; 311 312&macb0 { 313 phy-mode = "rmii"; 314 #address-cells = <1>; 315 #size-cells = <0>; 316 pinctrl-names = "default"; 317 pinctrl-0 = <&pinctrl_macb0_rmii>; 318 status = "okay"; 319 320 ethernet-phy@0 { 321 reg = <0x0>; 322 interrupt-parent = <&pioB>; 323 interrupts = <8 IRQ_TYPE_LEVEL_LOW>; 324 }; 325}; 326 327&pinctrl { 328 adc { 329 pinctrl_adc_default: adc_default { 330 atmel,pins = <AT91_PIOB 15 AT91_PERIPH_A AT91_PINCTRL_NONE>; 331 }; 332 333 pinctrl_adtrg_default: adtrg_default { 334 atmel,pins = <AT91_PIOB 18 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>; 335 }; 336 }; 337 338 dbgu { 339 pinctrl_dbgu: dbgu-0 { 340 atmel,pins = <AT91_PIOA 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP 341 AT91_PIOA 10 AT91_PERIPH_A AT91_PINCTRL_NONE>; 342 }; 343 }; 344 345 i2s { 346 pinctrl_i2s_default: i2s { 347 atmel,pins = 348 <AT91_PIOB 19 AT91_PERIPH_B AT91_PINCTRL_NONE /* I2SCK */ 349 AT91_PIOB 20 AT91_PERIPH_B AT91_PINCTRL_NONE /* I2SWS */ 350 AT91_PIOB 21 AT91_PERIPH_B AT91_PINCTRL_NONE /* I2SDIN */ 351 AT91_PIOB 22 AT91_PERIPH_B AT91_PINCTRL_NONE /* I2SDOUT */ 352 AT91_PIOB 23 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* I2SMCK */ 353 }; 354 }; 355 356 qspi { 357 pinctrl_qspi: qspi { 358 atmel,pins = 359 <AT91_PIOB 19 AT91_PERIPH_A AT91_PINCTRL_SLEWRATE_DIS 360 AT91_PIOB 20 AT91_PERIPH_A AT91_PINCTRL_SLEWRATE_DIS 361 AT91_PIOB 21 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS) 362 AT91_PIOB 22 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS) 363 AT91_PIOB 23 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS) 364 AT91_PIOB 24 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS)>; 365 }; 366 }; 367 368 nand { 369 pinctrl_nand_oe_we: nand-oe-we-0 { 370 atmel,pins = 371 <AT91_PIOD 0 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) 372 AT91_PIOD 1 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>; 373 }; 374 375 pinctrl_nand_rb: nand-rb-0 { 376 atmel,pins = 377 <AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; 378 }; 379 380 pinctrl_nand_cs: nand-cs-0 { 381 atmel,pins = 382 <AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; 383 }; 384 }; 385 386 ebi { 387 pinctrl_ebi_data_0_7: ebi-data-lsb-0 { 388 atmel,pins = 389 <AT91_PIOD 6 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) 390 AT91_PIOD 7 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) 391 AT91_PIOD 8 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) 392 AT91_PIOD 9 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) 393 AT91_PIOD 10 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) 394 AT91_PIOD 11 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) 395 AT91_PIOD 12 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) 396 AT91_PIOD 13 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>; 397 }; 398 399 pinctrl_ebi_data_0_15: ebi-data-msb-0 { 400 atmel,pins = 401 <AT91_PIOD 6 AT91_PERIPH_A AT91_PINCTRL_NONE 402 AT91_PIOD 7 AT91_PERIPH_A AT91_PINCTRL_NONE 403 AT91_PIOD 8 AT91_PERIPH_A AT91_PINCTRL_NONE 404 AT91_PIOD 9 AT91_PERIPH_A AT91_PINCTRL_NONE 405 AT91_PIOD 10 AT91_PERIPH_A AT91_PINCTRL_NONE 406 AT91_PIOD 11 AT91_PERIPH_A AT91_PINCTRL_NONE 407 AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_NONE 408 AT91_PIOD 13 AT91_PERIPH_A AT91_PINCTRL_NONE 409 AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_NONE 410 AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE 411 AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_NONE 412 AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE 413 AT91_PIOD 18 AT91_PERIPH_A AT91_PINCTRL_NONE 414 AT91_PIOD 19 AT91_PERIPH_A AT91_PINCTRL_NONE 415 AT91_PIOD 20 AT91_PERIPH_A AT91_PINCTRL_NONE 416 AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_NONE>; 417 }; 418 419 pinctrl_ebi_addr_nand: ebi-addr-0 { 420 atmel,pins = 421 <AT91_PIOD 2 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) 422 AT91_PIOD 3 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>; 423 }; 424 }; 425 426 flexcom { 427 pinctrl_flx0_default: flx0_twi { 428 atmel,pins = 429 <AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_PULL_UP 430 AT91_PIOA 1 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; 431 }; 432 433 pinctrl_flx4_default: flx4_spi { 434 atmel,pins = 435 <AT91_PIOA 11 AT91_PERIPH_A AT91_PINCTRL_NONE 436 AT91_PIOA 12 AT91_PERIPH_A AT91_PINCTRL_NONE 437 AT91_PIOA 13 AT91_PERIPH_A AT91_PINCTRL_NONE 438 AT91_PIOA 14 AT91_PERIPH_A AT91_PINCTRL_NONE>; 439 }; 440 441 pinctrl_flx5_default: flx5_uart { 442 atmel,pins = 443 <AT91_PIOA 7 AT91_PERIPH_C AT91_PINCTRL_NONE 444 AT91_PIOA 8 AT91_PERIPH_B AT91_PINCTRL_NONE 445 AT91_PIOA 21 AT91_PERIPH_B AT91_PINCTRL_NONE 446 AT91_PIOA 22 AT91_PERIPH_B AT91_PINCTRL_NONE>; 447 }; 448 449 pinctrl_flx6_default: flx6_twi { 450 atmel,pins = 451 <AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_PULL_UP 452 AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; 453 }; 454 }; 455 456 classd { 457 pinctrl_classd_default: classd { 458 atmel,pins = 459 <AT91_PIOA 24 AT91_PERIPH_C AT91_PINCTRL_PULL_UP 460 AT91_PIOA 25 AT91_PERIPH_C AT91_PINCTRL_PULL_DOWN 461 AT91_PIOA 26 AT91_PERIPH_C AT91_PINCTRL_PULL_UP 462 AT91_PIOA 27 AT91_PERIPH_C AT91_PINCTRL_PULL_DOWN>; 463 }; 464 }; 465 466 can0 { 467 pinctrl_can0_rx_tx: can0_rx_tx { 468 atmel,pins = 469 <AT91_PIOA 9 AT91_PERIPH_B AT91_PINCTRL_NONE /* CANRX0 */ 470 AT91_PIOA 10 AT91_PERIPH_B AT91_PINCTRL_NONE /* CANTX0 */ 471 AT91_PIOD 20 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN /* Enable CAN0 mux */ 472 AT91_PIOD 21 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN>; /* Enable CAN Transceivers */ 473 }; 474 }; 475 476 can1 { 477 pinctrl_can1_rx_tx: can1_rx_tx { 478 atmel,pins = 479 <AT91_PIOA 6 AT91_PERIPH_B AT91_PINCTRL_NONE /* CANRX1 RXD1 */ 480 AT91_PIOA 5 AT91_PERIPH_B AT91_PINCTRL_NONE /* CANTX1 TXD1 */ 481 AT91_PIOD 19 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN /* Enable CAN1 mux */ 482 AT91_PIOD 21 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN>; /* Enable CAN Transceivers */ 483 }; 484 }; 485 486 macb0 { 487 pinctrl_macb0_rmii: macb0_rmii-0 { 488 atmel,pins = 489 <AT91_PIOB 0 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB0 periph A */ 490 AT91_PIOB 1 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB1 periph A */ 491 AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB2 periph A */ 492 AT91_PIOB 3 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB3 periph A */ 493 AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB4 periph A */ 494 AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB5 periph A */ 495 AT91_PIOB 6 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB6 periph A */ 496 AT91_PIOB 7 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB7 periph A */ 497 AT91_PIOB 8 AT91_PERIPH_GPIO AT91_PINCTRL_NONE /* PB8 IRQ GPIO */ 498 AT91_PIOB 9 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB9 periph A */ 499 AT91_PIOB 10 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB10 periph A */ 500 }; 501 }; 502 503 pwm0 { 504 pinctrl_pwm0_0: pwm0_0 { 505 atmel,pins = <AT91_PIOB 11 AT91_PERIPH_B AT91_PINCTRL_NONE>; 506 }; 507 508 pinctrl_pwm0_1: pwm0_1 { 509 atmel,pins = <AT91_PIOB 12 AT91_PERIPH_B AT91_PINCTRL_NONE>; 510 }; 511 512 pinctrl_pwm0_2: pwm0_2 { 513 atmel,pins = <AT91_PIOB 13 AT91_PERIPH_B AT91_PINCTRL_NONE>; 514 }; 515 516 pinctrl_pwm0_3: pwm0_3 { 517 atmel,pins = <AT91_PIOB 14 AT91_PERIPH_B AT91_PINCTRL_NONE>; 518 }; 519 }; 520 521 sdmmc0 { 522 pinctrl_sdmmc0_default: sdmmc0 { 523 atmel,pins = 524 <AT91_PIOA 17 AT91_PERIPH_A (AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA17 CK periph A with pullup */ 525 AT91_PIOA 16 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA16 CMD periph A with pullup */ 526 AT91_PIOA 15 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA15 DAT0 periph A */ 527 AT91_PIOA 18 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA18 DAT1 periph A with pullup */ 528 AT91_PIOA 19 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA19 DAT2 periph A with pullup */ 529 AT91_PIOA 20 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)>; /* PA20 DAT3 periph A with pullup */ 530 }; 531 pinctrl_sdmmc0_cd: sdmmc0_cd { 532 atmel,pins = 533 <AT91_PIOA 23 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; 534 }; 535 }; 536 537 sdmmc1 { 538 pinctrl_sdmmc1_default: sdmmc1 { 539 atmel,pins = 540 <AT91_PIOA 13 AT91_PERIPH_B (AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA13 CK periph B */ 541 AT91_PIOA 12 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA12 CMD periph B with pullup */ 542 AT91_PIOA 11 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA11 DAT0 periph B with pullup */ 543 AT91_PIOA 2 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA2 DAT1 periph B with pullup */ 544 AT91_PIOA 3 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA3 DAT2 periph B with pullup */ 545 AT91_PIOA 4 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)>; /* PA4 DAT3 periph B with pullup */ 546 }; 547 }; 548 549 gpio_keys { 550 pinctrl_key_gpio_default: pinctrl_key_gpio { 551 atmel,pins = <AT91_PIOD 18 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; 552 }; 553 }; 554 555 usb0 { 556 pinctrl_usba_vbus: usba_vbus { 557 atmel,pins = <AT91_PIOB 16 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; 558 }; 559 }; 560 561 usb1 { 562 pinctrl_usb_default: usb_default { 563 atmel,pins = <AT91_PIOD 15 AT91_PERIPH_GPIO AT91_PINCTRL_NONE 564 AT91_PIOD 16 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; 565 }; 566 }; 567 568 leds { 569 pinctrl_gpio_leds: gpio_leds { 570 atmel,pins = <AT91_PIOB 11 AT91_PERIPH_GPIO AT91_PINCTRL_NONE 571 AT91_PIOB 12 AT91_PERIPH_GPIO AT91_PINCTRL_NONE 572 AT91_PIOB 13 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; 573 }; 574 }; 575}; /* pinctrl */ 576 577&pwm0 { 578 pinctrl-names = "default"; 579 pinctrl-0 = <&pinctrl_pwm0_0 &pinctrl_pwm0_1 &pinctrl_pwm0_2 &pinctrl_pwm0_3>; 580 status = "disabled"; /* Conflict with leds. */ 581}; 582 583&sdmmc0 { 584 bus-width = <4>; 585 pinctrl-names = "default"; 586 pinctrl-0 = <&pinctrl_sdmmc0_default &pinctrl_sdmmc0_cd>; 587 status = "okay"; 588 cd-gpios = <&pioA 23 GPIO_ACTIVE_LOW>; 589 disable-wp; 590}; 591 592&sdmmc1 { 593 bus-width = <4>; 594 pinctrl-names = "default"; 595 pinctrl-0 = <&pinctrl_sdmmc1_default>; 596 no-1-8-v; 597 non-removable; 598 status = "disabled"; /* Conflict with flx4. */ 599}; 600 601&qspi { 602 pinctrl-names = "default"; 603 pinctrl-0 = <&pinctrl_qspi>; 604 status = "okay"; /* Conflict with i2s. */ 605 606 flash@0 { 607 #address-cells = <1>; 608 #size-cells = <1>; 609 compatible = "jedec,spi-nor"; 610 reg = <0>; 611 spi-max-frequency = <104000000>; 612 spi-cs-setup-ns = <7>; 613 spi-tx-bus-width = <4>; 614 spi-rx-bus-width = <4>; 615 m25p,fast-read; 616 617 at91bootstrap@0 { 618 label = "qspi: at91bootstrap"; 619 reg = <0x0 0x40000>; 620 }; 621 622 bootloader@40000 { 623 label = "qspi: bootloader"; 624 reg = <0x40000 0xc0000>; 625 }; 626 627 bootloaderenvred@100000 { 628 label = "qspi: bootloader env redundant"; 629 reg = <0x100000 0x40000>; 630 }; 631 632 bootloaderenv@140000 { 633 label = "qspi: bootloader env"; 634 reg = <0x140000 0x40000>; 635 }; 636 637 dtb@180000 { 638 label = "qspi: device tree"; 639 reg = <0x180000 0x80000>; 640 }; 641 642 kernel@200000 { 643 label = "qspi: kernel"; 644 reg = <0x200000 0x600000>; 645 }; 646 }; 647}; 648 649&rtt { 650 atmel,rtt-rtc-time-reg = <&gpbr 0x0>; 651 status = "okay"; 652}; 653 654&shutdown_controller { 655 debounce-delay-us = <976>; 656 status = "okay"; 657 658 input@0 { 659 reg = <0>; 660 }; 661}; 662 663&tcb0 { 664 timer0: timer@0 { 665 compatible = "atmel,tcb-timer"; 666 reg = <0>; 667 }; 668 669 timer1: timer@1 { 670 compatible = "atmel,tcb-timer"; 671 reg = <1>; 672 }; 673}; 674 675&usb0 { 676 atmel,vbus-gpio = <&pioB 16 GPIO_ACTIVE_HIGH>; 677 pinctrl-names = "default"; 678 pinctrl-0 = <&pinctrl_usba_vbus>; 679 status = "okay"; 680}; 681 682&usb1 { 683 num-ports = <3>; 684 atmel,vbus-gpio = <0 685 &pioD 15 GPIO_ACTIVE_HIGH 686 &pioD 16 GPIO_ACTIVE_HIGH>; 687 pinctrl-names = "default"; 688 pinctrl-0 = <&pinctrl_usb_default>; 689 status = "okay"; 690}; 691 692&usb2 { 693 status = "okay"; 694}; 695 696&watchdog { 697 status = "okay"; 698}; 699 700