Back to home page

OSCL-LXR

 
 

    


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 };