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