0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /*
0003 * at91sam9rl.dtsi - Device Tree Include file for AT91SAM9RL family SoC
0004 *
0005 * Copyright (C) 2014 Microchip
0006 * Alexandre Belloni <alexandre.belloni@free-electrons.com>
0007 */
0008
0009 #include <dt-bindings/pinctrl/at91.h>
0010 #include <dt-bindings/clock/at91.h>
0011 #include <dt-bindings/interrupt-controller/irq.h>
0012 #include <dt-bindings/gpio/gpio.h>
0013 #include <dt-bindings/pwm/pwm.h>
0014
0015 / {
0016 #address-cells = <1>;
0017 #size-cells = <1>;
0018 model = "Atmel AT91SAM9RL family SoC";
0019 compatible = "atmel,at91sam9rl", "atmel,at91sam9";
0020 interrupt-parent = <&aic>;
0021
0022 aliases {
0023 serial0 = &dbgu;
0024 serial1 = &usart0;
0025 serial2 = &usart1;
0026 serial3 = &usart2;
0027 serial4 = &usart3;
0028 gpio0 = &pioA;
0029 gpio1 = &pioB;
0030 gpio2 = &pioC;
0031 gpio3 = &pioD;
0032 tcb0 = &tcb0;
0033 i2c0 = &i2c0;
0034 i2c1 = &i2c1;
0035 ssc0 = &ssc0;
0036 ssc1 = &ssc1;
0037 pwm0 = &pwm0;
0038 };
0039
0040 cpus {
0041 #address-cells = <1>;
0042 #size-cells = <0>;
0043
0044 cpu@0 {
0045 compatible = "arm,arm926ej-s";
0046 device_type = "cpu";
0047 reg = <0>;
0048 };
0049 };
0050
0051 memory@20000000 {
0052 device_type = "memory";
0053 reg = <0x20000000 0x04000000>;
0054 };
0055
0056 clocks {
0057 slow_xtal: slow_xtal {
0058 compatible = "fixed-clock";
0059 #clock-cells = <0>;
0060 clock-frequency = <0>;
0061 };
0062
0063 main_xtal: main_xtal {
0064 compatible = "fixed-clock";
0065 #clock-cells = <0>;
0066 clock-frequency = <0>;
0067 };
0068
0069 adc_op_clk: adc_op_clk{
0070 compatible = "fixed-clock";
0071 #clock-cells = <0>;
0072 clock-frequency = <1000000>;
0073 };
0074 };
0075
0076 sram: sram@300000 {
0077 compatible = "mmio-sram";
0078 reg = <0x00300000 0x10000>;
0079 #address-cells = <1>;
0080 #size-cells = <1>;
0081 ranges = <0 0x00300000 0x10000>;
0082 };
0083
0084 ahb {
0085 compatible = "simple-bus";
0086 #address-cells = <1>;
0087 #size-cells = <1>;
0088 ranges;
0089
0090 fb0: fb@500000 {
0091 compatible = "atmel,at91sam9rl-lcdc";
0092 reg = <0x00500000 0x1000>;
0093 interrupts = <23 IRQ_TYPE_LEVEL_HIGH 3>;
0094 pinctrl-names = "default";
0095 pinctrl-0 = <&pinctrl_fb>;
0096 clocks = <&pmc PMC_TYPE_PERIPHERAL 23>, <&pmc PMC_TYPE_PERIPHERAL 23>;
0097 clock-names = "hclk", "lcdc_clk";
0098 status = "disabled";
0099 };
0100
0101 ebi: ebi@10000000 {
0102 compatible = "atmel,at91sam9rl-ebi";
0103 #address-cells = <2>;
0104 #size-cells = <1>;
0105 atmel,smc = <&smc>;
0106 atmel,matrix = <&matrix>;
0107 reg = <0x10000000 0x80000000>;
0108 ranges = <0x0 0x0 0x10000000 0x10000000
0109 0x1 0x0 0x20000000 0x10000000
0110 0x2 0x0 0x30000000 0x10000000
0111 0x3 0x0 0x40000000 0x10000000
0112 0x4 0x0 0x50000000 0x10000000
0113 0x5 0x0 0x60000000 0x10000000>;
0114 clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
0115 status = "disabled";
0116
0117 nand_controller: nand-controller {
0118 compatible = "atmel,at91sam9g45-nand-controller";
0119 #address-cells = <2>;
0120 #size-cells = <1>;
0121 ranges;
0122 status = "disabled";
0123 };
0124 };
0125
0126 apb {
0127 compatible = "simple-bus";
0128 #address-cells = <1>;
0129 #size-cells = <1>;
0130 ranges;
0131
0132 tcb0: timer@fffa0000 {
0133 compatible = "atmel,at91rm9200-tcb", "simple-mfd", "syscon";
0134 #address-cells = <1>;
0135 #size-cells = <0>;
0136 reg = <0xfffa0000 0x100>;
0137 interrupts = <16 IRQ_TYPE_LEVEL_HIGH 0>,
0138 <17 IRQ_TYPE_LEVEL_HIGH 0>,
0139 <18 IRQ_TYPE_LEVEL_HIGH 0>;
0140 clocks = <&pmc PMC_TYPE_PERIPHERAL 16>, <&pmc PMC_TYPE_PERIPHERAL 17>, <&pmc PMC_TYPE_PERIPHERAL 18>, <&clk32k>;
0141 clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk";
0142 };
0143
0144 mmc0: mmc@fffa4000 {
0145 compatible = "atmel,hsmci";
0146 reg = <0xfffa4000 0x600>;
0147 interrupts = <10 IRQ_TYPE_LEVEL_HIGH 0>;
0148 #address-cells = <1>;
0149 #size-cells = <0>;
0150 pinctrl-names = "default";
0151 clocks = <&pmc PMC_TYPE_PERIPHERAL 10>;
0152 clock-names = "mci_clk";
0153 status = "disabled";
0154 };
0155
0156 i2c0: i2c@fffa8000 {
0157 compatible = "atmel,at91sam9260-i2c";
0158 reg = <0xfffa8000 0x100>;
0159 interrupts = <11 IRQ_TYPE_LEVEL_HIGH 6>;
0160 #address-cells = <1>;
0161 #size-cells = <0>;
0162 clocks = <&pmc PMC_TYPE_PERIPHERAL 11>;
0163 status = "disabled";
0164 };
0165
0166 i2c1: i2c@fffac000 {
0167 compatible = "atmel,at91sam9260-i2c";
0168 reg = <0xfffac000 0x100>;
0169 interrupts = <12 IRQ_TYPE_LEVEL_HIGH 6>;
0170 #address-cells = <1>;
0171 #size-cells = <0>;
0172 status = "disabled";
0173 };
0174
0175 usart0: serial@fffb0000 {
0176 compatible = "atmel,at91sam9260-usart";
0177 reg = <0xfffb0000 0x200>;
0178 interrupts = <6 IRQ_TYPE_LEVEL_HIGH 5>;
0179 atmel,use-dma-rx;
0180 atmel,use-dma-tx;
0181 pinctrl-names = "default";
0182 pinctrl-0 = <&pinctrl_usart0>;
0183 clocks = <&pmc PMC_TYPE_PERIPHERAL 6>;
0184 clock-names = "usart";
0185 status = "disabled";
0186 };
0187
0188 usart1: serial@fffb4000 {
0189 compatible = "atmel,at91sam9260-usart";
0190 reg = <0xfffb4000 0x200>;
0191 interrupts = <7 IRQ_TYPE_LEVEL_HIGH 5>;
0192 atmel,use-dma-rx;
0193 atmel,use-dma-tx;
0194 pinctrl-names = "default";
0195 pinctrl-0 = <&pinctrl_usart1>;
0196 clocks = <&pmc PMC_TYPE_PERIPHERAL 7>;
0197 clock-names = "usart";
0198 status = "disabled";
0199 };
0200
0201 usart2: serial@fffb8000 {
0202 compatible = "atmel,at91sam9260-usart";
0203 reg = <0xfffb8000 0x200>;
0204 interrupts = <8 IRQ_TYPE_LEVEL_HIGH 5>;
0205 atmel,use-dma-rx;
0206 atmel,use-dma-tx;
0207 pinctrl-names = "default";
0208 pinctrl-0 = <&pinctrl_usart2>;
0209 clocks = <&pmc PMC_TYPE_PERIPHERAL 8>;
0210 clock-names = "usart";
0211 status = "disabled";
0212 };
0213
0214 usart3: serial@fffbc000 {
0215 compatible = "atmel,at91sam9260-usart";
0216 reg = <0xfffbc000 0x200>;
0217 interrupts = <9 IRQ_TYPE_LEVEL_HIGH 5>;
0218 atmel,use-dma-rx;
0219 atmel,use-dma-tx;
0220 pinctrl-names = "default";
0221 pinctrl-0 = <&pinctrl_usart3>;
0222 clocks = <&pmc PMC_TYPE_PERIPHERAL 9>;
0223 clock-names = "usart";
0224 status = "disabled";
0225 };
0226
0227 ssc0: ssc@fffc0000 {
0228 compatible = "atmel,at91sam9rl-ssc";
0229 reg = <0xfffc0000 0x4000>;
0230 interrupts = <14 IRQ_TYPE_LEVEL_HIGH 5>;
0231 pinctrl-names = "default";
0232 pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>;
0233 status = "disabled";
0234 };
0235
0236 ssc1: ssc@fffc4000 {
0237 compatible = "atmel,at91sam9rl-ssc";
0238 reg = <0xfffc4000 0x4000>;
0239 interrupts = <15 IRQ_TYPE_LEVEL_HIGH 5>;
0240 pinctrl-names = "default";
0241 pinctrl-0 = <&pinctrl_ssc1_tx &pinctrl_ssc1_rx>;
0242 status = "disabled";
0243 };
0244
0245 pwm0: pwm@fffc8000 {
0246 compatible = "atmel,at91sam9rl-pwm";
0247 reg = <0xfffc8000 0x300>;
0248 interrupts = <19 IRQ_TYPE_LEVEL_HIGH 4>;
0249 #pwm-cells = <3>;
0250 clocks = <&pmc PMC_TYPE_PERIPHERAL 19>;
0251 clock-names = "pwm_clk";
0252 status = "disabled";
0253 };
0254
0255 spi0: spi@fffcc000 {
0256 #address-cells = <1>;
0257 #size-cells = <0>;
0258 compatible = "atmel,at91rm9200-spi";
0259 reg = <0xfffcc000 0x200>;
0260 interrupts = <13 IRQ_TYPE_LEVEL_HIGH 3>;
0261 pinctrl-names = "default";
0262 pinctrl-0 = <&pinctrl_spi0>;
0263 clocks = <&pmc PMC_TYPE_PERIPHERAL 13>;
0264 clock-names = "spi_clk";
0265 status = "disabled";
0266 };
0267
0268 adc0: adc@fffd0000 {
0269 compatible = "atmel,at91sam9rl-adc";
0270 reg = <0xfffd0000 0x100>;
0271 interrupts = <20 IRQ_TYPE_LEVEL_HIGH 0>;
0272 clocks = <&pmc PMC_TYPE_PERIPHERAL 20>, <&adc_op_clk>;
0273 clock-names = "adc_clk", "adc_op_clk";
0274 atmel,adc-use-external-triggers;
0275 atmel,adc-channels-used = <0x3f>;
0276 atmel,adc-vref = <3300>;
0277 atmel,adc-startup-time = <40>;
0278 };
0279
0280 usb0: gadget@fffd4000 {
0281 compatible = "atmel,at91sam9rl-udc";
0282 reg = <0x00600000 0x100000>,
0283 <0xfffd4000 0x4000>;
0284 interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>;
0285 clocks = <&pmc PMC_TYPE_PERIPHERAL 22>, <&pmc PMC_TYPE_CORE PMC_UTMI>;
0286 clock-names = "pclk", "hclk";
0287 status = "disabled";
0288 };
0289
0290 dma0: dma-controller@ffffe600 {
0291 compatible = "atmel,at91sam9rl-dma";
0292 reg = <0xffffe600 0x200>;
0293 interrupts = <21 IRQ_TYPE_LEVEL_HIGH 0>;
0294 #dma-cells = <2>;
0295 clocks = <&pmc PMC_TYPE_PERIPHERAL 21>;
0296 clock-names = "dma_clk";
0297 };
0298
0299 ramc0: ramc@ffffea00 {
0300 compatible = "atmel,at91sam9260-sdramc";
0301 reg = <0xffffea00 0x200>;
0302 };
0303
0304 smc: smc@ffffec00 {
0305 compatible = "atmel,at91sam9260-smc", "syscon";
0306 reg = <0xffffec00 0x200>;
0307 };
0308
0309 matrix: matrix@ffffee00 {
0310 compatible = "atmel,at91sam9rl-matrix", "syscon";
0311 reg = <0xffffee00 0x200>;
0312 };
0313
0314 aic: interrupt-controller@fffff000 {
0315 #interrupt-cells = <3>;
0316 compatible = "atmel,at91rm9200-aic";
0317 interrupt-controller;
0318 reg = <0xfffff000 0x200>;
0319 atmel,external-irqs = <31>;
0320 };
0321
0322 dbgu: serial@fffff200 {
0323 compatible = "atmel,at91sam9260-dbgu", "atmel,at91sam9260-usart";
0324 reg = <0xfffff200 0x200>;
0325 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0326 pinctrl-names = "default";
0327 pinctrl-0 = <&pinctrl_dbgu>;
0328 clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
0329 clock-names = "usart";
0330 status = "disabled";
0331 };
0332
0333 pinctrl@fffff400 {
0334 #address-cells = <1>;
0335 #size-cells = <1>;
0336 compatible = "atmel,at91rm9200-pinctrl", "simple-bus";
0337 ranges = <0xfffff400 0xfffff400 0x800>;
0338
0339 atmel,mux-mask =
0340 /* A B */
0341 <0xffffffff 0xe05c6738>, /* pioA */
0342 <0xffffffff 0x0000c780>, /* pioB */
0343 <0xffffffff 0xe3ffff0e>, /* pioC */
0344 <0x003fffff 0x0001ff3c>; /* pioD */
0345
0346 /* shared pinctrl settings */
0347 adc0 {
0348 pinctrl_adc0_ts: adc0_ts-0 {
0349 atmel,pins =
0350 <AT91_PIOA 17 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0351 <AT91_PIOA 18 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0352 <AT91_PIOA 19 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0353 <AT91_PIOA 20 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0354 };
0355
0356 pinctrl_adc0_ad0: adc0_ad0-0 {
0357 atmel,pins = <AT91_PIOA 17 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0358 };
0359
0360 pinctrl_adc0_ad1: adc0_ad1-0 {
0361 atmel,pins = <AT91_PIOA 18 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0362 };
0363
0364 pinctrl_adc0_ad2: adc0_ad2-0 {
0365 atmel,pins = <AT91_PIOA 19 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0366 };
0367
0368 pinctrl_adc0_ad3: adc0_ad3-0 {
0369 atmel,pins = <AT91_PIOA 20 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0370 };
0371
0372 pinctrl_adc0_ad4: adc0_ad4-0 {
0373 atmel,pins = <AT91_PIOD 6 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0374 };
0375
0376 pinctrl_adc0_ad5: adc0_ad5-0 {
0377 atmel,pins = <AT91_PIOD 7 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0378 };
0379
0380 pinctrl_adc0_adtrg: adc0_adtrg-0 {
0381 atmel,pins = <AT91_PIOB 15 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0382 };
0383 };
0384
0385 dbgu {
0386 pinctrl_dbgu: dbgu-0 {
0387 atmel,pins =
0388 <AT91_PIOA 21 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
0389 <AT91_PIOA 22 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0390 };
0391 };
0392
0393 ebi {
0394 pinctrl_ebi_addr_nand: ebi-addr-0 {
0395 atmel,pins =
0396 <AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0397 <AT91_PIOB 3 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0398 };
0399 };
0400
0401 fb {
0402 pinctrl_fb: fb-0 {
0403 atmel,pins =
0404 <AT91_PIOC 1 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0405 <AT91_PIOC 3 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0406 <AT91_PIOC 5 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0407 <AT91_PIOC 6 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0408 <AT91_PIOC 7 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0409 <AT91_PIOC 9 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0410 <AT91_PIOC 10 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0411 <AT91_PIOC 11 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0412 <AT91_PIOC 12 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0413 <AT91_PIOC 13 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0414 <AT91_PIOC 15 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0415 <AT91_PIOC 16 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0416 <AT91_PIOC 17 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0417 <AT91_PIOC 18 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0418 <AT91_PIOC 19 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0419 <AT91_PIOC 20 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0420 <AT91_PIOC 21 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0421 <AT91_PIOC 22 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0422 <AT91_PIOC 23 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0423 <AT91_PIOC 24 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0424 <AT91_PIOC 25 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0425 };
0426 };
0427
0428 i2c_gpio0 {
0429 pinctrl_i2c_gpio0: i2c_gpio0-0 {
0430 atmel,pins =
0431 <AT91_PIOA 23 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE>,
0432 <AT91_PIOA 24 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE>;
0433 };
0434 };
0435
0436 i2c_gpio1 {
0437 pinctrl_i2c_gpio1: i2c_gpio1-0 {
0438 atmel,pins =
0439 <AT91_PIOD 10 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE>,
0440 <AT91_PIOD 11 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE>;
0441 };
0442 };
0443
0444 mmc0 {
0445 pinctrl_mmc0_clk: mmc0_clk-0 {
0446 atmel,pins =
0447 <AT91_PIOA 2 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0448 };
0449
0450 pinctrl_mmc0_slot0_cmd_dat0: mmc0_slot0_cmd_dat0-0 {
0451 atmel,pins =
0452 <AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
0453 <AT91_PIOA 1 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0454 };
0455
0456 pinctrl_mmc0_slot0_dat1_3: mmc0_slot0_dat1_3-0 {
0457 atmel,pins =
0458 <AT91_PIOA 3 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
0459 <AT91_PIOA 4 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
0460 <AT91_PIOA 5 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0461 };
0462 };
0463
0464 nand {
0465 pinctrl_nand_rb: nand-rb-0 {
0466 atmel,pins =
0467 <AT91_PIOD 17 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
0468 };
0469
0470 pinctrl_nand_cs: nand-cs-0 {
0471 atmel,pins =
0472 <AT91_PIOB 6 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
0473 };
0474
0475 pinctrl_nand_oe_we: nand-oe-we-0 {
0476 atmel,pins =
0477 <AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0478 <AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0479 };
0480 };
0481
0482 pwm0 {
0483 pinctrl_pwm0_pwm0_0: pwm0_pwm0-0 {
0484 atmel,pins = <AT91_PIOB 8 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0485 };
0486
0487 pinctrl_pwm0_pwm0_1: pwm0_pwm0-1 {
0488 atmel,pins = <AT91_PIOC 2 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0489 };
0490
0491 pinctrl_pwm0_pwm0_2: pwm0_pwm0-2 {
0492 atmel,pins = <AT91_PIOD 14 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0493 };
0494
0495 pinctrl_pwm0_pwm1_0: pwm0_pwm1-0 {
0496 atmel,pins = <AT91_PIOB 9 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0497 };
0498
0499 pinctrl_pwm0_pwm1_1: pwm0_pwm1-1 {
0500 atmel,pins = <AT91_PIOC 3 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0501 };
0502
0503 pinctrl_pwm0_pwm1_2: pwm0_pwm1-2 {
0504 atmel,pins = <AT91_PIOD 15 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0505 };
0506
0507 pinctrl_pwm0_pwm2_0: pwm0_pwm2-0 {
0508 atmel,pins = <AT91_PIOD 5 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0509 };
0510
0511 pinctrl_pwm0_pwm2_1: pwm0_pwm2-1 {
0512 atmel,pins = <AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0513 };
0514
0515 pinctrl_pwm0_pwm2_2: pwm0_pwm2-2 {
0516 atmel,pins = <AT91_PIOD 16 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0517 };
0518
0519 pinctrl_pwm0_pwm3_0: pwm0_pwm3-0 {
0520 atmel,pins = <AT91_PIOD 8 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0521 };
0522
0523 pinctrl_pwm0_pwm3_1: pwm0_pwm3-1 {
0524 atmel,pins = <AT91_PIOD 18 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0525 };
0526 };
0527
0528 spi0 {
0529 pinctrl_spi0: spi0-0 {
0530 atmel,pins =
0531 <AT91_PIOA 25 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0532 <AT91_PIOA 26 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0533 <AT91_PIOA 27 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0534 };
0535 };
0536
0537 ssc0 {
0538 pinctrl_ssc0_tx: ssc0_tx-0 {
0539 atmel,pins =
0540 <AT91_PIOA 15 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0541 <AT91_PIOC 0 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0542 <AT91_PIOC 1 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0543 };
0544
0545 pinctrl_ssc0_rx: ssc0_rx-0 {
0546 atmel,pins =
0547 <AT91_PIOA 10 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0548 <AT91_PIOA 16 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0549 <AT91_PIOA 22 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0550 };
0551 };
0552
0553 ssc1 {
0554 pinctrl_ssc1_tx: ssc1_tx-0 {
0555 atmel,pins =
0556 <AT91_PIOA 13 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0557 <AT91_PIOA 29 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0558 <AT91_PIOA 30 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0559 };
0560
0561 pinctrl_ssc1_rx: ssc1_rx-0 {
0562 atmel,pins =
0563 <AT91_PIOA 8 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0564 <AT91_PIOA 9 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0565 <AT91_PIOA 14 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0566 };
0567 };
0568
0569 tcb0 {
0570 pinctrl_tcb0_tclk0: tcb0_tclk0-0 {
0571 atmel,pins = <AT91_PIOA 3 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0572 };
0573
0574 pinctrl_tcb0_tclk1: tcb0_tclk1-0 {
0575 atmel,pins = <AT91_PIOC 31 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0576 };
0577
0578 pinctrl_tcb0_tclk2: tcb0_tclk2-0 {
0579 atmel,pins = <AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0580 };
0581
0582 pinctrl_tcb0_tioa0: tcb0_tioa0-0 {
0583 atmel,pins = <AT91_PIOA 4 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0584 };
0585
0586 pinctrl_tcb0_tioa1: tcb0_tioa1-0 {
0587 atmel,pins = <AT91_PIOC 29 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0588 };
0589
0590 pinctrl_tcb0_tioa2: tcb0_tioa2-0 {
0591 atmel,pins = <AT91_PIOD 10 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0592 };
0593
0594 pinctrl_tcb0_tiob0: tcb0_tiob0-0 {
0595 atmel,pins = <AT91_PIOA 5 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0596 };
0597
0598 pinctrl_tcb0_tiob1: tcb0_tiob1-0 {
0599 atmel,pins = <AT91_PIOC 30 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0600 };
0601
0602 pinctrl_tcb0_tiob2: tcb0_tiob2-0 {
0603 atmel,pins = <AT91_PIOD 11 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0604 };
0605 };
0606
0607 usart0 {
0608 pinctrl_usart0: usart0-0 {
0609 atmel,pins =
0610 <AT91_PIOA 6 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
0611 <AT91_PIOA 7 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0612 };
0613
0614 pinctrl_usart0_rts: usart0_rts-0 {
0615 atmel,pins =
0616 <AT91_PIOA 9 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0617 };
0618
0619 pinctrl_usart0_cts: usart0_cts-0 {
0620 atmel,pins =
0621 <AT91_PIOA 10 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0622 };
0623
0624 pinctrl_usart0_dtr_dsr: usart0_dtr_dsr-0 {
0625 atmel,pins =
0626 <AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0627 <AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0628 };
0629
0630 pinctrl_usart0_dcd: usart0_dcd-0 {
0631 atmel,pins =
0632 <AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0633 };
0634
0635 pinctrl_usart0_ri: usart0_ri-0 {
0636 atmel,pins =
0637 <AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0638 };
0639
0640 pinctrl_usart0_sck: usart0_sck-0 {
0641 atmel,pins =
0642 <AT91_PIOA 8 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0643 };
0644 };
0645
0646 usart1 {
0647 pinctrl_usart1: usart1-0 {
0648 atmel,pins =
0649 <AT91_PIOA 11 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
0650 <AT91_PIOA 12 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0651 };
0652
0653 pinctrl_usart1_rts: usart1_rts-0 {
0654 atmel,pins =
0655 <AT91_PIOA 18 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0656 };
0657
0658 pinctrl_usart1_cts: usart1_cts-0 {
0659 atmel,pins =
0660 <AT91_PIOA 19 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0661 };
0662
0663 pinctrl_usart1_sck: usart1_sck-0 {
0664 atmel,pins =
0665 <AT91_PIOD 2 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0666 };
0667 };
0668
0669 usart2 {
0670 pinctrl_usart2: usart2-0 {
0671 atmel,pins =
0672 <AT91_PIOA 13 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
0673 <AT91_PIOA 14 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0674 };
0675
0676 pinctrl_usart2_rts: usart2_rts-0 {
0677 atmel,pins =
0678 <AT91_PIOA 29 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0679 };
0680
0681 pinctrl_usart2_cts: usart2_cts-0 {
0682 atmel,pins =
0683 <AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0684 };
0685
0686 pinctrl_usart2_sck: usart2_sck-0 {
0687 atmel,pins =
0688 <AT91_PIOD 9 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0689 };
0690 };
0691
0692 usart3 {
0693 pinctrl_usart3: usart3-0 {
0694 atmel,pins =
0695 <AT91_PIOB 0 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
0696 <AT91_PIOB 1 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0697 };
0698
0699 pinctrl_usart3_rts: usart3_rts-0 {
0700 atmel,pins =
0701 <AT91_PIOD 4 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0702 };
0703
0704 pinctrl_usart3_cts: usart3_cts-0 {
0705 atmel,pins =
0706 <AT91_PIOD 3 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0707 };
0708
0709 pinctrl_usart3_sck: usart3_sck-0 {
0710 atmel,pins =
0711 <AT91_PIOA 20 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0712 };
0713 };
0714
0715 pioA: gpio@fffff400 {
0716 compatible = "atmel,at91rm9200-gpio";
0717 reg = <0xfffff400 0x200>;
0718 interrupts = <2 IRQ_TYPE_LEVEL_HIGH 1>;
0719 #gpio-cells = <2>;
0720 gpio-controller;
0721 interrupt-controller;
0722 #interrupt-cells = <2>;
0723 clocks = <&pmc PMC_TYPE_PERIPHERAL 2>;
0724 };
0725
0726 pioB: gpio@fffff600 {
0727 compatible = "atmel,at91rm9200-gpio";
0728 reg = <0xfffff600 0x200>;
0729 interrupts = <3 IRQ_TYPE_LEVEL_HIGH 1>;
0730 #gpio-cells = <2>;
0731 gpio-controller;
0732 interrupt-controller;
0733 #interrupt-cells = <2>;
0734 clocks = <&pmc PMC_TYPE_PERIPHERAL 3>;
0735 };
0736
0737 pioC: gpio@fffff800 {
0738 compatible = "atmel,at91rm9200-gpio";
0739 reg = <0xfffff800 0x200>;
0740 interrupts = <4 IRQ_TYPE_LEVEL_HIGH 1>;
0741 #gpio-cells = <2>;
0742 gpio-controller;
0743 interrupt-controller;
0744 #interrupt-cells = <2>;
0745 clocks = <&pmc PMC_TYPE_PERIPHERAL 4>;
0746 };
0747
0748 pioD: gpio@fffffa00 {
0749 compatible = "atmel,at91rm9200-gpio";
0750 reg = <0xfffffa00 0x200>;
0751 interrupts = <5 IRQ_TYPE_LEVEL_HIGH 1>;
0752 #gpio-cells = <2>;
0753 gpio-controller;
0754 interrupt-controller;
0755 #interrupt-cells = <2>;
0756 clocks = <&pmc PMC_TYPE_PERIPHERAL 5>;
0757 };
0758 };
0759
0760 pmc: pmc@fffffc00 {
0761 compatible = "atmel,at91sam9rl-pmc", "syscon";
0762 reg = <0xfffffc00 0x100>;
0763 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0764 #clock-cells = <2>;
0765 clocks = <&clk32k>, <&main_xtal>;
0766 clock-names = "slow_clk", "main_xtal";
0767 };
0768
0769 reset-controller@fffffd00 {
0770 compatible = "atmel,at91sam9260-rstc";
0771 reg = <0xfffffd00 0x10>;
0772 clocks = <&clk32k>;
0773 };
0774
0775 shdwc@fffffd10 {
0776 compatible = "atmel,at91sam9260-shdwc";
0777 reg = <0xfffffd10 0x10>;
0778 clocks = <&clk32k>;
0779 };
0780
0781 pit: timer@fffffd30 {
0782 compatible = "atmel,at91sam9260-pit";
0783 reg = <0xfffffd30 0xf>;
0784 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0785 clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
0786 };
0787
0788 watchdog@fffffd40 {
0789 compatible = "atmel,at91sam9260-wdt";
0790 reg = <0xfffffd40 0x10>;
0791 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0792 clocks = <&clk32k>;
0793 status = "disabled";
0794 };
0795
0796 clk32k: sckc@fffffd50 {
0797 compatible = "atmel,at91sam9x5-sckc";
0798 reg = <0xfffffd50 0x4>;
0799 clocks = <&slow_xtal>;
0800 #clock-cells = <0>;
0801 };
0802
0803 rtc@fffffd20 {
0804 compatible = "atmel,at91sam9260-rtt";
0805 reg = <0xfffffd20 0x10>;
0806 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0807 clocks = <&clk32k>;
0808 status = "disabled";
0809 };
0810
0811 gpbr: syscon@fffffd60 {
0812 compatible = "atmel,at91sam9260-gpbr", "syscon";
0813 reg = <0xfffffd60 0x10>;
0814 status = "disabled";
0815 };
0816
0817 rtc@fffffe00 {
0818 compatible = "atmel,at91rm9200-rtc";
0819 reg = <0xfffffe00 0x40>;
0820 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0821 clocks = <&clk32k>;
0822 status = "disabled";
0823 };
0824
0825 };
0826 };
0827
0828 i2c-gpio-0 {
0829 compatible = "i2c-gpio";
0830 gpios = <&pioA 23 GPIO_ACTIVE_HIGH>, /* sda */
0831 <&pioA 24 GPIO_ACTIVE_HIGH>; /* scl */
0832 i2c-gpio,sda-open-drain;
0833 i2c-gpio,scl-open-drain;
0834 i2c-gpio,delay-us = <2>; /* ~100 kHz */
0835 #address-cells = <1>;
0836 #size-cells = <0>;
0837 pinctrl-names = "default";
0838 pinctrl-0 = <&pinctrl_i2c_gpio0>;
0839 status = "disabled";
0840 };
0841
0842 i2c-gpio-1 {
0843 compatible = "i2c-gpio";
0844 gpios = <&pioD 10 GPIO_ACTIVE_HIGH>, /* sda */
0845 <&pioD 11 GPIO_ACTIVE_HIGH>; /* scl */
0846 i2c-gpio,sda-open-drain;
0847 i2c-gpio,scl-open-drain;
0848 i2c-gpio,delay-us = <2>; /* ~100 kHz */
0849 #address-cells = <1>;
0850 #size-cells = <0>;
0851 pinctrl-names = "default";
0852 pinctrl-0 = <&pinctrl_i2c_gpio1>;
0853 status = "disabled";
0854 };
0855 };