Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-only
0002 /*
0003  * at91sam9261.dtsi - Device Tree Include file for AT91SAM9261 SoC
0004  *
0005  *  Copyright (C) 2013 Jean-Jacques Hiblot <jjhiblot@traphandler.com>
0006  */
0007 
0008 #include <dt-bindings/pinctrl/at91.h>
0009 #include <dt-bindings/interrupt-controller/irq.h>
0010 #include <dt-bindings/gpio/gpio.h>
0011 #include <dt-bindings/clock/at91.h>
0012 
0013 / {
0014         #address-cells = <1>;
0015         #size-cells = <1>;
0016         model = "Atmel AT91SAM9261 family SoC";
0017         compatible = "atmel,at91sam9261";
0018         interrupt-parent = <&aic>;
0019 
0020         aliases {
0021                 serial0 = &dbgu;
0022                 serial1 = &usart0;
0023                 serial2 = &usart1;
0024                 serial3 = &usart2;
0025                 gpio0 = &pioA;
0026                 gpio1 = &pioB;
0027                 gpio2 = &pioC;
0028                 tcb0 = &tcb0;
0029                 i2c0 = &i2c0;
0030                 ssc0 = &ssc0;
0031                 ssc1 = &ssc1;
0032                 ssc2 = &ssc2;
0033         };
0034 
0035         cpus {
0036                 #address-cells = <1>;
0037                 #size-cells = <0>;
0038 
0039                 cpu@0 {
0040                         compatible = "arm,arm926ej-s";
0041                         device_type = "cpu";
0042                         reg = <0>;
0043                 };
0044         };
0045 
0046         memory@20000000 {
0047                 device_type = "memory";
0048                 reg = <0x20000000 0x08000000>;
0049         };
0050 
0051         clocks {
0052                 main_xtal: main_xtal {
0053                         compatible = "fixed-clock";
0054                         #clock-cells = <0>;
0055                         clock-frequency = <0>;
0056                 };
0057 
0058                 slow_xtal: slow_xtal {
0059                         compatible = "fixed-clock";
0060                         #clock-cells = <0>;
0061                         clock-frequency = <0>;
0062                 };
0063         };
0064 
0065         sram: sram@300000 {
0066                 compatible = "mmio-sram";
0067                 reg = <0x00300000 0x28000>;
0068                 #address-cells = <1>;
0069                 #size-cells = <1>;
0070                 ranges = <0 0x00300000 0x28000>;
0071         };
0072 
0073         ahb {
0074                 compatible = "simple-bus";
0075                 #address-cells = <1>;
0076                 #size-cells = <1>;
0077                 ranges;
0078 
0079                 usb0: ohci@500000 {
0080                         compatible = "atmel,at91rm9200-ohci", "usb-ohci";
0081                         reg = <0x00500000 0x100000>;
0082                         interrupts = <20 IRQ_TYPE_LEVEL_HIGH 2>;
0083                         clocks = <&pmc PMC_TYPE_PERIPHERAL 20>, <&pmc PMC_TYPE_SYSTEM 16>, <&pmc PMC_TYPE_SYSTEM 6>;
0084                         clock-names = "ohci_clk", "hclk", "uhpck";
0085                         status = "disabled";
0086                 };
0087 
0088                 fb0: fb@600000 {
0089                         compatible = "atmel,at91sam9261-lcdc";
0090                         reg = <0x00600000 0x1000>;
0091                         interrupts = <21 IRQ_TYPE_LEVEL_HIGH 3>;
0092                         pinctrl-names = "default";
0093                         pinctrl-0 = <&pinctrl_fb>;
0094                         clocks = <&pmc PMC_TYPE_PERIPHERAL 21>, <&pmc PMC_TYPE_SYSTEM 17>;
0095                         clock-names = "lcdc_clk", "hclk";
0096                         status = "disabled";
0097                 };
0098 
0099                 ebi: ebi@10000000 {
0100                         compatible = "atmel,at91sam9261-ebi";
0101                         #address-cells = <2>;
0102                         #size-cells = <1>;
0103                         atmel,smc = <&smc>;
0104                         atmel,matrix = <&matrix>;
0105                         reg = <0x10000000 0x80000000>;
0106                         ranges = <0x0 0x0 0x10000000 0x10000000
0107                                   0x1 0x0 0x20000000 0x10000000
0108                                   0x2 0x0 0x30000000 0x10000000
0109                                   0x3 0x0 0x40000000 0x10000000
0110                                   0x4 0x0 0x50000000 0x10000000
0111                                   0x5 0x0 0x60000000 0x10000000
0112                                   0x6 0x0 0x70000000 0x10000000
0113                                   0x7 0x0 0x80000000 0x10000000>;
0114                         clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
0115                         status = "disabled";
0116 
0117                         nand_controller: nand-controller {
0118                                 compatible = "atmel,at91sam9261-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 = <17 IRQ_TYPE_LEVEL_HIGH 0>,
0138                                              <18 IRQ_TYPE_LEVEL_HIGH 0>,
0139                                              <19 IRQ_TYPE_LEVEL_HIGH 0>;
0140                                 clocks = <&pmc PMC_TYPE_PERIPHERAL 17>, <&pmc PMC_TYPE_PERIPHERAL 18>, <&pmc PMC_TYPE_PERIPHERAL 19>, <&slow_xtal>;
0141                                 clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk";
0142                         };
0143 
0144                         usb1: gadget@fffa4000 {
0145                                 compatible = "atmel,at91sam9261-udc";
0146                                 reg = <0xfffa4000 0x4000>;
0147                                 interrupts = <10 IRQ_TYPE_LEVEL_HIGH 2>;
0148                                 clocks = <&pmc PMC_TYPE_PERIPHERAL 10>, <&pmc PMC_TYPE_SYSTEM 7>;
0149                                 clock-names = "pclk", "hclk";
0150                                 atmel,matrix = <&matrix>;
0151                                 status = "disabled";
0152                         };
0153 
0154                         mmc0: mmc@fffa8000 {
0155                                 compatible = "atmel,hsmci";
0156                                 reg = <0xfffa8000 0x600>;
0157                                 interrupts = <9 IRQ_TYPE_LEVEL_HIGH 0>;
0158                                 pinctrl-names = "default";
0159                                 pinctrl-0 = <&pinctrl_mmc0_clk>, <&pinctrl_mmc0_slot0_cmd_dat0>, <&pinctrl_mmc0_slot0_dat1_3>;
0160                                 #address-cells = <1>;
0161                                 #size-cells = <0>;
0162                                 clocks = <&pmc PMC_TYPE_PERIPHERAL 9>;
0163                                 clock-names = "mci_clk";
0164                                 status = "disabled";
0165                         };
0166 
0167                         i2c0: i2c@fffac000 {
0168                                 compatible = "atmel,at91sam9261-i2c";
0169                                 pinctrl-names = "default";
0170                                 pinctrl-0 = <&pinctrl_i2c_twi>;
0171                                 reg = <0xfffac000 0x100>;
0172                                 interrupts = <11 IRQ_TYPE_LEVEL_HIGH 6>;
0173                                 #address-cells = <1>;
0174                                 #size-cells = <0>;
0175                                 clocks = <&pmc PMC_TYPE_PERIPHERAL 11>;
0176                                 status = "disabled";
0177                         };
0178 
0179                         usart0: serial@fffb0000 {
0180                                 compatible = "atmel,at91sam9260-usart";
0181                                 reg = <0xfffb0000 0x200>;
0182                                 interrupts = <6 IRQ_TYPE_LEVEL_HIGH 5>;
0183                                 atmel,use-dma-rx;
0184                                 atmel,use-dma-tx;
0185                                 pinctrl-names = "default";
0186                                 pinctrl-0 = <&pinctrl_usart0>;
0187                                 clocks = <&pmc PMC_TYPE_PERIPHERAL 6>;
0188                                 clock-names = "usart";
0189                                 status = "disabled";
0190                         };
0191 
0192                         usart1: serial@fffb4000 {
0193                                 compatible = "atmel,at91sam9260-usart";
0194                                 reg = <0xfffb4000 0x200>;
0195                                 interrupts = <7 IRQ_TYPE_LEVEL_HIGH 5>;
0196                                 atmel,use-dma-rx;
0197                                 atmel,use-dma-tx;
0198                                 pinctrl-names = "default";
0199                                 pinctrl-0 = <&pinctrl_usart1>;
0200                                 clocks = <&pmc PMC_TYPE_PERIPHERAL 7>;
0201                                 clock-names = "usart";
0202                                 status = "disabled";
0203                         };
0204 
0205                         usart2: serial@fffb8000{
0206                                 compatible = "atmel,at91sam9260-usart";
0207                                 reg = <0xfffb8000 0x200>;
0208                                 interrupts = <8 IRQ_TYPE_LEVEL_HIGH 5>;
0209                                 atmel,use-dma-rx;
0210                                 atmel,use-dma-tx;
0211                                 pinctrl-names = "default";
0212                                 pinctrl-0 = <&pinctrl_usart2>;
0213                                 clocks = <&pmc PMC_TYPE_PERIPHERAL 8>;
0214                                 clock-names = "usart";
0215                                 status = "disabled";
0216                         };
0217 
0218                         ssc0: ssc@fffbc000 {
0219                                 compatible = "atmel,at91rm9200-ssc";
0220                                 reg = <0xfffbc000 0x4000>;
0221                                 interrupts = <14 IRQ_TYPE_LEVEL_HIGH 5>;
0222                                 pinctrl-names = "default";
0223                                 pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>;
0224                                 clocks = <&pmc PMC_TYPE_PERIPHERAL 14>;
0225                                 clock-names = "pclk";
0226                                 status = "disabled";
0227                         };
0228 
0229                         ssc1: ssc@fffc0000 {
0230                                 compatible = "atmel,at91rm9200-ssc";
0231                                 reg = <0xfffc0000 0x4000>;
0232                                 interrupts = <15 IRQ_TYPE_LEVEL_HIGH 5>;
0233                                 pinctrl-names = "default";
0234                                 pinctrl-0 = <&pinctrl_ssc1_tx &pinctrl_ssc1_rx>;
0235                                 clocks = <&pmc PMC_TYPE_PERIPHERAL 15>;
0236                                 clock-names = "pclk";
0237                                 status = "disabled";
0238                         };
0239 
0240                         ssc2: ssc@fffc4000 {
0241                                 compatible = "atmel,at91rm9200-ssc";
0242                                 reg = <0xfffc4000 0x4000>;
0243                                 interrupts = <16 IRQ_TYPE_LEVEL_HIGH 5>;
0244                                 pinctrl-names = "default";
0245                                 pinctrl-0 = <&pinctrl_ssc2_tx &pinctrl_ssc2_rx>;
0246                                 clocks = <&pmc PMC_TYPE_PERIPHERAL 16>;
0247                                 clock-names = "pclk";
0248                                 status = "disabled";
0249                         };
0250 
0251                         spi0: spi@fffc8000 {
0252                                 #address-cells = <1>;
0253                                 #size-cells = <0>;
0254                                 compatible = "atmel,at91rm9200-spi";
0255                                 reg = <0xfffc8000 0x200>;
0256                                 cs-gpios = <0>, <0>, <0>, <0>;
0257                                 interrupts = <12 IRQ_TYPE_LEVEL_HIGH 3>;
0258                                 pinctrl-names = "default";
0259                                 pinctrl-0 = <&pinctrl_spi0>;
0260                                 clocks = <&pmc PMC_TYPE_PERIPHERAL 12>;
0261                                 clock-names = "spi_clk";
0262                                 status = "disabled";
0263                         };
0264 
0265                         spi1: spi@fffcc000 {
0266                                 #address-cells = <1>;
0267                                 #size-cells = <0>;
0268                                 compatible = "atmel,at91rm9200-spi";
0269                                 reg = <0xfffcc000 0x200>;
0270                                 interrupts = <13 IRQ_TYPE_LEVEL_HIGH 3>;
0271                                 pinctrl-names = "default";
0272                                 pinctrl-0 = <&pinctrl_spi1>;
0273                                 clocks = <&pmc PMC_TYPE_PERIPHERAL 13>;
0274                                 clock-names = "spi_clk";
0275                                 status = "disabled";
0276                         };
0277 
0278                         ramc: ramc@ffffea00 {
0279                                 compatible = "atmel,at91sam9260-sdramc";
0280                                 reg = <0xffffea00 0x200>;
0281                         };
0282 
0283                         smc: smc@ffffec00 {
0284                                 compatible = "atmel,at91sam9260-smc", "syscon";
0285                                 reg = <0xffffec00 0x200>;
0286                         };
0287 
0288                         matrix: matrix@ffffee00 {
0289                                 compatible = "atmel,at91sam9261-matrix", "syscon";
0290                                 reg = <0xffffee00 0x200>;
0291                         };
0292 
0293                         aic: interrupt-controller@fffff000 {
0294                                 #interrupt-cells = <3>;
0295                                 compatible = "atmel,at91rm9200-aic";
0296                                 interrupt-controller;
0297                                 reg = <0xfffff000 0x200>;
0298                                 atmel,external-irqs = <29 30 31>;
0299                         };
0300 
0301                         dbgu: serial@fffff200 {
0302                                 compatible = "atmel,at91sam9260-dbgu", "atmel,at91sam9260-usart";
0303                                 reg = <0xfffff200 0x200>;
0304                                 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0305                                 pinctrl-names = "default";
0306                                 pinctrl-0 = <&pinctrl_dbgu>;
0307                                 clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
0308                                 clock-names = "usart";
0309                                 status = "disabled";
0310                         };
0311 
0312                         pinctrl@fffff400 {
0313                                 #address-cells = <1>;
0314                                 #size-cells = <1>;
0315                                 compatible = "atmel,at91rm9200-pinctrl", "simple-bus";
0316                                 ranges = <0xfffff400 0xfffff400 0x600>;
0317 
0318                                 atmel,mux-mask =
0319                                       /*    A         B     */
0320                                       <0xffffffff 0xfffffff7>,  /* pioA */
0321                                       <0xffffffff 0xfffffff4>,  /* pioB */
0322                                       <0xffffffff 0xffffff07>;  /* pioC */
0323 
0324                                 /* shared pinctrl settings */
0325                                 dbgu {
0326                                         pinctrl_dbgu: dbgu-0 {
0327                                                 atmel,pins =
0328                                                         <AT91_PIOA 9  AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
0329                                                         <AT91_PIOA 10 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0330                                         };
0331                                 };
0332 
0333                                 usart0 {
0334                                         pinctrl_usart0: usart0-0 {
0335                                                 atmel,pins =
0336                                                         <AT91_PIOC 8 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
0337                                                         <AT91_PIOC 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0338                                         };
0339 
0340                                         pinctrl_usart0_rts: usart0_rts-0 {
0341                                                 atmel,pins =
0342                                                         <AT91_PIOC 10 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0343                                         };
0344 
0345                                         pinctrl_usart0_cts: usart0_cts-0 {
0346                                                 atmel,pins =
0347                                                         <AT91_PIOC 11 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0348                                         };
0349                                 };
0350 
0351                                 usart1 {
0352                                         pinctrl_usart1: usart1-0 {
0353                                                 atmel,pins =
0354                                                         <AT91_PIOC 12 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
0355                                                         <AT91_PIOC 13 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0356                                         };
0357 
0358                                         pinctrl_usart1_rts: usart1_rts-0 {
0359                                                 atmel,pins =
0360                                                         <AT91_PIOA 12 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0361                                         };
0362 
0363                                         pinctrl_usart1_cts: usart1_cts-0 {
0364                                                 atmel,pins =
0365                                                         <AT91_PIOA 13 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0366                                         };
0367                                 };
0368 
0369                                 usart2 {
0370                                         pinctrl_usart2: usart2-0 {
0371                                                 atmel,pins =
0372                                                         <AT91_PIOC 14 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>,
0373                                                         <AT91_PIOC 15 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
0374                                         };
0375 
0376                                         pinctrl_usart2_rts: usart2_rts-0 {
0377                                                 atmel,pins =
0378                                                         <AT91_PIOA 15 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0379                                         };
0380 
0381                                         pinctrl_usart2_cts: usart2_cts-0 {
0382                                                 atmel,pins =
0383                                                         <AT91_PIOA 16 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0384                                         };
0385                                 };
0386 
0387                                 nand {
0388                                         pinctrl_nand_rb: nand-rb-0 {
0389                                                 atmel,pins =
0390                                                         <AT91_PIOC 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
0391                                         };
0392 
0393                                         pinctrl_nand_cs: nand-cs-0 {
0394                                                 atmel,pins =
0395                                                         <AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
0396                                         };
0397                                 };
0398 
0399                                 mmc0 {
0400                                         pinctrl_mmc0_clk: mmc0_clk-0 {
0401                                                 atmel,pins =
0402                                                         <AT91_PIOA 2 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0403                                         };
0404 
0405                                         pinctrl_mmc0_slot0_cmd_dat0: mmc0_slot0_cmd_dat0-0 {
0406                                                 atmel,pins =
0407                                                         <AT91_PIOA 1 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>,
0408                                                         <AT91_PIOA 0 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>;
0409                                         };
0410 
0411                                         pinctrl_mmc0_slot0_dat1_3: mmc0_slot0_dat1_3-0 {
0412                                                 atmel,pins =
0413                                                         <AT91_PIOA 4 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>,
0414                                                         <AT91_PIOA 5 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>,
0415                                                         <AT91_PIOA 6 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>;
0416                                         };
0417                                         };
0418 
0419                                 ssc0 {
0420                                         pinctrl_ssc0_tx: ssc0_tx-0 {
0421                                                 atmel,pins =
0422                                                         <AT91_PIOB 21 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0423                                                         <AT91_PIOB 22 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0424                                                         <AT91_PIOB 23 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0425                                         };
0426 
0427                                         pinctrl_ssc0_rx: ssc0_rx-0 {
0428                                                 atmel,pins =
0429                                                         <AT91_PIOB 24 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0430                                                         <AT91_PIOB 25 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0431                                                         <AT91_PIOB 26 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0432                                         };
0433                                 };
0434 
0435                                 ssc1 {
0436                                         pinctrl_ssc1_tx: ssc1_tx-0 {
0437                                                 atmel,pins =
0438                                                         <AT91_PIOA 17 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0439                                                         <AT91_PIOA 18 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0440                                                         <AT91_PIOA 19 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0441                                         };
0442 
0443                                         pinctrl_ssc1_rx: ssc1_rx-0 {
0444                                                 atmel,pins =
0445                                                         <AT91_PIOA 20 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0446                                                         <AT91_PIOA 21 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0447                                                         <AT91_PIOA 22 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0448                                         };
0449                                 };
0450 
0451                                 ssc2 {
0452                                         pinctrl_ssc2_tx: ssc2_tx-0 {
0453                                                 atmel,pins =
0454                                                         <AT91_PIOC 25 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0455                                                         <AT91_PIOC 26 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0456                                                         <AT91_PIOC 27 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0457                                         };
0458 
0459                                         pinctrl_ssc2_rx: ssc2_rx-0 {
0460                                                 atmel,pins =
0461                                                         <AT91_PIOC 28 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0462                                                         <AT91_PIOC 29 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0463                                                         <AT91_PIOC 30 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0464                                         };
0465                                 };
0466 
0467                                 spi0 {
0468                                         pinctrl_spi0: spi0-0 {
0469                                                 atmel,pins =
0470                                                         <AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0471                                                         <AT91_PIOA 1 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0472                                                         <AT91_PIOA 2 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0473                                         };
0474                                         };
0475 
0476                                 spi1 {
0477                                         pinctrl_spi1: spi1-0 {
0478                                                 atmel,pins =
0479                                                         <AT91_PIOB 30 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0480                                                         <AT91_PIOB 31 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0481                                                         <AT91_PIOB 29 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0482                                         };
0483                                 };
0484 
0485                                 tcb0 {
0486                                         pinctrl_tcb0_tclk0: tcb0_tclk0-0 {
0487                                                 atmel,pins = <AT91_PIOC 16 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0488                                         };
0489 
0490                                         pinctrl_tcb0_tclk1: tcb0_tclk1-0 {
0491                                                 atmel,pins = <AT91_PIOC 17 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0492                                         };
0493 
0494                                         pinctrl_tcb0_tclk2: tcb0_tclk2-0 {
0495                                                 atmel,pins = <AT91_PIOC 18 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0496                                         };
0497 
0498                                         pinctrl_tcb0_tioa0: tcb0_tioa0-0 {
0499                                                 atmel,pins = <AT91_PIOC 19 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0500                                         };
0501 
0502                                         pinctrl_tcb0_tioa1: tcb0_tioa1-0 {
0503                                                 atmel,pins = <AT91_PIOC 21 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0504                                         };
0505 
0506                                         pinctrl_tcb0_tioa2: tcb0_tioa2-0 {
0507                                                 atmel,pins = <AT91_PIOC 23 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0508                                         };
0509 
0510                                         pinctrl_tcb0_tiob0: tcb0_tiob0-0 {
0511                                                 atmel,pins = <AT91_PIOC 20 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0512                                         };
0513 
0514                                         pinctrl_tcb0_tiob1: tcb0_tiob1-0 {
0515                                                 atmel,pins = <AT91_PIOC 22 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0516                                         };
0517 
0518                                         pinctrl_tcb0_tiob2: tcb0_tiob2-0 {
0519                                                 atmel,pins = <AT91_PIOC 24 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0520                                         };
0521                                 };
0522 
0523                                 i2c0 {
0524                                         pinctrl_i2c_bitbang: i2c-0-bitbang {
0525                                                 atmel,pins =
0526                                                         <AT91_PIOA 7 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>,
0527                                                         <AT91_PIOA 8 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
0528                                         };
0529                                         pinctrl_i2c_twi: i2c-0-twi {
0530                                                 atmel,pins =
0531                                                         <AT91_PIOA 7 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0532                                                         <AT91_PIOA 8 AT91_PERIPH_A AT91_PINCTRL_NONE>;
0533                                         };
0534                                 };
0535 
0536                                 fb {
0537                                         pinctrl_fb: fb-0 {
0538                                                 atmel,pins =
0539                                                         <AT91_PIOB 1 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0540                                                         <AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0541                                                         <AT91_PIOB 3 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0542                                                         <AT91_PIOB 7 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0543                                                         <AT91_PIOB 8 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0544                                                         <AT91_PIOB 9 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0545                                                         <AT91_PIOB 10 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0546                                                         <AT91_PIOB 11 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0547                                                         <AT91_PIOB 12 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0548                                                         <AT91_PIOB 15 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0549                                                         <AT91_PIOB 16 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0550                                                         <AT91_PIOB 17 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0551                                                         <AT91_PIOB 18 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0552                                                         <AT91_PIOB 19 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0553                                                         <AT91_PIOB 20 AT91_PERIPH_A AT91_PINCTRL_NONE>,
0554                                                         <AT91_PIOB 23 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0555                                                         <AT91_PIOB 24 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0556                                                         <AT91_PIOB 25 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0557                                                         <AT91_PIOB 26 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0558                                                         <AT91_PIOB 27 AT91_PERIPH_B AT91_PINCTRL_NONE>,
0559                                                         <AT91_PIOB 28 AT91_PERIPH_B AT91_PINCTRL_NONE>;
0560                                         };
0561                                 };
0562 
0563                                 pioA: gpio@fffff400 {
0564                                         compatible = "atmel,at91rm9200-gpio";
0565                                         reg = <0xfffff400 0x200>;
0566                                         interrupts = <2 IRQ_TYPE_LEVEL_HIGH 1>;
0567                                         #gpio-cells = <2>;
0568                                         gpio-controller;
0569                                         interrupt-controller;
0570                                         #interrupt-cells = <2>;
0571                                         clocks = <&pmc PMC_TYPE_PERIPHERAL 2>;
0572                                 };
0573 
0574                                 pioB: gpio@fffff600 {
0575                                         compatible = "atmel,at91rm9200-gpio";
0576                                         reg = <0xfffff600 0x200>;
0577                                         interrupts = <3 IRQ_TYPE_LEVEL_HIGH 1>;
0578                                         #gpio-cells = <2>;
0579                                         gpio-controller;
0580                                         interrupt-controller;
0581                                         #interrupt-cells = <2>;
0582                                         clocks = <&pmc PMC_TYPE_PERIPHERAL 3>;
0583                                 };
0584 
0585                                 pioC: gpio@fffff800 {
0586                                         compatible = "atmel,at91rm9200-gpio";
0587                                         reg = <0xfffff800 0x200>;
0588                                         interrupts = <4 IRQ_TYPE_LEVEL_HIGH 1>;
0589                                         #gpio-cells = <2>;
0590                                         gpio-controller;
0591                                         interrupt-controller;
0592                                         #interrupt-cells = <2>;
0593                                         clocks = <&pmc PMC_TYPE_PERIPHERAL 4>;
0594                                 };
0595                         };
0596 
0597                         pmc: pmc@fffffc00 {
0598                                 compatible = "atmel,at91sam9261-pmc", "syscon";
0599                                 reg = <0xfffffc00 0x100>;
0600                                 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0601                                 #clock-cells = <2>;
0602                                 clocks = <&slow_xtal>, <&main_xtal>;
0603                                 clock-names = "slow_xtal", "main_xtal";
0604                         };
0605 
0606                         reset-controller@fffffd00 {
0607                                 compatible = "atmel,at91sam9260-rstc";
0608                                 reg = <0xfffffd00 0x10>;
0609                                 clocks = <&slow_xtal>;
0610                         };
0611 
0612                         shdwc@fffffd10 {
0613                                 compatible = "atmel,at91sam9260-shdwc";
0614                                 reg = <0xfffffd10 0x10>;
0615                                 clocks = <&slow_xtal>;
0616                         };
0617 
0618                         pit: timer@fffffd30 {
0619                                 compatible = "atmel,at91sam9260-pit";
0620                                 reg = <0xfffffd30 0xf>;
0621                                 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0622                                 clocks = <&pmc PMC_TYPE_CORE PMC_MCK>;
0623                         };
0624 
0625                         rtc@fffffd20 {
0626                                 compatible = "atmel,at91sam9260-rtt";
0627                                 reg = <0xfffffd20 0x10>;
0628                                 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0629                                 clocks = <&slow_xtal>;
0630                                 status = "disabled";
0631                         };
0632 
0633                         watchdog@fffffd40 {
0634                                 compatible = "atmel,at91sam9260-wdt";
0635                                 reg = <0xfffffd40 0x10>;
0636                                 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
0637                                 clocks = <&slow_xtal>;
0638                                 status = "disabled";
0639                         };
0640 
0641                         gpbr: syscon@fffffd50 {
0642                                 compatible = "atmel,at91sam9260-gpbr", "syscon";
0643                                 reg = <0xfffffd50 0x10>;
0644                                 status = "disabled";
0645                         };
0646                 };
0647         };
0648 
0649         i2c-gpio-0 {
0650                 compatible = "i2c-gpio";
0651                 pinctrl-names = "default";
0652                 pinctrl-0 = <&pinctrl_i2c_bitbang>;
0653                 gpios = <&pioA 7 GPIO_ACTIVE_HIGH>, /* sda */
0654                         <&pioA 8 GPIO_ACTIVE_HIGH>; /* scl */
0655                 i2c-gpio,sda-open-drain;
0656                 i2c-gpio,scl-open-drain;
0657                 i2c-gpio,delay-us = <2>;        /* ~100 kHz */
0658                 #address-cells = <1>;
0659                 #size-cells = <0>;
0660                 status = "disabled";
0661         };
0662 };