0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /*
0003 * at91sam9260.dtsi - Device Tree Include file for AT91SAM9260 family SoC
0004 *
0005 * Copyright (C) 2011 Atmel,
0006 * 2011 Nicolas Ferre <nicolas.ferre@atmel.com>,
0007 * 2011 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
0008 */
0009
0010 #include <dt-bindings/pinctrl/at91.h>
0011 #include <dt-bindings/interrupt-controller/irq.h>
0012 #include <dt-bindings/gpio/gpio.h>
0013 #include <dt-bindings/clock/at91.h>
0014
0015 / {
0016 #address-cells = <1>;
0017 #size-cells = <1>;
0018 model = "Atmel AT91SAM9260 family SoC";
0019 compatible = "atmel,at91sam9260";
0020 interrupt-parent = <&aic>;
0021
0022 aliases {
0023 serial0 = &dbgu;
0024 serial1 = &usart0;
0025 serial2 = &usart1;
0026 serial3 = &usart2;
0027 serial4 = &usart3;
0028 serial5 = &uart0;
0029 serial6 = &uart1;
0030 gpio0 = &pioA;
0031 gpio1 = &pioB;
0032 gpio2 = &pioC;
0033 tcb0 = &tcb0;
0034 tcb1 = &tcb1;
0035 i2c0 = &i2c0;
0036 ssc0 = &ssc0;
0037 };
0038 cpus {
0039 #address-cells = <1>;
0040 #size-cells = <0>;
0041
0042 cpu@0 {
0043 compatible = "arm,arm926ej-s";
0044 device_type = "cpu";
0045 reg = <0>;
0046 };
0047 };
0048
0049 memory@20000000 {
0050 device_type = "memory";
0051 reg = <0x20000000 0x04000000>;
0052 };
0053
0054 clocks {
0055 slow_xtal: slow_xtal {
0056 compatible = "fixed-clock";
0057 #clock-cells = <0>;
0058 clock-frequency = <0>;
0059 };
0060
0061 main_xtal: main_xtal {
0062 compatible = "fixed-clock";
0063 #clock-cells = <0>;
0064 clock-frequency = <0>;
0065 };
0066
0067 adc_op_clk: adc_op_clk{
0068 compatible = "fixed-clock";
0069 #clock-cells = <0>;
0070 clock-frequency = <5000000>;
0071 };
0072 };
0073
0074 sram0: sram@2ff000 {
0075 compatible = "mmio-sram";
0076 reg = <0x002ff000 0x2000>;
0077 #address-cells = <1>;
0078 #size-cells = <1>;
0079 ranges = <0 0x002ff000 0x2000>;
0080 };
0081
0082 ahb {
0083 compatible = "simple-bus";
0084 #address-cells = <1>;
0085 #size-cells = <1>;
0086 ranges;
0087
0088 apb {
0089 compatible = "simple-bus";
0090 #address-cells = <1>;
0091 #size-cells = <1>;
0092 ranges;
0093
0094 aic: interrupt-controller@fffff000 {
0095 #interrupt-cells = <3>;
0096 compatible = "atmel,at91rm9200-aic";
0097 interrupt-controller;
0098 reg = <0xfffff000 0x200>;
0099 atmel,external-irqs = <29 30 31>;
0100 };
0101
0102 ramc0: ramc@ffffea00 {
0103 compatible = "atmel,at91sam9260-sdramc";
0104 reg = <0xffffea00 0x200>;
0105 };
0106
0107 smc: smc@ffffec00 {
0108 compatible = "atmel,at91sam9260-smc", "syscon";
0109 reg = <0xffffec00 0x200>;
0110 };
0111
0112 matrix: matrix@ffffee00 {
0113 compatible = "atmel,at91sam9260-matrix", "syscon";
0114 reg = <0xffffee00 0x200>;
0115 };
0116
0117 pmc: pmc@fffffc00 {
0118 compatible = "atmel,at91sam9260-pmc", "syscon";
0119 reg = <0xfffffc00 0x100>;
0120 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0121 #clock-cells = <2>;
0122 clocks = <&slow_xtal>, <&main_xtal>;
0123 clock-names = "slow_xtal", "main_xtal";
0124 };
0125
0126 reset-controller@fffffd00 {
0127 compatible = "atmel,at91sam9260-rstc";
0128 reg = <0xfffffd00 0x10>;
0129 clocks = <&pmc PMC_TYPE_CORE PMC_SLOW>;
0130 };
0131
0132 shdwc@fffffd10 {
0133 compatible = "atmel,at91sam9260-shdwc";
0134 reg = <0xfffffd10 0x10>;
0135 clocks = <&pmc PMC_TYPE_CORE PMC_SLOW>;
0136 };
0137
0138 pit: timer@fffffd30 {
0139 compatible = "atmel,at91sam9260-pit";
0140 reg = <0xfffffd30 0xf>;
0141 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0142 clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
0143 };
0144
0145 tcb0: timer@fffa0000 {
0146 compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
0147 #address-cells = <1>;
0148 #size-cells = <0>;
0149 reg = <0xfffa0000 0x100>;
0150 interrupts = <17 IRQ_TYPE_LEVEL_HIGH 0
0151 18 IRQ_TYPE_LEVEL_HIGH 0
0152 19 IRQ_TYPE_LEVEL_HIGH 0>;
0153 clocks = <&pmc PMC_TYPE_PERIPHERAL 17>, <&pmc PMC_TYPE_PERIPHERAL 18>, <&pmc PMC_TYPE_PERIPHERAL 19>, <&pmc PMC_TYPE_CORE PMC_SLOW>;
0154 clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk";
0155 };
0156
0157 tcb1: timer@fffdc000 {
0158 compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
0159 #address-cells = <1>;
0160 #size-cells = <0>;
0161 reg = <0xfffdc000 0x100>;
0162 interrupts = <26 IRQ_TYPE_LEVEL_HIGH 0
0163 27 IRQ_TYPE_LEVEL_HIGH 0
0164 28 IRQ_TYPE_LEVEL_HIGH 0>;
0165 clocks = <&pmc PMC_TYPE_PERIPHERAL 26>, <&pmc PMC_TYPE_PERIPHERAL 27>, <&pmc PMC_TYPE_PERIPHERAL 28>, <&pmc PMC_TYPE_CORE PMC_SLOW>;
0166 clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk";
0167 };
0168
0169 pinctrl: pinctrl@fffff400 {
0170 #address-cells = <1>;
0171 #size-cells = <1>;
0172 compatible = "atmel,at91rm9200-pinctrl", "simple-bus";
0173 ranges = <0xfffff400 0xfffff400 0x600>;
0174
0175 atmel,mux-mask = <
0176 /* A B */
0177 0xffffffff 0xffc00c3b /* pioA */
0178 0xffffffff 0x7fff3ccf /* pioB */
0179 0xffffffff 0x007fffff /* pioC */
0180 >;
0181
0182 /* shared pinctrl settings */
0183 dbgu {
0184 pinctrl_dbgu: dbgu-0 {
0185 atmel,pins =
0186 <AT91_PIOB 14 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
0187 AT91_PIOB 15 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0188 };
0189 };
0190
0191 usart0 {
0192 pinctrl_usart0: usart0-0 {
0193 atmel,pins =
0194 <AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
0195 AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0196 };
0197
0198 pinctrl_usart0_rts: usart0_rts-0 {
0199 atmel,pins =
0200 <AT91_PIOB 26 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB26 periph A */
0201 };
0202
0203 pinctrl_usart0_cts: usart0_cts-0 {
0204 atmel,pins =
0205 <AT91_PIOB 27 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB27 periph A */
0206 };
0207
0208 pinctrl_usart0_dtr_dsr: usart0_dtr_dsr-0 {
0209 atmel,pins =
0210 <AT91_PIOB 24 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB24 periph A */
0211 AT91_PIOB 22 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB22 periph A */
0212 };
0213
0214 pinctrl_usart0_dcd: usart0_dcd-0 {
0215 atmel,pins =
0216 <AT91_PIOB 23 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB23 periph A */
0217 };
0218
0219 pinctrl_usart0_ri: usart0_ri-0 {
0220 atmel,pins =
0221 <AT91_PIOB 25 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB25 periph A */
0222 };
0223 };
0224
0225 usart1 {
0226 pinctrl_usart1: usart1-0 {
0227 atmel,pins =
0228 <AT91_PIOB 6 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
0229 AT91_PIOB 7 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0230 };
0231
0232 pinctrl_usart1_rts: usart1_rts-0 {
0233 atmel,pins =
0234 <AT91_PIOB 28 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB28 periph A */
0235 };
0236
0237 pinctrl_usart1_cts: usart1_cts-0 {
0238 atmel,pins =
0239 <AT91_PIOB 29 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB29 periph A */
0240 };
0241 };
0242
0243 usart2 {
0244 pinctrl_usart2: usart2-0 {
0245 atmel,pins =
0246 <AT91_PIOB 8 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
0247 AT91_PIOB 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0248 };
0249
0250 pinctrl_usart2_rts: usart2_rts-0 {
0251 atmel,pins =
0252 <AT91_PIOA 4 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA4 periph A */
0253 };
0254
0255 pinctrl_usart2_cts: usart2_cts-0 {
0256 atmel,pins =
0257 <AT91_PIOA 5 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA5 periph A */
0258 };
0259 };
0260
0261 usart3 {
0262 pinctrl_usart3: usart3-0 {
0263 atmel,pins =
0264 <AT91_PIOB 10 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
0265 AT91_PIOB 11 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0266 };
0267
0268 pinctrl_usart3_rts: usart3_rts-0 {
0269 atmel,pins =
0270 <AT91_PIOC 8 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0271 };
0272
0273 pinctrl_usart3_cts: usart3_cts-0 {
0274 atmel,pins =
0275 <AT91_PIOC 10 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0276 };
0277 };
0278
0279 uart0 {
0280 pinctrl_uart0: uart0-0 {
0281 atmel,pins =
0282 <AT91_PIOA 31 AT91_PERIPH_B AT91_PINCTRL_PULL_UP
0283 AT91_PIOA 30 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>;
0284 };
0285 };
0286
0287 uart1 {
0288 pinctrl_uart1: uart1-0 {
0289 atmel,pins =
0290 <AT91_PIOB 12 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
0291 AT91_PIOB 13 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0292 };
0293 };
0294
0295 nand {
0296 pinctrl_nand_rb: nand-rb-0 {
0297 atmel,pins =
0298 <AT91_PIOC 13 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
0299 };
0300
0301 pinctrl_nand_cs: nand-cs-0 {
0302 atmel,pins =
0303 <AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
0304 };
0305 };
0306
0307 macb {
0308 pinctrl_macb_rmii: macb_rmii-0 {
0309 atmel,pins =
0310 <AT91_PIOA 12 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA12 periph A */
0311 AT91_PIOA 13 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA13 periph A */
0312 AT91_PIOA 14 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA14 periph A */
0313 AT91_PIOA 15 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA15 periph A */
0314 AT91_PIOA 16 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA16 periph A */
0315 AT91_PIOA 17 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA17 periph A */
0316 AT91_PIOA 18 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA18 periph A */
0317 AT91_PIOA 19 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA19 periph A */
0318 AT91_PIOA 20 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA20 periph A */
0319 AT91_PIOA 21 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA21 periph A */
0320 };
0321
0322 pinctrl_macb_rmii_mii: macb_rmii_mii-0 {
0323 atmel,pins =
0324 <AT91_PIOA 22 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA22 periph B */
0325 AT91_PIOA 23 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA23 periph B */
0326 AT91_PIOA 24 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA24 periph B */
0327 AT91_PIOA 25 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA25 periph B */
0328 AT91_PIOA 26 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA26 periph B */
0329 AT91_PIOA 27 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA27 periph B */
0330 AT91_PIOA 28 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA28 periph B */
0331 AT91_PIOA 29 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PA29 periph B */
0332 };
0333
0334 pinctrl_macb_rmii_mii_alt: macb_rmii_mii-1 {
0335 atmel,pins =
0336 <AT91_PIOA 10 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA10 periph B */
0337 AT91_PIOA 11 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA11 periph B */
0338 AT91_PIOA 22 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA22 periph B */
0339 AT91_PIOA 25 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA25 periph B */
0340 AT91_PIOA 26 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA26 periph B */
0341 AT91_PIOA 27 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA27 periph B */
0342 AT91_PIOA 28 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA28 periph B */
0343 AT91_PIOA 29 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PA29 periph B */
0344 };
0345 };
0346
0347 mmc0 {
0348 pinctrl_mmc0_clk: mmc0_clk-0 {
0349 atmel,pins =
0350 <AT91_PIOA 8 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA8 periph A */
0351 };
0352
0353 pinctrl_mmc0_slot0_cmd_dat0: mmc0_slot0_cmd_dat0-0 {
0354 atmel,pins =
0355 <AT91_PIOA 7 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA7 periph A with pullup */
0356 AT91_PIOA 6 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA6 periph A with pullup */
0357 };
0358
0359 pinctrl_mmc0_slot0_dat1_3: mmc0_slot0_dat1_3-0 {
0360 atmel,pins =
0361 <AT91_PIOA 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA9 periph A with pullup */
0362 AT91_PIOA 10 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA10 periph A with pullup */
0363 AT91_PIOA 11 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA11 periph A with pullup */
0364 };
0365
0366 pinctrl_mmc0_slot1_cmd_dat0: mmc0_slot1_cmd_dat0-0 {
0367 atmel,pins =
0368 <AT91_PIOA 1 AT91_PERIPH_B AT91_PINCTRL_PULL_UP /* PA1 periph B with pullup */
0369 AT91_PIOA 0 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>; /* PA0 periph B with pullup */
0370 };
0371
0372 pinctrl_mmc0_slot1_dat1_3: mmc0_slot1_dat1_3-0 {
0373 atmel,pins =
0374 <AT91_PIOA 5 AT91_PERIPH_B AT91_PINCTRL_PULL_UP /* PA5 periph B with pullup */
0375 AT91_PIOA 4 AT91_PERIPH_B AT91_PINCTRL_PULL_UP /* PA4 periph B with pullup */
0376 AT91_PIOA 3 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>; /* PA3 periph B with pullup */
0377 };
0378 };
0379
0380 ssc0 {
0381 pinctrl_ssc0_tx: ssc0_tx-0 {
0382 atmel,pins =
0383 <AT91_PIOB 16 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB16 periph A */
0384 AT91_PIOB 17 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB17 periph A */
0385 AT91_PIOB 18 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB18 periph A */
0386 };
0387
0388 pinctrl_ssc0_rx: ssc0_rx-0 {
0389 atmel,pins =
0390 <AT91_PIOB 19 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB19 periph A */
0391 AT91_PIOB 20 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB20 periph A */
0392 AT91_PIOB 21 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB21 periph A */
0393 };
0394 };
0395
0396 spi0 {
0397 pinctrl_spi0: spi0-0 {
0398 atmel,pins =
0399 <AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA0 periph A SPI0_MISO pin */
0400 AT91_PIOA 1 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA1 periph A SPI0_MOSI pin */
0401 AT91_PIOA 2 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA2 periph A SPI0_SPCK pin */
0402 };
0403 };
0404
0405 spi1 {
0406 pinctrl_spi1: spi1-0 {
0407 atmel,pins =
0408 <AT91_PIOB 0 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB0 periph A SPI1_MISO pin */
0409 AT91_PIOB 1 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB1 periph A SPI1_MOSI pin */
0410 AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB2 periph A SPI1_SPCK pin */
0411 };
0412 };
0413
0414 i2c_gpio0 {
0415 pinctrl_i2c_gpio0: i2c_gpio0-0 {
0416 atmel,pins =
0417 <AT91_PIOA 23 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE
0418 AT91_PIOA 24 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE>;
0419 };
0420 };
0421
0422 tcb0 {
0423 pinctrl_tcb0_tclk0: tcb0_tclk0-0 {
0424 atmel,pins = <AT91_PIOA 25 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0425 };
0426
0427 pinctrl_tcb0_tclk1: tcb0_tclk1-0 {
0428 atmel,pins = <AT91_PIOB 6 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0429 };
0430
0431 pinctrl_tcb0_tclk2: tcb0_tclk2-0 {
0432 atmel,pins = <AT91_PIOB 7 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0433 };
0434
0435 pinctrl_tcb0_tioa0: tcb0_tioa0-0 {
0436 atmel,pins = <AT91_PIOA 26 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0437 };
0438
0439 pinctrl_tcb0_tioa1: tcb0_tioa1-0 {
0440 atmel,pins = <AT91_PIOA 27 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0441 };
0442
0443 pinctrl_tcb0_tioa2: tcb0_tioa2-0 {
0444 atmel,pins = <AT91_PIOA 28 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0445 };
0446
0447 pinctrl_tcb0_tiob0: tcb0_tiob0-0 {
0448 atmel,pins = <AT91_PIOC 9 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0449 };
0450
0451 pinctrl_tcb0_tiob1: tcb0_tiob1-0 {
0452 atmel,pins = <AT91_PIOC 7 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0453 };
0454
0455 pinctrl_tcb0_tiob2: tcb0_tiob2-0 {
0456 atmel,pins = <AT91_PIOC 6 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0457 };
0458 };
0459
0460 tcb1 {
0461 pinctrl_tcb1_tclk0: tcb1_tclk0-0 {
0462 atmel,pins = <AT91_PIOB 16 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0463 };
0464
0465 pinctrl_tcb1_tclk1: tcb1_tclk1-0 {
0466 atmel,pins = <AT91_PIOB 17 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0467 };
0468
0469 pinctrl_tcb1_tclk2: tcb1_tclk2-0 {
0470 atmel,pins = <AT91_PIOC 22 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0471 };
0472
0473 pinctrl_tcb1_tioa0: tcb1_tioa0-0 {
0474 atmel,pins = <AT91_PIOB 0 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0475 };
0476
0477 pinctrl_tcb1_tioa1: tcb1_tioa1-0 {
0478 atmel,pins = <AT91_PIOB 2 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0479 };
0480
0481 pinctrl_tcb1_tioa2: tcb1_tioa2-0 {
0482 atmel,pins = <AT91_PIOB 3 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0483 };
0484
0485 pinctrl_tcb1_tiob0: tcb1_tiob0-0 {
0486 atmel,pins = <AT91_PIOB 1 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0487 };
0488
0489 pinctrl_tcb1_tiob1: tcb1_tiob1-0 {
0490 atmel,pins = <AT91_PIOB 18 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0491 };
0492
0493 pinctrl_tcb1_tiob2: tcb1_tiob2-0 {
0494 atmel,pins = <AT91_PIOB 19 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0495 };
0496 };
0497
0498 pioA: gpio@fffff400 {
0499 compatible = "atmel,at91rm9200-gpio";
0500 reg = <0xfffff400 0x200>;
0501 interrupts = <2 IRQ_TYPE_LEVEL_HIGH 1>;
0502 #gpio-cells = <2>;
0503 gpio-controller;
0504 interrupt-controller;
0505 #interrupt-cells = <2>;
0506 clocks = <&pmc PMC_TYPE_PERIPHERAL 2>;
0507 };
0508
0509 pioB: gpio@fffff600 {
0510 compatible = "atmel,at91rm9200-gpio";
0511 reg = <0xfffff600 0x200>;
0512 interrupts = <3 IRQ_TYPE_LEVEL_HIGH 1>;
0513 #gpio-cells = <2>;
0514 gpio-controller;
0515 interrupt-controller;
0516 #interrupt-cells = <2>;
0517 clocks = <&pmc PMC_TYPE_PERIPHERAL 3>;
0518 };
0519
0520 pioC: gpio@fffff800 {
0521 compatible = "atmel,at91rm9200-gpio";
0522 reg = <0xfffff800 0x200>;
0523 interrupts = <4 IRQ_TYPE_LEVEL_HIGH 1>;
0524 #gpio-cells = <2>;
0525 gpio-controller;
0526 interrupt-controller;
0527 #interrupt-cells = <2>;
0528 clocks = <&pmc PMC_TYPE_PERIPHERAL 4>;
0529 };
0530 };
0531
0532 dbgu: serial@fffff200 {
0533 compatible = "atmel,at91sam9260-dbgu", "atmel,at91sam9260-usart";
0534 reg = <0xfffff200 0x200>;
0535 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0536 pinctrl-names = "default";
0537 pinctrl-0 = <&pinctrl_dbgu>;
0538 clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
0539 clock-names = "usart";
0540 status = "disabled";
0541 };
0542
0543 usart0: serial@fffb0000 {
0544 compatible = "atmel,at91sam9260-usart";
0545 reg = <0xfffb0000 0x200>;
0546 interrupts = <6 IRQ_TYPE_LEVEL_HIGH 5>;
0547 atmel,use-dma-rx;
0548 atmel,use-dma-tx;
0549 pinctrl-names = "default";
0550 pinctrl-0 = <&pinctrl_usart0>;
0551 clocks = <&pmc PMC_TYPE_PERIPHERAL 6>;
0552 clock-names = "usart";
0553 status = "disabled";
0554 };
0555
0556 usart1: serial@fffb4000 {
0557 compatible = "atmel,at91sam9260-usart";
0558 reg = <0xfffb4000 0x200>;
0559 interrupts = <7 IRQ_TYPE_LEVEL_HIGH 5>;
0560 atmel,use-dma-rx;
0561 atmel,use-dma-tx;
0562 pinctrl-names = "default";
0563 pinctrl-0 = <&pinctrl_usart1>;
0564 clocks = <&pmc PMC_TYPE_PERIPHERAL 7>;
0565 clock-names = "usart";
0566 status = "disabled";
0567 };
0568
0569 usart2: serial@fffb8000 {
0570 compatible = "atmel,at91sam9260-usart";
0571 reg = <0xfffb8000 0x200>;
0572 interrupts = <8 IRQ_TYPE_LEVEL_HIGH 5>;
0573 atmel,use-dma-rx;
0574 atmel,use-dma-tx;
0575 pinctrl-names = "default";
0576 pinctrl-0 = <&pinctrl_usart2>;
0577 clocks = <&pmc PMC_TYPE_PERIPHERAL 8>;
0578 clock-names = "usart";
0579 status = "disabled";
0580 };
0581
0582 usart3: serial@fffd0000 {
0583 compatible = "atmel,at91sam9260-usart";
0584 reg = <0xfffd0000 0x200>;
0585 interrupts = <23 IRQ_TYPE_LEVEL_HIGH 5>;
0586 atmel,use-dma-rx;
0587 atmel,use-dma-tx;
0588 pinctrl-names = "default";
0589 pinctrl-0 = <&pinctrl_usart3>;
0590 clocks = <&pmc PMC_TYPE_PERIPHERAL 23>;
0591 clock-names = "usart";
0592 status = "disabled";
0593 };
0594
0595 uart0: serial@fffd4000 {
0596 compatible = "atmel,at91sam9260-usart";
0597 reg = <0xfffd4000 0x200>;
0598 interrupts = <24 IRQ_TYPE_LEVEL_HIGH 5>;
0599 atmel,use-dma-rx;
0600 atmel,use-dma-tx;
0601 pinctrl-names = "default";
0602 pinctrl-0 = <&pinctrl_uart0>;
0603 clocks = <&pmc PMC_TYPE_PERIPHERAL 24>;
0604 clock-names = "usart";
0605 status = "disabled";
0606 };
0607
0608 uart1: serial@fffd8000 {
0609 compatible = "atmel,at91sam9260-usart";
0610 reg = <0xfffd8000 0x200>;
0611 interrupts = <25 IRQ_TYPE_LEVEL_HIGH 5>;
0612 atmel,use-dma-rx;
0613 atmel,use-dma-tx;
0614 pinctrl-names = "default";
0615 pinctrl-0 = <&pinctrl_uart1>;
0616 clocks = <&pmc PMC_TYPE_PERIPHERAL 25>;
0617 clock-names = "usart";
0618 status = "disabled";
0619 };
0620
0621 macb0: ethernet@fffc4000 {
0622 compatible = "cdns,at91sam9260-macb", "cdns,macb";
0623 reg = <0xfffc4000 0x100>;
0624 interrupts = <21 IRQ_TYPE_LEVEL_HIGH 3>;
0625 pinctrl-names = "default";
0626 pinctrl-0 = <&pinctrl_macb_rmii>;
0627 clocks = <&pmc PMC_TYPE_PERIPHERAL 21>, <&pmc PMC_TYPE_PERIPHERAL 21>;
0628 clock-names = "hclk", "pclk";
0629 status = "disabled";
0630 };
0631
0632 usb1: gadget@fffa4000 {
0633 compatible = "atmel,at91sam9260-udc";
0634 reg = <0xfffa4000 0x4000>;
0635 interrupts = <10 IRQ_TYPE_LEVEL_HIGH 2>;
0636 clocks = <&pmc PMC_TYPE_PERIPHERAL 10>, <&pmc PMC_TYPE_SYSTEM 7>;
0637 clock-names = "pclk", "hclk";
0638 status = "disabled";
0639 };
0640
0641 i2c0: i2c@fffac000 {
0642 compatible = "atmel,at91sam9260-i2c";
0643 reg = <0xfffac000 0x100>;
0644 interrupts = <11 IRQ_TYPE_LEVEL_HIGH 6>;
0645 #address-cells = <1>;
0646 #size-cells = <0>;
0647 clocks = <&pmc PMC_TYPE_PERIPHERAL 11>;
0648 status = "disabled";
0649 };
0650
0651 mmc0: mmc@fffa8000 {
0652 compatible = "atmel,hsmci";
0653 reg = <0xfffa8000 0x600>;
0654 interrupts = <9 IRQ_TYPE_LEVEL_HIGH 0>;
0655 #address-cells = <1>;
0656 #size-cells = <0>;
0657 clocks = <&pmc PMC_TYPE_PERIPHERAL 9>;
0658 clock-names = "mci_clk";
0659 status = "disabled";
0660 };
0661
0662 ssc0: ssc@fffbc000 {
0663 compatible = "atmel,at91rm9200-ssc";
0664 reg = <0xfffbc000 0x4000>;
0665 interrupts = <14 IRQ_TYPE_LEVEL_HIGH 5>;
0666 pinctrl-names = "default";
0667 pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>;
0668 clocks = <&pmc PMC_TYPE_PERIPHERAL 14>;
0669 clock-names = "pclk";
0670 status = "disabled";
0671 };
0672
0673 spi0: spi@fffc8000 {
0674 #address-cells = <1>;
0675 #size-cells = <0>;
0676 compatible = "atmel,at91rm9200-spi";
0677 reg = <0xfffc8000 0x200>;
0678 interrupts = <12 IRQ_TYPE_LEVEL_HIGH 3>;
0679 pinctrl-names = "default";
0680 pinctrl-0 = <&pinctrl_spi0>;
0681 clocks = <&pmc PMC_TYPE_PERIPHERAL 12>;
0682 clock-names = "spi_clk";
0683 status = "disabled";
0684 };
0685
0686 spi1: spi@fffcc000 {
0687 #address-cells = <1>;
0688 #size-cells = <0>;
0689 compatible = "atmel,at91rm9200-spi";
0690 reg = <0xfffcc000 0x200>;
0691 interrupts = <13 IRQ_TYPE_LEVEL_HIGH 3>;
0692 pinctrl-names = "default";
0693 pinctrl-0 = <&pinctrl_spi1>;
0694 clocks = <&pmc PMC_TYPE_PERIPHERAL 13>;
0695 clock-names = "spi_clk";
0696 status = "disabled";
0697 };
0698
0699 adc0: adc@fffe0000 {
0700 compatible = "atmel,at91sam9260-adc";
0701 reg = <0xfffe0000 0x100>;
0702 interrupts = <5 IRQ_TYPE_LEVEL_HIGH 0>;
0703 clocks = <&pmc PMC_TYPE_PERIPHERAL 5>, <&adc_op_clk>;
0704 clock-names = "adc_clk", "adc_op_clk";
0705 atmel,adc-use-external-triggers;
0706 atmel,adc-channels-used = <0xf>;
0707 atmel,adc-vref = <3300>;
0708 atmel,adc-startup-time = <15>;
0709 };
0710
0711 rtc@fffffd20 {
0712 compatible = "atmel,at91sam9260-rtt";
0713 reg = <0xfffffd20 0x10>;
0714 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0715 clocks = <&pmc PMC_TYPE_CORE PMC_SLOW>;
0716 status = "disabled";
0717 };
0718
0719 watchdog: watchdog@fffffd40 {
0720 compatible = "atmel,at91sam9260-wdt";
0721 reg = <0xfffffd40 0x10>;
0722 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0723 clocks = <&pmc PMC_TYPE_CORE PMC_SLOW>;
0724 atmel,watchdog-type = "hardware";
0725 atmel,reset-type = "all";
0726 atmel,dbg-halt;
0727 status = "disabled";
0728 };
0729
0730 gpbr: syscon@fffffd50 {
0731 compatible = "atmel,at91sam9260-gpbr", "syscon";
0732 reg = <0xfffffd50 0x10>;
0733 status = "disabled";
0734 };
0735 };
0736
0737 usb0: ohci@500000 {
0738 compatible = "atmel,at91rm9200-ohci", "usb-ohci";
0739 reg = <0x00500000 0x100000>;
0740 interrupts = <20 IRQ_TYPE_LEVEL_HIGH 2>;
0741 clocks = <&pmc PMC_TYPE_PERIPHERAL 20>, <&pmc PMC_TYPE_PERIPHERAL 20>, <&pmc PMC_TYPE_SYSTEM 6>;
0742 clock-names = "ohci_clk", "hclk", "uhpck";
0743 status = "disabled";
0744 };
0745
0746 ebi: ebi@10000000 {
0747 compatible = "atmel,at91sam9260-ebi";
0748 #address-cells = <2>;
0749 #size-cells = <1>;
0750 atmel,smc = <&smc>;
0751 atmel,matrix = <&matrix>;
0752 reg = <0x10000000 0x80000000>;
0753 ranges = <0x0 0x0 0x10000000 0x10000000
0754 0x1 0x0 0x20000000 0x10000000
0755 0x2 0x0 0x30000000 0x10000000
0756 0x3 0x0 0x40000000 0x10000000
0757 0x4 0x0 0x50000000 0x10000000
0758 0x5 0x0 0x60000000 0x10000000
0759 0x6 0x0 0x70000000 0x10000000
0760 0x7 0x0 0x80000000 0x10000000>;
0761 clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
0762 status = "disabled";
0763
0764 nand_controller: nand-controller {
0765 compatible = "atmel,at91sam9260-nand-controller";
0766 #address-cells = <2>;
0767 #size-cells = <1>;
0768 ranges;
0769 status = "disabled";
0770 };
0771 };
0772 };
0773
0774 i2c_gpio0: i2c-gpio-0 {
0775 compatible = "i2c-gpio";
0776 gpios = <&pioA 23 GPIO_ACTIVE_HIGH /* sda */
0777 &pioA 24 GPIO_ACTIVE_HIGH /* scl */
0778 >;
0779 i2c-gpio,sda-open-drain;
0780 i2c-gpio,scl-open-drain;
0781 i2c-gpio,delay-us = <2>; /* ~100 kHz */
0782 #address-cells = <1>;
0783 #size-cells = <0>;
0784 pinctrl-names = "default";
0785 pinctrl-0 = <&pinctrl_i2c_gpio0>;
0786 status = "disabled";
0787 };
0788 };