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