1*4882a593Smuzhiyun/* 2*4882a593Smuzhiyun * at91sam9g45.dtsi - Device Tree Include file for AT91SAM9G45 family SoC 3*4882a593Smuzhiyun * applies to AT91SAM9G45, AT91SAM9M10, 4*4882a593Smuzhiyun * AT91SAM9G46, AT91SAM9M11 SoC 5*4882a593Smuzhiyun * 6*4882a593Smuzhiyun * Copyright (C) 2011 Atmel, 7*4882a593Smuzhiyun * 2011 Nicolas Ferre <nicolas.ferre@atmel.com> 8*4882a593Smuzhiyun * 9*4882a593Smuzhiyun * Licensed under GPLv2 or later. 10*4882a593Smuzhiyun */ 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun#include "skeleton.dtsi" 13*4882a593Smuzhiyun#include <dt-bindings/dma/at91.h> 14*4882a593Smuzhiyun#include <dt-bindings/pinctrl/at91.h> 15*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/irq.h> 16*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h> 17*4882a593Smuzhiyun#include <dt-bindings/clock/at91.h> 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun/ { 20*4882a593Smuzhiyun model = "Atmel AT91SAM9G45 family SoC"; 21*4882a593Smuzhiyun compatible = "atmel,at91sam9g45"; 22*4882a593Smuzhiyun interrupt-parent = <&aic>; 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun aliases { 25*4882a593Smuzhiyun serial0 = &dbgu; 26*4882a593Smuzhiyun serial1 = &usart0; 27*4882a593Smuzhiyun serial2 = &usart1; 28*4882a593Smuzhiyun serial3 = &usart2; 29*4882a593Smuzhiyun serial4 = &usart3; 30*4882a593Smuzhiyun gpio0 = &pioA; 31*4882a593Smuzhiyun gpio1 = &pioB; 32*4882a593Smuzhiyun gpio2 = &pioC; 33*4882a593Smuzhiyun gpio3 = &pioD; 34*4882a593Smuzhiyun gpio4 = &pioE; 35*4882a593Smuzhiyun tcb0 = &tcb0; 36*4882a593Smuzhiyun tcb1 = &tcb1; 37*4882a593Smuzhiyun i2c0 = &i2c0; 38*4882a593Smuzhiyun i2c1 = &i2c1; 39*4882a593Smuzhiyun ssc0 = &ssc0; 40*4882a593Smuzhiyun ssc1 = &ssc1; 41*4882a593Smuzhiyun pwm0 = &pwm0; 42*4882a593Smuzhiyun }; 43*4882a593Smuzhiyun cpus { 44*4882a593Smuzhiyun #address-cells = <0>; 45*4882a593Smuzhiyun #size-cells = <0>; 46*4882a593Smuzhiyun 47*4882a593Smuzhiyun cpu { 48*4882a593Smuzhiyun compatible = "arm,arm926ej-s"; 49*4882a593Smuzhiyun device_type = "cpu"; 50*4882a593Smuzhiyun }; 51*4882a593Smuzhiyun }; 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun memory { 54*4882a593Smuzhiyun reg = <0x70000000 0x10000000>; 55*4882a593Smuzhiyun }; 56*4882a593Smuzhiyun 57*4882a593Smuzhiyun clocks { 58*4882a593Smuzhiyun slow_xtal: slow_xtal { 59*4882a593Smuzhiyun compatible = "fixed-clock"; 60*4882a593Smuzhiyun #clock-cells = <0>; 61*4882a593Smuzhiyun clock-frequency = <0>; 62*4882a593Smuzhiyun }; 63*4882a593Smuzhiyun 64*4882a593Smuzhiyun main_xtal: main_xtal { 65*4882a593Smuzhiyun compatible = "fixed-clock"; 66*4882a593Smuzhiyun #clock-cells = <0>; 67*4882a593Smuzhiyun clock-frequency = <0>; 68*4882a593Smuzhiyun }; 69*4882a593Smuzhiyun 70*4882a593Smuzhiyun adc_op_clk: adc_op_clk{ 71*4882a593Smuzhiyun compatible = "fixed-clock"; 72*4882a593Smuzhiyun #clock-cells = <0>; 73*4882a593Smuzhiyun clock-frequency = <300000>; 74*4882a593Smuzhiyun }; 75*4882a593Smuzhiyun }; 76*4882a593Smuzhiyun 77*4882a593Smuzhiyun sram: sram@00300000 { 78*4882a593Smuzhiyun compatible = "mmio-sram"; 79*4882a593Smuzhiyun reg = <0x00300000 0x10000>; 80*4882a593Smuzhiyun }; 81*4882a593Smuzhiyun 82*4882a593Smuzhiyun ahb { 83*4882a593Smuzhiyun compatible = "simple-bus"; 84*4882a593Smuzhiyun #address-cells = <1>; 85*4882a593Smuzhiyun #size-cells = <1>; 86*4882a593Smuzhiyun ranges; 87*4882a593Smuzhiyun u-boot,dm-pre-reloc; 88*4882a593Smuzhiyun 89*4882a593Smuzhiyun apb { 90*4882a593Smuzhiyun compatible = "simple-bus"; 91*4882a593Smuzhiyun #address-cells = <1>; 92*4882a593Smuzhiyun #size-cells = <1>; 93*4882a593Smuzhiyun ranges; 94*4882a593Smuzhiyun u-boot,dm-pre-reloc; 95*4882a593Smuzhiyun 96*4882a593Smuzhiyun aic: interrupt-controller@fffff000 { 97*4882a593Smuzhiyun #interrupt-cells = <3>; 98*4882a593Smuzhiyun compatible = "atmel,at91rm9200-aic"; 99*4882a593Smuzhiyun interrupt-controller; 100*4882a593Smuzhiyun reg = <0xfffff000 0x200>; 101*4882a593Smuzhiyun atmel,external-irqs = <31>; 102*4882a593Smuzhiyun }; 103*4882a593Smuzhiyun 104*4882a593Smuzhiyun ramc0: ramc@ffffe400 { 105*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-ddramc"; 106*4882a593Smuzhiyun reg = <0xffffe400 0x200>; 107*4882a593Smuzhiyun clocks = <&ddrck>; 108*4882a593Smuzhiyun clock-names = "ddrck"; 109*4882a593Smuzhiyun }; 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun ramc1: ramc@ffffe600 { 112*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-ddramc"; 113*4882a593Smuzhiyun reg = <0xffffe600 0x200>; 114*4882a593Smuzhiyun clocks = <&ddrck>; 115*4882a593Smuzhiyun clock-names = "ddrck"; 116*4882a593Smuzhiyun }; 117*4882a593Smuzhiyun 118*4882a593Smuzhiyun pmc: pmc@fffffc00 { 119*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-pmc", "syscon"; 120*4882a593Smuzhiyun reg = <0xfffffc00 0x100>; 121*4882a593Smuzhiyun interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; 122*4882a593Smuzhiyun interrupt-controller; 123*4882a593Smuzhiyun #address-cells = <1>; 124*4882a593Smuzhiyun #size-cells = <0>; 125*4882a593Smuzhiyun #interrupt-cells = <1>; 126*4882a593Smuzhiyun u-boot,dm-pre-reloc; 127*4882a593Smuzhiyun 128*4882a593Smuzhiyun main_osc: main_osc { 129*4882a593Smuzhiyun compatible = "atmel,at91rm9200-clk-main-osc"; 130*4882a593Smuzhiyun #clock-cells = <0>; 131*4882a593Smuzhiyun interrupts-extended = <&pmc AT91_PMC_MOSCS>; 132*4882a593Smuzhiyun clocks = <&main_xtal>; 133*4882a593Smuzhiyun }; 134*4882a593Smuzhiyun 135*4882a593Smuzhiyun main: mainck { 136*4882a593Smuzhiyun compatible = "atmel,at91rm9200-clk-main"; 137*4882a593Smuzhiyun #clock-cells = <0>; 138*4882a593Smuzhiyun clocks = <&main_osc>; 139*4882a593Smuzhiyun }; 140*4882a593Smuzhiyun 141*4882a593Smuzhiyun plla: pllack@0 { 142*4882a593Smuzhiyun compatible = "atmel,at91rm9200-clk-pll"; 143*4882a593Smuzhiyun #clock-cells = <0>; 144*4882a593Smuzhiyun interrupts-extended = <&pmc AT91_PMC_LOCKA>; 145*4882a593Smuzhiyun clocks = <&main>; 146*4882a593Smuzhiyun reg = <0>; 147*4882a593Smuzhiyun atmel,clk-input-range = <2000000 32000000>; 148*4882a593Smuzhiyun #atmel,pll-clk-output-range-cells = <4>; 149*4882a593Smuzhiyun atmel,pll-clk-output-ranges = <745000000 800000000 0 0 150*4882a593Smuzhiyun 695000000 750000000 1 0 151*4882a593Smuzhiyun 645000000 700000000 2 0 152*4882a593Smuzhiyun 595000000 650000000 3 0 153*4882a593Smuzhiyun 545000000 600000000 0 1 154*4882a593Smuzhiyun 495000000 555000000 1 1 155*4882a593Smuzhiyun 445000000 500000000 2 1 156*4882a593Smuzhiyun 400000000 450000000 3 1>; 157*4882a593Smuzhiyun }; 158*4882a593Smuzhiyun 159*4882a593Smuzhiyun plladiv: plladivck { 160*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-plldiv"; 161*4882a593Smuzhiyun #clock-cells = <0>; 162*4882a593Smuzhiyun clocks = <&plla>; 163*4882a593Smuzhiyun }; 164*4882a593Smuzhiyun 165*4882a593Smuzhiyun utmi: utmick { 166*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-utmi"; 167*4882a593Smuzhiyun #clock-cells = <0>; 168*4882a593Smuzhiyun interrupts-extended = <&pmc AT91_PMC_LOCKU>; 169*4882a593Smuzhiyun clocks = <&main>; 170*4882a593Smuzhiyun }; 171*4882a593Smuzhiyun 172*4882a593Smuzhiyun mck: masterck { 173*4882a593Smuzhiyun compatible = "atmel,at91rm9200-clk-master"; 174*4882a593Smuzhiyun #clock-cells = <0>; 175*4882a593Smuzhiyun interrupts-extended = <&pmc AT91_PMC_MCKRDY>; 176*4882a593Smuzhiyun clocks = <&clk32k>, <&main>, <&plladiv>, <&utmi>; 177*4882a593Smuzhiyun atmel,clk-output-range = <0 133333333>; 178*4882a593Smuzhiyun atmel,clk-divisors = <1 2 4 3>; 179*4882a593Smuzhiyun u-boot,dm-pre-reloc; 180*4882a593Smuzhiyun }; 181*4882a593Smuzhiyun 182*4882a593Smuzhiyun usb: usbck { 183*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-usb"; 184*4882a593Smuzhiyun #clock-cells = <0>; 185*4882a593Smuzhiyun clocks = <&plladiv>, <&utmi>; 186*4882a593Smuzhiyun }; 187*4882a593Smuzhiyun 188*4882a593Smuzhiyun prog: progck { 189*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-clk-programmable"; 190*4882a593Smuzhiyun #address-cells = <1>; 191*4882a593Smuzhiyun #size-cells = <0>; 192*4882a593Smuzhiyun interrupt-parent = <&pmc>; 193*4882a593Smuzhiyun clocks = <&clk32k>, <&main>, <&plladiv>, <&utmi>, <&mck>; 194*4882a593Smuzhiyun 195*4882a593Smuzhiyun prog0: prog@0 { 196*4882a593Smuzhiyun #clock-cells = <0>; 197*4882a593Smuzhiyun reg = <0>; 198*4882a593Smuzhiyun interrupts = <AT91_PMC_PCKRDY(0)>; 199*4882a593Smuzhiyun }; 200*4882a593Smuzhiyun 201*4882a593Smuzhiyun prog1: prog@1 { 202*4882a593Smuzhiyun #clock-cells = <0>; 203*4882a593Smuzhiyun reg = <1>; 204*4882a593Smuzhiyun interrupts = <AT91_PMC_PCKRDY(1)>; 205*4882a593Smuzhiyun }; 206*4882a593Smuzhiyun }; 207*4882a593Smuzhiyun 208*4882a593Smuzhiyun systemck { 209*4882a593Smuzhiyun compatible = "atmel,at91rm9200-clk-system"; 210*4882a593Smuzhiyun #address-cells = <1>; 211*4882a593Smuzhiyun #size-cells = <0>; 212*4882a593Smuzhiyun 213*4882a593Smuzhiyun ddrck: ddrck@2 { 214*4882a593Smuzhiyun #clock-cells = <0>; 215*4882a593Smuzhiyun reg = <2>; 216*4882a593Smuzhiyun clocks = <&mck>; 217*4882a593Smuzhiyun }; 218*4882a593Smuzhiyun 219*4882a593Smuzhiyun uhpck: uhpck@6 { 220*4882a593Smuzhiyun #clock-cells = <0>; 221*4882a593Smuzhiyun reg = <6>; 222*4882a593Smuzhiyun clocks = <&usb>; 223*4882a593Smuzhiyun }; 224*4882a593Smuzhiyun 225*4882a593Smuzhiyun pck0: pck0@8 { 226*4882a593Smuzhiyun #clock-cells = <0>; 227*4882a593Smuzhiyun reg = <8>; 228*4882a593Smuzhiyun clocks = <&prog0>; 229*4882a593Smuzhiyun }; 230*4882a593Smuzhiyun 231*4882a593Smuzhiyun pck1: pck1@9 { 232*4882a593Smuzhiyun #clock-cells = <0>; 233*4882a593Smuzhiyun reg = <9>; 234*4882a593Smuzhiyun clocks = <&prog1>; 235*4882a593Smuzhiyun }; 236*4882a593Smuzhiyun }; 237*4882a593Smuzhiyun 238*4882a593Smuzhiyun periphck { 239*4882a593Smuzhiyun compatible = "atmel,at91rm9200-clk-peripheral"; 240*4882a593Smuzhiyun #address-cells = <1>; 241*4882a593Smuzhiyun #size-cells = <0>; 242*4882a593Smuzhiyun clocks = <&mck>; 243*4882a593Smuzhiyun 244*4882a593Smuzhiyun pioA_clk: pioA_clk@2 { 245*4882a593Smuzhiyun #clock-cells = <0>; 246*4882a593Smuzhiyun reg = <2>; 247*4882a593Smuzhiyun }; 248*4882a593Smuzhiyun 249*4882a593Smuzhiyun pioB_clk: pioB_clk@3 { 250*4882a593Smuzhiyun #clock-cells = <0>; 251*4882a593Smuzhiyun reg = <3>; 252*4882a593Smuzhiyun }; 253*4882a593Smuzhiyun 254*4882a593Smuzhiyun pioC_clk: pioC_clk@4 { 255*4882a593Smuzhiyun #clock-cells = <0>; 256*4882a593Smuzhiyun reg = <4>; 257*4882a593Smuzhiyun }; 258*4882a593Smuzhiyun 259*4882a593Smuzhiyun pioDE_clk: pioDE_clk@5 { 260*4882a593Smuzhiyun #clock-cells = <0>; 261*4882a593Smuzhiyun reg = <5>; 262*4882a593Smuzhiyun }; 263*4882a593Smuzhiyun 264*4882a593Smuzhiyun trng_clk: trng_clk@6 { 265*4882a593Smuzhiyun #clock-cells = <0>; 266*4882a593Smuzhiyun reg = <6>; 267*4882a593Smuzhiyun }; 268*4882a593Smuzhiyun 269*4882a593Smuzhiyun usart0_clk: usart0_clk@7 { 270*4882a593Smuzhiyun #clock-cells = <0>; 271*4882a593Smuzhiyun reg = <7>; 272*4882a593Smuzhiyun }; 273*4882a593Smuzhiyun 274*4882a593Smuzhiyun usart1_clk: usart1_clk@8 { 275*4882a593Smuzhiyun #clock-cells = <0>; 276*4882a593Smuzhiyun reg = <8>; 277*4882a593Smuzhiyun }; 278*4882a593Smuzhiyun 279*4882a593Smuzhiyun usart2_clk: usart2_clk@9 { 280*4882a593Smuzhiyun #clock-cells = <0>; 281*4882a593Smuzhiyun reg = <9>; 282*4882a593Smuzhiyun }; 283*4882a593Smuzhiyun 284*4882a593Smuzhiyun usart3_clk: usart3_clk@10 { 285*4882a593Smuzhiyun #clock-cells = <0>; 286*4882a593Smuzhiyun reg = <10>; 287*4882a593Smuzhiyun }; 288*4882a593Smuzhiyun 289*4882a593Smuzhiyun mci0_clk: mci0_clk@11 { 290*4882a593Smuzhiyun #clock-cells = <0>; 291*4882a593Smuzhiyun reg = <11>; 292*4882a593Smuzhiyun }; 293*4882a593Smuzhiyun 294*4882a593Smuzhiyun twi0_clk: twi0_clk@12 { 295*4882a593Smuzhiyun #clock-cells = <0>; 296*4882a593Smuzhiyun reg = <12>; 297*4882a593Smuzhiyun }; 298*4882a593Smuzhiyun 299*4882a593Smuzhiyun twi1_clk: twi1_clk@13 { 300*4882a593Smuzhiyun #clock-cells = <0>; 301*4882a593Smuzhiyun reg = <13>; 302*4882a593Smuzhiyun }; 303*4882a593Smuzhiyun 304*4882a593Smuzhiyun spi0_clk: spi0_clk@14 { 305*4882a593Smuzhiyun #clock-cells = <0>; 306*4882a593Smuzhiyun reg = <14>; 307*4882a593Smuzhiyun }; 308*4882a593Smuzhiyun 309*4882a593Smuzhiyun spi1_clk: spi1_clk@15 { 310*4882a593Smuzhiyun #clock-cells = <0>; 311*4882a593Smuzhiyun reg = <15>; 312*4882a593Smuzhiyun }; 313*4882a593Smuzhiyun 314*4882a593Smuzhiyun ssc0_clk: ssc0_clk@16 { 315*4882a593Smuzhiyun #clock-cells = <0>; 316*4882a593Smuzhiyun reg = <16>; 317*4882a593Smuzhiyun }; 318*4882a593Smuzhiyun 319*4882a593Smuzhiyun ssc1_clk: ssc1_clk@17 { 320*4882a593Smuzhiyun #clock-cells = <0>; 321*4882a593Smuzhiyun reg = <17>; 322*4882a593Smuzhiyun }; 323*4882a593Smuzhiyun 324*4882a593Smuzhiyun tcb0_clk: tcb0_clk@18 { 325*4882a593Smuzhiyun #clock-cells = <0>; 326*4882a593Smuzhiyun reg = <18>; 327*4882a593Smuzhiyun }; 328*4882a593Smuzhiyun 329*4882a593Smuzhiyun pwm_clk: pwm_clk@19 { 330*4882a593Smuzhiyun #clock-cells = <0>; 331*4882a593Smuzhiyun reg = <19>; 332*4882a593Smuzhiyun }; 333*4882a593Smuzhiyun 334*4882a593Smuzhiyun adc_clk: adc_clk@20 { 335*4882a593Smuzhiyun #clock-cells = <0>; 336*4882a593Smuzhiyun reg = <20>; 337*4882a593Smuzhiyun }; 338*4882a593Smuzhiyun 339*4882a593Smuzhiyun dma0_clk: dma0_clk@21 { 340*4882a593Smuzhiyun #clock-cells = <0>; 341*4882a593Smuzhiyun reg = <21>; 342*4882a593Smuzhiyun }; 343*4882a593Smuzhiyun 344*4882a593Smuzhiyun uhphs_clk: uhphs_clk@22 { 345*4882a593Smuzhiyun #clock-cells = <0>; 346*4882a593Smuzhiyun reg = <22>; 347*4882a593Smuzhiyun }; 348*4882a593Smuzhiyun 349*4882a593Smuzhiyun lcd_clk: lcd_clk@23 { 350*4882a593Smuzhiyun #clock-cells = <0>; 351*4882a593Smuzhiyun reg = <23>; 352*4882a593Smuzhiyun }; 353*4882a593Smuzhiyun 354*4882a593Smuzhiyun ac97_clk: ac97_clk@24 { 355*4882a593Smuzhiyun #clock-cells = <0>; 356*4882a593Smuzhiyun reg = <24>; 357*4882a593Smuzhiyun }; 358*4882a593Smuzhiyun 359*4882a593Smuzhiyun macb0_clk: macb0_clk@25 { 360*4882a593Smuzhiyun #clock-cells = <0>; 361*4882a593Smuzhiyun reg = <25>; 362*4882a593Smuzhiyun }; 363*4882a593Smuzhiyun 364*4882a593Smuzhiyun isi_clk: isi_clk@26 { 365*4882a593Smuzhiyun #clock-cells = <0>; 366*4882a593Smuzhiyun reg = <26>; 367*4882a593Smuzhiyun }; 368*4882a593Smuzhiyun 369*4882a593Smuzhiyun udphs_clk: udphs_clk@27 { 370*4882a593Smuzhiyun #clock-cells = <0>; 371*4882a593Smuzhiyun reg = <27>; 372*4882a593Smuzhiyun }; 373*4882a593Smuzhiyun 374*4882a593Smuzhiyun aestdessha_clk: aestdessha_clk@28 { 375*4882a593Smuzhiyun #clock-cells = <0>; 376*4882a593Smuzhiyun reg = <28>; 377*4882a593Smuzhiyun }; 378*4882a593Smuzhiyun 379*4882a593Smuzhiyun mci1_clk: mci1_clk@29 { 380*4882a593Smuzhiyun #clock-cells = <0>; 381*4882a593Smuzhiyun reg = <29>; 382*4882a593Smuzhiyun }; 383*4882a593Smuzhiyun 384*4882a593Smuzhiyun vdec_clk: vdec_clk@30 { 385*4882a593Smuzhiyun #clock-cells = <0>; 386*4882a593Smuzhiyun reg = <30>; 387*4882a593Smuzhiyun }; 388*4882a593Smuzhiyun }; 389*4882a593Smuzhiyun }; 390*4882a593Smuzhiyun 391*4882a593Smuzhiyun rstc@fffffd00 { 392*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-rstc"; 393*4882a593Smuzhiyun reg = <0xfffffd00 0x10>; 394*4882a593Smuzhiyun clocks = <&clk32k>; 395*4882a593Smuzhiyun }; 396*4882a593Smuzhiyun 397*4882a593Smuzhiyun pit: timer@fffffd30 { 398*4882a593Smuzhiyun compatible = "atmel,at91sam9260-pit"; 399*4882a593Smuzhiyun reg = <0xfffffd30 0xf>; 400*4882a593Smuzhiyun interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; 401*4882a593Smuzhiyun clocks = <&mck>; 402*4882a593Smuzhiyun }; 403*4882a593Smuzhiyun 404*4882a593Smuzhiyun 405*4882a593Smuzhiyun shdwc@fffffd10 { 406*4882a593Smuzhiyun compatible = "atmel,at91sam9rl-shdwc"; 407*4882a593Smuzhiyun reg = <0xfffffd10 0x10>; 408*4882a593Smuzhiyun clocks = <&clk32k>; 409*4882a593Smuzhiyun }; 410*4882a593Smuzhiyun 411*4882a593Smuzhiyun tcb0: timer@fff7c000 { 412*4882a593Smuzhiyun compatible = "atmel,at91rm9200-tcb"; 413*4882a593Smuzhiyun reg = <0xfff7c000 0x100>; 414*4882a593Smuzhiyun interrupts = <18 IRQ_TYPE_LEVEL_HIGH 0>; 415*4882a593Smuzhiyun clocks = <&tcb0_clk>, <&tcb0_clk>, <&tcb0_clk>, <&clk32k>; 416*4882a593Smuzhiyun clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk"; 417*4882a593Smuzhiyun }; 418*4882a593Smuzhiyun 419*4882a593Smuzhiyun tcb1: timer@fffd4000 { 420*4882a593Smuzhiyun compatible = "atmel,at91rm9200-tcb"; 421*4882a593Smuzhiyun reg = <0xfffd4000 0x100>; 422*4882a593Smuzhiyun interrupts = <18 IRQ_TYPE_LEVEL_HIGH 0>; 423*4882a593Smuzhiyun clocks = <&tcb0_clk>, <&tcb0_clk>, <&tcb0_clk>, <&clk32k>; 424*4882a593Smuzhiyun clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk"; 425*4882a593Smuzhiyun }; 426*4882a593Smuzhiyun 427*4882a593Smuzhiyun dma: dma-controller@ffffec00 { 428*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-dma"; 429*4882a593Smuzhiyun reg = <0xffffec00 0x200>; 430*4882a593Smuzhiyun interrupts = <21 IRQ_TYPE_LEVEL_HIGH 0>; 431*4882a593Smuzhiyun #dma-cells = <2>; 432*4882a593Smuzhiyun clocks = <&dma0_clk>; 433*4882a593Smuzhiyun clock-names = "dma_clk"; 434*4882a593Smuzhiyun }; 435*4882a593Smuzhiyun 436*4882a593Smuzhiyun pinctrl@fffff200 { 437*4882a593Smuzhiyun #address-cells = <1>; 438*4882a593Smuzhiyun #size-cells = <1>; 439*4882a593Smuzhiyun compatible = "atmel,at91rm9200-pinctrl", "simple-bus"; 440*4882a593Smuzhiyun ranges = <0xfffff200 0xfffff200 0xa00>; 441*4882a593Smuzhiyun reg = <0xfffff200 0x200 442*4882a593Smuzhiyun 0xfffff400 0x200 443*4882a593Smuzhiyun 0xfffff600 0x200 444*4882a593Smuzhiyun 0xfffff800 0x200 445*4882a593Smuzhiyun 0xfffffa00 0x200 446*4882a593Smuzhiyun >; 447*4882a593Smuzhiyun u-boot,dm-pre-reloc; 448*4882a593Smuzhiyun 449*4882a593Smuzhiyun atmel,mux-mask = < 450*4882a593Smuzhiyun /* A B */ 451*4882a593Smuzhiyun 0xffffffff 0xffc003ff /* pioA */ 452*4882a593Smuzhiyun 0xffffffff 0x800f8f00 /* pioB */ 453*4882a593Smuzhiyun 0xffffffff 0x00000e00 /* pioC */ 454*4882a593Smuzhiyun 0xffffffff 0xff0c1381 /* pioD */ 455*4882a593Smuzhiyun 0xffffffff 0x81ffff81 /* pioE */ 456*4882a593Smuzhiyun >; 457*4882a593Smuzhiyun 458*4882a593Smuzhiyun /* shared pinctrl settings */ 459*4882a593Smuzhiyun adc0 { 460*4882a593Smuzhiyun pinctrl_adc0_adtrg: adc0_adtrg { 461*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 28 AT91_PERIPH_A AT91_PINCTRL_NONE>; 462*4882a593Smuzhiyun }; 463*4882a593Smuzhiyun pinctrl_adc0_ad0: adc0_ad0 { 464*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 20 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; 465*4882a593Smuzhiyun }; 466*4882a593Smuzhiyun pinctrl_adc0_ad1: adc0_ad1 { 467*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 21 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; 468*4882a593Smuzhiyun }; 469*4882a593Smuzhiyun pinctrl_adc0_ad2: adc0_ad2 { 470*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 22 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; 471*4882a593Smuzhiyun }; 472*4882a593Smuzhiyun pinctrl_adc0_ad3: adc0_ad3 { 473*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 23 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; 474*4882a593Smuzhiyun }; 475*4882a593Smuzhiyun pinctrl_adc0_ad4: adc0_ad4 { 476*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 24 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; 477*4882a593Smuzhiyun }; 478*4882a593Smuzhiyun pinctrl_adc0_ad5: adc0_ad5 { 479*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 25 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; 480*4882a593Smuzhiyun }; 481*4882a593Smuzhiyun pinctrl_adc0_ad6: adc0_ad6 { 482*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 26 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; 483*4882a593Smuzhiyun }; 484*4882a593Smuzhiyun pinctrl_adc0_ad7: adc0_ad7 { 485*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 27 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; 486*4882a593Smuzhiyun }; 487*4882a593Smuzhiyun }; 488*4882a593Smuzhiyun 489*4882a593Smuzhiyun dbgu { 490*4882a593Smuzhiyun u-boot,dm-pre-reloc; 491*4882a593Smuzhiyun pinctrl_dbgu: dbgu-0 { 492*4882a593Smuzhiyun atmel,pins = 493*4882a593Smuzhiyun <AT91_PIOB 12 AT91_PERIPH_A AT91_PINCTRL_PULL_UP 494*4882a593Smuzhiyun AT91_PIOB 13 AT91_PERIPH_A AT91_PINCTRL_NONE>; 495*4882a593Smuzhiyun }; 496*4882a593Smuzhiyun }; 497*4882a593Smuzhiyun 498*4882a593Smuzhiyun i2c0 { 499*4882a593Smuzhiyun pinctrl_i2c0: i2c0-0 { 500*4882a593Smuzhiyun atmel,pins = 501*4882a593Smuzhiyun <AT91_PIOA 21 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA21 periph A TWCK0 */ 502*4882a593Smuzhiyun AT91_PIOA 20 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA20 periph A TWD0 */ 503*4882a593Smuzhiyun }; 504*4882a593Smuzhiyun }; 505*4882a593Smuzhiyun 506*4882a593Smuzhiyun i2c1 { 507*4882a593Smuzhiyun pinctrl_i2c1: i2c1-0 { 508*4882a593Smuzhiyun atmel,pins = 509*4882a593Smuzhiyun <AT91_PIOB 11 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB11 periph A TWCK1 */ 510*4882a593Smuzhiyun AT91_PIOB 10 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB10 periph A TWD1 */ 511*4882a593Smuzhiyun }; 512*4882a593Smuzhiyun }; 513*4882a593Smuzhiyun 514*4882a593Smuzhiyun isi { 515*4882a593Smuzhiyun pinctrl_isi_data_0_7: isi-0-data-0-7 { 516*4882a593Smuzhiyun atmel,pins = 517*4882a593Smuzhiyun <AT91_PIOB 20 AT91_PERIPH_A AT91_PINCTRL_NONE /* D0 */ 518*4882a593Smuzhiyun AT91_PIOB 21 AT91_PERIPH_A AT91_PINCTRL_NONE /* D1 */ 519*4882a593Smuzhiyun AT91_PIOB 22 AT91_PERIPH_A AT91_PINCTRL_NONE /* D2 */ 520*4882a593Smuzhiyun AT91_PIOB 23 AT91_PERIPH_A AT91_PINCTRL_NONE /* D3 */ 521*4882a593Smuzhiyun AT91_PIOB 24 AT91_PERIPH_A AT91_PINCTRL_NONE /* D4 */ 522*4882a593Smuzhiyun AT91_PIOB 25 AT91_PERIPH_A AT91_PINCTRL_NONE /* D5 */ 523*4882a593Smuzhiyun AT91_PIOB 26 AT91_PERIPH_A AT91_PINCTRL_NONE /* D6 */ 524*4882a593Smuzhiyun AT91_PIOB 27 AT91_PERIPH_A AT91_PINCTRL_NONE /* D7 */ 525*4882a593Smuzhiyun AT91_PIOB 28 AT91_PERIPH_A AT91_PINCTRL_NONE /* PCK */ 526*4882a593Smuzhiyun AT91_PIOB 29 AT91_PERIPH_A AT91_PINCTRL_NONE /* VSYNC */ 527*4882a593Smuzhiyun AT91_PIOB 30 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* HSYNC */ 528*4882a593Smuzhiyun }; 529*4882a593Smuzhiyun 530*4882a593Smuzhiyun pinctrl_isi_data_8_9: isi-0-data-8-9 { 531*4882a593Smuzhiyun atmel,pins = 532*4882a593Smuzhiyun <AT91_PIOB 8 AT91_PERIPH_B AT91_PINCTRL_NONE /* D8 */ 533*4882a593Smuzhiyun AT91_PIOB 9 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* D9 */ 534*4882a593Smuzhiyun }; 535*4882a593Smuzhiyun 536*4882a593Smuzhiyun pinctrl_isi_data_10_11: isi-0-data-10-11 { 537*4882a593Smuzhiyun atmel,pins = 538*4882a593Smuzhiyun <AT91_PIOB 10 AT91_PERIPH_B AT91_PINCTRL_NONE /* D10 */ 539*4882a593Smuzhiyun AT91_PIOB 11 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* D11 */ 540*4882a593Smuzhiyun }; 541*4882a593Smuzhiyun }; 542*4882a593Smuzhiyun 543*4882a593Smuzhiyun usart0 { 544*4882a593Smuzhiyun pinctrl_usart0: usart0-0 { 545*4882a593Smuzhiyun atmel,pins = 546*4882a593Smuzhiyun <AT91_PIOB 19 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PB19 periph A with pullup */ 547*4882a593Smuzhiyun AT91_PIOB 18 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB18 periph A */ 548*4882a593Smuzhiyun }; 549*4882a593Smuzhiyun 550*4882a593Smuzhiyun pinctrl_usart0_rts: usart0_rts-0 { 551*4882a593Smuzhiyun atmel,pins = 552*4882a593Smuzhiyun <AT91_PIOB 17 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PB17 periph B */ 553*4882a593Smuzhiyun }; 554*4882a593Smuzhiyun 555*4882a593Smuzhiyun pinctrl_usart0_cts: usart0_cts-0 { 556*4882a593Smuzhiyun atmel,pins = 557*4882a593Smuzhiyun <AT91_PIOB 15 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PB15 periph B */ 558*4882a593Smuzhiyun }; 559*4882a593Smuzhiyun }; 560*4882a593Smuzhiyun 561*4882a593Smuzhiyun uart1 { 562*4882a593Smuzhiyun pinctrl_usart1: usart1-0 { 563*4882a593Smuzhiyun atmel,pins = 564*4882a593Smuzhiyun <AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PB4 periph A with pullup */ 565*4882a593Smuzhiyun AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB5 periph A */ 566*4882a593Smuzhiyun }; 567*4882a593Smuzhiyun 568*4882a593Smuzhiyun pinctrl_usart1_rts: usart1_rts-0 { 569*4882a593Smuzhiyun atmel,pins = 570*4882a593Smuzhiyun <AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD16 periph A */ 571*4882a593Smuzhiyun }; 572*4882a593Smuzhiyun 573*4882a593Smuzhiyun pinctrl_usart1_cts: usart1_cts-0 { 574*4882a593Smuzhiyun atmel,pins = 575*4882a593Smuzhiyun <AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD17 periph A */ 576*4882a593Smuzhiyun }; 577*4882a593Smuzhiyun }; 578*4882a593Smuzhiyun 579*4882a593Smuzhiyun usart2 { 580*4882a593Smuzhiyun pinctrl_usart2: usart2-0 { 581*4882a593Smuzhiyun atmel,pins = 582*4882a593Smuzhiyun <AT91_PIOB 6 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PB6 periph A with pullup */ 583*4882a593Smuzhiyun AT91_PIOB 7 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB7 periph A */ 584*4882a593Smuzhiyun }; 585*4882a593Smuzhiyun 586*4882a593Smuzhiyun pinctrl_usart2_rts: usart2_rts-0 { 587*4882a593Smuzhiyun atmel,pins = 588*4882a593Smuzhiyun <AT91_PIOC 9 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PC9 periph B */ 589*4882a593Smuzhiyun }; 590*4882a593Smuzhiyun 591*4882a593Smuzhiyun pinctrl_usart2_cts: usart2_cts-0 { 592*4882a593Smuzhiyun atmel,pins = 593*4882a593Smuzhiyun <AT91_PIOC 11 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PC11 periph B */ 594*4882a593Smuzhiyun }; 595*4882a593Smuzhiyun }; 596*4882a593Smuzhiyun 597*4882a593Smuzhiyun usart3 { 598*4882a593Smuzhiyun pinctrl_usart3: usart3-0 { 599*4882a593Smuzhiyun atmel,pins = 600*4882a593Smuzhiyun <AT91_PIOB 8 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PB9 periph A with pullup */ 601*4882a593Smuzhiyun AT91_PIOB 9 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB8 periph A */ 602*4882a593Smuzhiyun }; 603*4882a593Smuzhiyun 604*4882a593Smuzhiyun pinctrl_usart3_rts: usart3_rts-0 { 605*4882a593Smuzhiyun atmel,pins = 606*4882a593Smuzhiyun <AT91_PIOA 23 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PA23 periph B */ 607*4882a593Smuzhiyun }; 608*4882a593Smuzhiyun 609*4882a593Smuzhiyun pinctrl_usart3_cts: usart3_cts-0 { 610*4882a593Smuzhiyun atmel,pins = 611*4882a593Smuzhiyun <AT91_PIOA 24 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PA24 periph B */ 612*4882a593Smuzhiyun }; 613*4882a593Smuzhiyun }; 614*4882a593Smuzhiyun 615*4882a593Smuzhiyun nand { 616*4882a593Smuzhiyun pinctrl_nand: nand-0 { 617*4882a593Smuzhiyun atmel,pins = 618*4882a593Smuzhiyun <AT91_PIOC 8 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PC8 gpio RDY pin pull_up*/ 619*4882a593Smuzhiyun AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; /* PC14 gpio enable pin pull_up */ 620*4882a593Smuzhiyun }; 621*4882a593Smuzhiyun }; 622*4882a593Smuzhiyun 623*4882a593Smuzhiyun macb { 624*4882a593Smuzhiyun pinctrl_macb_rmii: macb_rmii-0 { 625*4882a593Smuzhiyun atmel,pins = 626*4882a593Smuzhiyun <AT91_PIOA 10 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA10 periph A */ 627*4882a593Smuzhiyun AT91_PIOA 11 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA11 periph A */ 628*4882a593Smuzhiyun AT91_PIOA 12 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA12 periph A */ 629*4882a593Smuzhiyun AT91_PIOA 13 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA13 periph A */ 630*4882a593Smuzhiyun AT91_PIOA 14 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA14 periph A */ 631*4882a593Smuzhiyun AT91_PIOA 15 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA15 periph A */ 632*4882a593Smuzhiyun AT91_PIOA 16 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA16 periph A */ 633*4882a593Smuzhiyun AT91_PIOA 17 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA17 periph A */ 634*4882a593Smuzhiyun AT91_PIOA 18 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA18 periph A */ 635*4882a593Smuzhiyun AT91_PIOA 19 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA19 periph A */ 636*4882a593Smuzhiyun }; 637*4882a593Smuzhiyun 638*4882a593Smuzhiyun pinctrl_macb_rmii_mii: macb_rmii_mii-0 { 639*4882a593Smuzhiyun atmel,pins = 640*4882a593Smuzhiyun <AT91_PIOA 6 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA6 periph B */ 641*4882a593Smuzhiyun AT91_PIOA 7 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA7 periph B */ 642*4882a593Smuzhiyun AT91_PIOA 8 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA8 periph B */ 643*4882a593Smuzhiyun AT91_PIOA 9 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA9 periph B */ 644*4882a593Smuzhiyun AT91_PIOA 27 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA27 periph B */ 645*4882a593Smuzhiyun AT91_PIOA 28 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA28 periph B */ 646*4882a593Smuzhiyun AT91_PIOA 29 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA29 periph B */ 647*4882a593Smuzhiyun AT91_PIOA 30 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PA30 periph B */ 648*4882a593Smuzhiyun }; 649*4882a593Smuzhiyun }; 650*4882a593Smuzhiyun 651*4882a593Smuzhiyun mmc0 { 652*4882a593Smuzhiyun pinctrl_mmc0_slot0_clk_cmd_dat0: mmc0_slot0_clk_cmd_dat0-0 { 653*4882a593Smuzhiyun atmel,pins = 654*4882a593Smuzhiyun <AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA0 periph A */ 655*4882a593Smuzhiyun AT91_PIOA 1 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA1 periph A with pullup */ 656*4882a593Smuzhiyun AT91_PIOA 2 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA2 periph A with pullup */ 657*4882a593Smuzhiyun }; 658*4882a593Smuzhiyun 659*4882a593Smuzhiyun pinctrl_mmc0_slot0_dat1_3: mmc0_slot0_dat1_3-0 { 660*4882a593Smuzhiyun atmel,pins = 661*4882a593Smuzhiyun <AT91_PIOA 3 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA3 periph A with pullup */ 662*4882a593Smuzhiyun AT91_PIOA 4 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA4 periph A with pullup */ 663*4882a593Smuzhiyun AT91_PIOA 5 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA5 periph A with pullup */ 664*4882a593Smuzhiyun }; 665*4882a593Smuzhiyun 666*4882a593Smuzhiyun pinctrl_mmc0_slot0_dat4_7: mmc0_slot0_dat4_7-0 { 667*4882a593Smuzhiyun atmel,pins = 668*4882a593Smuzhiyun <AT91_PIOA 6 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA6 periph A with pullup */ 669*4882a593Smuzhiyun AT91_PIOA 7 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA7 periph A with pullup */ 670*4882a593Smuzhiyun AT91_PIOA 8 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA8 periph A with pullup */ 671*4882a593Smuzhiyun AT91_PIOA 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA9 periph A with pullup */ 672*4882a593Smuzhiyun }; 673*4882a593Smuzhiyun }; 674*4882a593Smuzhiyun 675*4882a593Smuzhiyun mmc1 { 676*4882a593Smuzhiyun pinctrl_mmc1_slot0_clk_cmd_dat0: mmc1_slot0_clk_cmd_dat0-0 { 677*4882a593Smuzhiyun atmel,pins = 678*4882a593Smuzhiyun <AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA31 periph A */ 679*4882a593Smuzhiyun AT91_PIOA 22 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA22 periph A with pullup */ 680*4882a593Smuzhiyun AT91_PIOA 23 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA23 periph A with pullup */ 681*4882a593Smuzhiyun }; 682*4882a593Smuzhiyun 683*4882a593Smuzhiyun pinctrl_mmc1_slot0_dat1_3: mmc1_slot0_dat1_3-0 { 684*4882a593Smuzhiyun atmel,pins = 685*4882a593Smuzhiyun <AT91_PIOA 24 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA24 periph A with pullup */ 686*4882a593Smuzhiyun AT91_PIOA 25 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA25 periph A with pullup */ 687*4882a593Smuzhiyun AT91_PIOA 26 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA26 periph A with pullup */ 688*4882a593Smuzhiyun }; 689*4882a593Smuzhiyun 690*4882a593Smuzhiyun pinctrl_mmc1_slot0_dat4_7: mmc1_slot0_dat4_7-0 { 691*4882a593Smuzhiyun atmel,pins = 692*4882a593Smuzhiyun <AT91_PIOA 27 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA27 periph A with pullup */ 693*4882a593Smuzhiyun AT91_PIOA 28 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA28 periph A with pullup */ 694*4882a593Smuzhiyun AT91_PIOA 29 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA29 periph A with pullup */ 695*4882a593Smuzhiyun AT91_PIOA 20 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA30 periph A with pullup */ 696*4882a593Smuzhiyun }; 697*4882a593Smuzhiyun }; 698*4882a593Smuzhiyun 699*4882a593Smuzhiyun ssc0 { 700*4882a593Smuzhiyun pinctrl_ssc0_tx: ssc0_tx-0 { 701*4882a593Smuzhiyun atmel,pins = 702*4882a593Smuzhiyun <AT91_PIOD 0 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD0 periph A */ 703*4882a593Smuzhiyun AT91_PIOD 1 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD1 periph A */ 704*4882a593Smuzhiyun AT91_PIOD 2 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD2 periph A */ 705*4882a593Smuzhiyun }; 706*4882a593Smuzhiyun 707*4882a593Smuzhiyun pinctrl_ssc0_rx: ssc0_rx-0 { 708*4882a593Smuzhiyun atmel,pins = 709*4882a593Smuzhiyun <AT91_PIOD 3 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD3 periph A */ 710*4882a593Smuzhiyun AT91_PIOD 4 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD4 periph A */ 711*4882a593Smuzhiyun AT91_PIOD 5 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD5 periph A */ 712*4882a593Smuzhiyun }; 713*4882a593Smuzhiyun }; 714*4882a593Smuzhiyun 715*4882a593Smuzhiyun ssc1 { 716*4882a593Smuzhiyun pinctrl_ssc1_tx: ssc1_tx-0 { 717*4882a593Smuzhiyun atmel,pins = 718*4882a593Smuzhiyun <AT91_PIOD 10 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD10 periph A */ 719*4882a593Smuzhiyun AT91_PIOD 11 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD11 periph A */ 720*4882a593Smuzhiyun AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD12 periph A */ 721*4882a593Smuzhiyun }; 722*4882a593Smuzhiyun 723*4882a593Smuzhiyun pinctrl_ssc1_rx: ssc1_rx-0 { 724*4882a593Smuzhiyun atmel,pins = 725*4882a593Smuzhiyun <AT91_PIOD 13 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD13 periph A */ 726*4882a593Smuzhiyun AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD14 periph A */ 727*4882a593Smuzhiyun AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD15 periph A */ 728*4882a593Smuzhiyun }; 729*4882a593Smuzhiyun }; 730*4882a593Smuzhiyun 731*4882a593Smuzhiyun spi0 { 732*4882a593Smuzhiyun pinctrl_spi0: spi0-0 { 733*4882a593Smuzhiyun atmel,pins = 734*4882a593Smuzhiyun <AT91_PIOB 0 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB0 periph A SPI0_MISO pin */ 735*4882a593Smuzhiyun AT91_PIOB 1 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB1 periph A SPI0_MOSI pin */ 736*4882a593Smuzhiyun AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB2 periph A SPI0_SPCK pin */ 737*4882a593Smuzhiyun }; 738*4882a593Smuzhiyun }; 739*4882a593Smuzhiyun 740*4882a593Smuzhiyun spi1 { 741*4882a593Smuzhiyun pinctrl_spi1: spi1-0 { 742*4882a593Smuzhiyun atmel,pins = 743*4882a593Smuzhiyun <AT91_PIOB 14 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB14 periph A SPI1_MISO pin */ 744*4882a593Smuzhiyun AT91_PIOB 15 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB15 periph A SPI1_MOSI pin */ 745*4882a593Smuzhiyun AT91_PIOB 16 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB16 periph A SPI1_SPCK pin */ 746*4882a593Smuzhiyun }; 747*4882a593Smuzhiyun }; 748*4882a593Smuzhiyun 749*4882a593Smuzhiyun tcb0 { 750*4882a593Smuzhiyun pinctrl_tcb0_tclk0: tcb0_tclk0-0 { 751*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 23 AT91_PERIPH_A AT91_PINCTRL_NONE>; 752*4882a593Smuzhiyun }; 753*4882a593Smuzhiyun 754*4882a593Smuzhiyun pinctrl_tcb0_tclk1: tcb0_tclk1-0 { 755*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 29 AT91_PERIPH_A AT91_PINCTRL_NONE>; 756*4882a593Smuzhiyun }; 757*4882a593Smuzhiyun 758*4882a593Smuzhiyun pinctrl_tcb0_tclk2: tcb0_tclk2-0 { 759*4882a593Smuzhiyun atmel,pins = <AT91_PIOC 10 AT91_PERIPH_B AT91_PINCTRL_NONE>; 760*4882a593Smuzhiyun }; 761*4882a593Smuzhiyun 762*4882a593Smuzhiyun pinctrl_tcb0_tioa0: tcb0_tioa0-0 { 763*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 20 AT91_PERIPH_A AT91_PINCTRL_NONE>; 764*4882a593Smuzhiyun }; 765*4882a593Smuzhiyun 766*4882a593Smuzhiyun pinctrl_tcb0_tioa1: tcb0_tioa1-0 { 767*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_NONE>; 768*4882a593Smuzhiyun }; 769*4882a593Smuzhiyun 770*4882a593Smuzhiyun pinctrl_tcb0_tioa2: tcb0_tioa2-0 { 771*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 22 AT91_PERIPH_A AT91_PINCTRL_NONE>; 772*4882a593Smuzhiyun }; 773*4882a593Smuzhiyun 774*4882a593Smuzhiyun pinctrl_tcb0_tiob0: tcb0_tiob0-0 { 775*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 30 AT91_PERIPH_A AT91_PINCTRL_NONE>; 776*4882a593Smuzhiyun }; 777*4882a593Smuzhiyun 778*4882a593Smuzhiyun pinctrl_tcb0_tiob1: tcb0_tiob1-0 { 779*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 31 AT91_PERIPH_A AT91_PINCTRL_NONE>; 780*4882a593Smuzhiyun }; 781*4882a593Smuzhiyun 782*4882a593Smuzhiyun pinctrl_tcb0_tiob2: tcb0_tiob2-0 { 783*4882a593Smuzhiyun atmel,pins = <AT91_PIOA 26 AT91_PERIPH_B AT91_PINCTRL_NONE>; 784*4882a593Smuzhiyun }; 785*4882a593Smuzhiyun }; 786*4882a593Smuzhiyun 787*4882a593Smuzhiyun tcb1 { 788*4882a593Smuzhiyun pinctrl_tcb1_tclk0: tcb1_tclk0-0 { 789*4882a593Smuzhiyun atmel,pins = <AT91_PIOA 0 AT91_PERIPH_B AT91_PINCTRL_NONE>; 790*4882a593Smuzhiyun }; 791*4882a593Smuzhiyun 792*4882a593Smuzhiyun pinctrl_tcb1_tclk1: tcb1_tclk1-0 { 793*4882a593Smuzhiyun atmel,pins = <AT91_PIOA 3 AT91_PERIPH_B AT91_PINCTRL_NONE>; 794*4882a593Smuzhiyun }; 795*4882a593Smuzhiyun 796*4882a593Smuzhiyun pinctrl_tcb1_tclk2: tcb1_tclk2-0 { 797*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 9 AT91_PERIPH_B AT91_PINCTRL_NONE>; 798*4882a593Smuzhiyun }; 799*4882a593Smuzhiyun 800*4882a593Smuzhiyun pinctrl_tcb1_tioa0: tcb1_tioa0-0 { 801*4882a593Smuzhiyun atmel,pins = <AT91_PIOA 1 AT91_PERIPH_B AT91_PINCTRL_NONE>; 802*4882a593Smuzhiyun }; 803*4882a593Smuzhiyun 804*4882a593Smuzhiyun pinctrl_tcb1_tioa1: tcb1_tioa1-0 { 805*4882a593Smuzhiyun atmel,pins = <AT91_PIOA 4 AT91_PERIPH_B AT91_PINCTRL_NONE>; 806*4882a593Smuzhiyun }; 807*4882a593Smuzhiyun 808*4882a593Smuzhiyun pinctrl_tcb1_tioa2: tcb1_tioa2-0 { 809*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 7 AT91_PERIPH_B AT91_PINCTRL_NONE>; 810*4882a593Smuzhiyun }; 811*4882a593Smuzhiyun 812*4882a593Smuzhiyun pinctrl_tcb1_tiob0: tcb1_tiob0-0 { 813*4882a593Smuzhiyun atmel,pins = <AT91_PIOA 2 AT91_PERIPH_B AT91_PINCTRL_NONE>; 814*4882a593Smuzhiyun }; 815*4882a593Smuzhiyun 816*4882a593Smuzhiyun pinctrl_tcb1_tiob1: tcb1_tiob1-0 { 817*4882a593Smuzhiyun atmel,pins = <AT91_PIOA 5 AT91_PERIPH_B AT91_PINCTRL_NONE>; 818*4882a593Smuzhiyun }; 819*4882a593Smuzhiyun 820*4882a593Smuzhiyun pinctrl_tcb1_tiob2: tcb1_tiob2-0 { 821*4882a593Smuzhiyun atmel,pins = <AT91_PIOD 8 AT91_PERIPH_B AT91_PINCTRL_NONE>; 822*4882a593Smuzhiyun }; 823*4882a593Smuzhiyun }; 824*4882a593Smuzhiyun 825*4882a593Smuzhiyun fb { 826*4882a593Smuzhiyun pinctrl_fb: fb-0 { 827*4882a593Smuzhiyun atmel,pins = 828*4882a593Smuzhiyun <AT91_PIOE 0 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE0 periph A */ 829*4882a593Smuzhiyun AT91_PIOE 2 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE2 periph A */ 830*4882a593Smuzhiyun AT91_PIOE 3 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE3 periph A */ 831*4882a593Smuzhiyun AT91_PIOE 4 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE4 periph A */ 832*4882a593Smuzhiyun AT91_PIOE 5 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE5 periph A */ 833*4882a593Smuzhiyun AT91_PIOE 6 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE6 periph A */ 834*4882a593Smuzhiyun AT91_PIOE 7 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE7 periph A */ 835*4882a593Smuzhiyun AT91_PIOE 8 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE8 periph A */ 836*4882a593Smuzhiyun AT91_PIOE 9 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE9 periph A */ 837*4882a593Smuzhiyun AT91_PIOE 10 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE10 periph A */ 838*4882a593Smuzhiyun AT91_PIOE 11 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE11 periph A */ 839*4882a593Smuzhiyun AT91_PIOE 12 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE12 periph A */ 840*4882a593Smuzhiyun AT91_PIOE 13 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE13 periph A */ 841*4882a593Smuzhiyun AT91_PIOE 14 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE14 periph A */ 842*4882a593Smuzhiyun AT91_PIOE 15 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE15 periph A */ 843*4882a593Smuzhiyun AT91_PIOE 16 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE16 periph A */ 844*4882a593Smuzhiyun AT91_PIOE 17 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE17 periph A */ 845*4882a593Smuzhiyun AT91_PIOE 18 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE18 periph A */ 846*4882a593Smuzhiyun AT91_PIOE 19 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE19 periph A */ 847*4882a593Smuzhiyun AT91_PIOE 20 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE20 periph A */ 848*4882a593Smuzhiyun AT91_PIOE 21 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE21 periph A */ 849*4882a593Smuzhiyun AT91_PIOE 22 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE22 periph A */ 850*4882a593Smuzhiyun AT91_PIOE 23 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE23 periph A */ 851*4882a593Smuzhiyun AT91_PIOE 24 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE24 periph A */ 852*4882a593Smuzhiyun AT91_PIOE 25 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE25 periph A */ 853*4882a593Smuzhiyun AT91_PIOE 26 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE26 periph A */ 854*4882a593Smuzhiyun AT91_PIOE 27 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE27 periph A */ 855*4882a593Smuzhiyun AT91_PIOE 28 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE28 periph A */ 856*4882a593Smuzhiyun AT91_PIOE 29 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE29 periph A */ 857*4882a593Smuzhiyun AT91_PIOE 30 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PE30 periph A */ 858*4882a593Smuzhiyun }; 859*4882a593Smuzhiyun }; 860*4882a593Smuzhiyun }; 861*4882a593Smuzhiyun 862*4882a593Smuzhiyun pioA: gpio@fffff200 { 863*4882a593Smuzhiyun compatible = "atmel,at91rm9200-gpio"; 864*4882a593Smuzhiyun reg = <0xfffff200 0x200>; 865*4882a593Smuzhiyun interrupts = <2 IRQ_TYPE_LEVEL_HIGH 1>; 866*4882a593Smuzhiyun #gpio-cells = <2>; 867*4882a593Smuzhiyun gpio-controller; 868*4882a593Smuzhiyun interrupt-controller; 869*4882a593Smuzhiyun #interrupt-cells = <2>; 870*4882a593Smuzhiyun clocks = <&pioA_clk>; 871*4882a593Smuzhiyun }; 872*4882a593Smuzhiyun 873*4882a593Smuzhiyun pioB: gpio@fffff400 { 874*4882a593Smuzhiyun compatible = "atmel,at91rm9200-gpio"; 875*4882a593Smuzhiyun reg = <0xfffff400 0x200>; 876*4882a593Smuzhiyun interrupts = <3 IRQ_TYPE_LEVEL_HIGH 1>; 877*4882a593Smuzhiyun #gpio-cells = <2>; 878*4882a593Smuzhiyun gpio-controller; 879*4882a593Smuzhiyun interrupt-controller; 880*4882a593Smuzhiyun #interrupt-cells = <2>; 881*4882a593Smuzhiyun clocks = <&pioB_clk>; 882*4882a593Smuzhiyun }; 883*4882a593Smuzhiyun 884*4882a593Smuzhiyun pioC: gpio@fffff600 { 885*4882a593Smuzhiyun compatible = "atmel,at91rm9200-gpio"; 886*4882a593Smuzhiyun reg = <0xfffff600 0x200>; 887*4882a593Smuzhiyun interrupts = <4 IRQ_TYPE_LEVEL_HIGH 1>; 888*4882a593Smuzhiyun #gpio-cells = <2>; 889*4882a593Smuzhiyun gpio-controller; 890*4882a593Smuzhiyun interrupt-controller; 891*4882a593Smuzhiyun #interrupt-cells = <2>; 892*4882a593Smuzhiyun clocks = <&pioC_clk>; 893*4882a593Smuzhiyun }; 894*4882a593Smuzhiyun 895*4882a593Smuzhiyun pioD: gpio@fffff800 { 896*4882a593Smuzhiyun compatible = "atmel,at91rm9200-gpio"; 897*4882a593Smuzhiyun reg = <0xfffff800 0x200>; 898*4882a593Smuzhiyun interrupts = <5 IRQ_TYPE_LEVEL_HIGH 1>; 899*4882a593Smuzhiyun #gpio-cells = <2>; 900*4882a593Smuzhiyun gpio-controller; 901*4882a593Smuzhiyun interrupt-controller; 902*4882a593Smuzhiyun #interrupt-cells = <2>; 903*4882a593Smuzhiyun clocks = <&pioDE_clk>; 904*4882a593Smuzhiyun }; 905*4882a593Smuzhiyun 906*4882a593Smuzhiyun pioE: gpio@fffffa00 { 907*4882a593Smuzhiyun compatible = "atmel,at91rm9200-gpio"; 908*4882a593Smuzhiyun reg = <0xfffffa00 0x200>; 909*4882a593Smuzhiyun interrupts = <5 IRQ_TYPE_LEVEL_HIGH 1>; 910*4882a593Smuzhiyun #gpio-cells = <2>; 911*4882a593Smuzhiyun gpio-controller; 912*4882a593Smuzhiyun interrupt-controller; 913*4882a593Smuzhiyun #interrupt-cells = <2>; 914*4882a593Smuzhiyun clocks = <&pioDE_clk>; 915*4882a593Smuzhiyun }; 916*4882a593Smuzhiyun 917*4882a593Smuzhiyun dbgu: serial@ffffee00 { 918*4882a593Smuzhiyun compatible = "atmel,at91sam9260-dbgu", "atmel,at91sam9260-usart"; 919*4882a593Smuzhiyun reg = <0xffffee00 0x200>; 920*4882a593Smuzhiyun interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; 921*4882a593Smuzhiyun pinctrl-names = "default"; 922*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_dbgu>; 923*4882a593Smuzhiyun clocks = <&mck>; 924*4882a593Smuzhiyun clock-names = "usart"; 925*4882a593Smuzhiyun status = "disabled"; 926*4882a593Smuzhiyun }; 927*4882a593Smuzhiyun 928*4882a593Smuzhiyun usart0: serial@fff8c000 { 929*4882a593Smuzhiyun compatible = "atmel,at91sam9260-usart"; 930*4882a593Smuzhiyun reg = <0xfff8c000 0x200>; 931*4882a593Smuzhiyun interrupts = <7 IRQ_TYPE_LEVEL_HIGH 5>; 932*4882a593Smuzhiyun atmel,use-dma-rx; 933*4882a593Smuzhiyun atmel,use-dma-tx; 934*4882a593Smuzhiyun pinctrl-names = "default"; 935*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_usart0>; 936*4882a593Smuzhiyun clocks = <&usart0_clk>; 937*4882a593Smuzhiyun clock-names = "usart"; 938*4882a593Smuzhiyun status = "disabled"; 939*4882a593Smuzhiyun }; 940*4882a593Smuzhiyun 941*4882a593Smuzhiyun usart1: serial@fff90000 { 942*4882a593Smuzhiyun compatible = "atmel,at91sam9260-usart"; 943*4882a593Smuzhiyun reg = <0xfff90000 0x200>; 944*4882a593Smuzhiyun interrupts = <8 IRQ_TYPE_LEVEL_HIGH 5>; 945*4882a593Smuzhiyun atmel,use-dma-rx; 946*4882a593Smuzhiyun atmel,use-dma-tx; 947*4882a593Smuzhiyun pinctrl-names = "default"; 948*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_usart1>; 949*4882a593Smuzhiyun clocks = <&usart1_clk>; 950*4882a593Smuzhiyun clock-names = "usart"; 951*4882a593Smuzhiyun status = "disabled"; 952*4882a593Smuzhiyun }; 953*4882a593Smuzhiyun 954*4882a593Smuzhiyun usart2: serial@fff94000 { 955*4882a593Smuzhiyun compatible = "atmel,at91sam9260-usart"; 956*4882a593Smuzhiyun reg = <0xfff94000 0x200>; 957*4882a593Smuzhiyun interrupts = <9 IRQ_TYPE_LEVEL_HIGH 5>; 958*4882a593Smuzhiyun atmel,use-dma-rx; 959*4882a593Smuzhiyun atmel,use-dma-tx; 960*4882a593Smuzhiyun pinctrl-names = "default"; 961*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_usart2>; 962*4882a593Smuzhiyun clocks = <&usart2_clk>; 963*4882a593Smuzhiyun clock-names = "usart"; 964*4882a593Smuzhiyun status = "disabled"; 965*4882a593Smuzhiyun }; 966*4882a593Smuzhiyun 967*4882a593Smuzhiyun usart3: serial@fff98000 { 968*4882a593Smuzhiyun compatible = "atmel,at91sam9260-usart"; 969*4882a593Smuzhiyun reg = <0xfff98000 0x200>; 970*4882a593Smuzhiyun interrupts = <10 IRQ_TYPE_LEVEL_HIGH 5>; 971*4882a593Smuzhiyun atmel,use-dma-rx; 972*4882a593Smuzhiyun atmel,use-dma-tx; 973*4882a593Smuzhiyun pinctrl-names = "default"; 974*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_usart3>; 975*4882a593Smuzhiyun clocks = <&usart3_clk>; 976*4882a593Smuzhiyun clock-names = "usart"; 977*4882a593Smuzhiyun status = "disabled"; 978*4882a593Smuzhiyun }; 979*4882a593Smuzhiyun 980*4882a593Smuzhiyun macb0: ethernet@fffbc000 { 981*4882a593Smuzhiyun compatible = "cdns,at91sam9260-macb", "cdns,macb"; 982*4882a593Smuzhiyun reg = <0xfffbc000 0x100>; 983*4882a593Smuzhiyun interrupts = <25 IRQ_TYPE_LEVEL_HIGH 3>; 984*4882a593Smuzhiyun pinctrl-names = "default"; 985*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_macb_rmii>; 986*4882a593Smuzhiyun clocks = <&macb0_clk>, <&macb0_clk>; 987*4882a593Smuzhiyun clock-names = "hclk", "pclk"; 988*4882a593Smuzhiyun status = "disabled"; 989*4882a593Smuzhiyun }; 990*4882a593Smuzhiyun 991*4882a593Smuzhiyun trng@fffcc000 { 992*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-trng"; 993*4882a593Smuzhiyun reg = <0xfffcc000 0x100>; 994*4882a593Smuzhiyun interrupts = <6 IRQ_TYPE_LEVEL_HIGH 0>; 995*4882a593Smuzhiyun clocks = <&trng_clk>; 996*4882a593Smuzhiyun }; 997*4882a593Smuzhiyun 998*4882a593Smuzhiyun i2c0: i2c@fff84000 { 999*4882a593Smuzhiyun compatible = "atmel,at91sam9g10-i2c"; 1000*4882a593Smuzhiyun reg = <0xfff84000 0x100>; 1001*4882a593Smuzhiyun interrupts = <12 IRQ_TYPE_LEVEL_HIGH 6>; 1002*4882a593Smuzhiyun pinctrl-names = "default"; 1003*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_i2c0>; 1004*4882a593Smuzhiyun #address-cells = <1>; 1005*4882a593Smuzhiyun #size-cells = <0>; 1006*4882a593Smuzhiyun clocks = <&twi0_clk>; 1007*4882a593Smuzhiyun status = "disabled"; 1008*4882a593Smuzhiyun }; 1009*4882a593Smuzhiyun 1010*4882a593Smuzhiyun i2c1: i2c@fff88000 { 1011*4882a593Smuzhiyun compatible = "atmel,at91sam9g10-i2c"; 1012*4882a593Smuzhiyun reg = <0xfff88000 0x100>; 1013*4882a593Smuzhiyun interrupts = <13 IRQ_TYPE_LEVEL_HIGH 6>; 1014*4882a593Smuzhiyun pinctrl-names = "default"; 1015*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_i2c1>; 1016*4882a593Smuzhiyun #address-cells = <1>; 1017*4882a593Smuzhiyun #size-cells = <0>; 1018*4882a593Smuzhiyun clocks = <&twi1_clk>; 1019*4882a593Smuzhiyun status = "disabled"; 1020*4882a593Smuzhiyun }; 1021*4882a593Smuzhiyun 1022*4882a593Smuzhiyun ssc0: ssc@fff9c000 { 1023*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-ssc"; 1024*4882a593Smuzhiyun reg = <0xfff9c000 0x4000>; 1025*4882a593Smuzhiyun interrupts = <16 IRQ_TYPE_LEVEL_HIGH 5>; 1026*4882a593Smuzhiyun pinctrl-names = "default"; 1027*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>; 1028*4882a593Smuzhiyun clocks = <&ssc0_clk>; 1029*4882a593Smuzhiyun clock-names = "pclk"; 1030*4882a593Smuzhiyun status = "disabled"; 1031*4882a593Smuzhiyun }; 1032*4882a593Smuzhiyun 1033*4882a593Smuzhiyun ssc1: ssc@fffa0000 { 1034*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-ssc"; 1035*4882a593Smuzhiyun reg = <0xfffa0000 0x4000>; 1036*4882a593Smuzhiyun interrupts = <17 IRQ_TYPE_LEVEL_HIGH 5>; 1037*4882a593Smuzhiyun pinctrl-names = "default"; 1038*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_ssc1_tx &pinctrl_ssc1_rx>; 1039*4882a593Smuzhiyun clocks = <&ssc1_clk>; 1040*4882a593Smuzhiyun clock-names = "pclk"; 1041*4882a593Smuzhiyun status = "disabled"; 1042*4882a593Smuzhiyun }; 1043*4882a593Smuzhiyun 1044*4882a593Smuzhiyun adc0: adc@fffb0000 { 1045*4882a593Smuzhiyun #address-cells = <1>; 1046*4882a593Smuzhiyun #size-cells = <0>; 1047*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-adc"; 1048*4882a593Smuzhiyun reg = <0xfffb0000 0x100>; 1049*4882a593Smuzhiyun interrupts = <20 IRQ_TYPE_LEVEL_HIGH 0>; 1050*4882a593Smuzhiyun clocks = <&adc_clk>, <&adc_op_clk>; 1051*4882a593Smuzhiyun clock-names = "adc_clk", "adc_op_clk"; 1052*4882a593Smuzhiyun atmel,adc-channels-used = <0xff>; 1053*4882a593Smuzhiyun atmel,adc-vref = <3300>; 1054*4882a593Smuzhiyun atmel,adc-startup-time = <40>; 1055*4882a593Smuzhiyun atmel,adc-res = <8 10>; 1056*4882a593Smuzhiyun atmel,adc-res-names = "lowres", "highres"; 1057*4882a593Smuzhiyun atmel,adc-use-res = "highres"; 1058*4882a593Smuzhiyun 1059*4882a593Smuzhiyun trigger0 { 1060*4882a593Smuzhiyun trigger-name = "external-rising"; 1061*4882a593Smuzhiyun trigger-value = <0x1>; 1062*4882a593Smuzhiyun trigger-external; 1063*4882a593Smuzhiyun }; 1064*4882a593Smuzhiyun trigger1 { 1065*4882a593Smuzhiyun trigger-name = "external-falling"; 1066*4882a593Smuzhiyun trigger-value = <0x2>; 1067*4882a593Smuzhiyun trigger-external; 1068*4882a593Smuzhiyun }; 1069*4882a593Smuzhiyun 1070*4882a593Smuzhiyun trigger2 { 1071*4882a593Smuzhiyun trigger-name = "external-any"; 1072*4882a593Smuzhiyun trigger-value = <0x3>; 1073*4882a593Smuzhiyun trigger-external; 1074*4882a593Smuzhiyun }; 1075*4882a593Smuzhiyun 1076*4882a593Smuzhiyun trigger3 { 1077*4882a593Smuzhiyun trigger-name = "continuous"; 1078*4882a593Smuzhiyun trigger-value = <0x6>; 1079*4882a593Smuzhiyun }; 1080*4882a593Smuzhiyun }; 1081*4882a593Smuzhiyun 1082*4882a593Smuzhiyun isi@fffb4000 { 1083*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-isi"; 1084*4882a593Smuzhiyun reg = <0xfffb4000 0x4000>; 1085*4882a593Smuzhiyun interrupts = <26 IRQ_TYPE_LEVEL_HIGH 5>; 1086*4882a593Smuzhiyun clocks = <&isi_clk>; 1087*4882a593Smuzhiyun clock-names = "isi_clk"; 1088*4882a593Smuzhiyun status = "disabled"; 1089*4882a593Smuzhiyun port { 1090*4882a593Smuzhiyun #address-cells = <1>; 1091*4882a593Smuzhiyun #size-cells = <0>; 1092*4882a593Smuzhiyun }; 1093*4882a593Smuzhiyun }; 1094*4882a593Smuzhiyun 1095*4882a593Smuzhiyun pwm0: pwm@fffb8000 { 1096*4882a593Smuzhiyun compatible = "atmel,at91sam9rl-pwm"; 1097*4882a593Smuzhiyun reg = <0xfffb8000 0x300>; 1098*4882a593Smuzhiyun interrupts = <19 IRQ_TYPE_LEVEL_HIGH 4>; 1099*4882a593Smuzhiyun #pwm-cells = <3>; 1100*4882a593Smuzhiyun clocks = <&pwm_clk>; 1101*4882a593Smuzhiyun status = "disabled"; 1102*4882a593Smuzhiyun }; 1103*4882a593Smuzhiyun 1104*4882a593Smuzhiyun mmc0: mmc@fff80000 { 1105*4882a593Smuzhiyun compatible = "atmel,hsmci"; 1106*4882a593Smuzhiyun reg = <0xfff80000 0x600>; 1107*4882a593Smuzhiyun interrupts = <11 IRQ_TYPE_LEVEL_HIGH 0>; 1108*4882a593Smuzhiyun pinctrl-names = "default"; 1109*4882a593Smuzhiyun dmas = <&dma 1 AT91_DMA_CFG_PER_ID(0)>; 1110*4882a593Smuzhiyun dma-names = "rxtx"; 1111*4882a593Smuzhiyun #address-cells = <1>; 1112*4882a593Smuzhiyun #size-cells = <0>; 1113*4882a593Smuzhiyun clocks = <&mci0_clk>; 1114*4882a593Smuzhiyun clock-names = "mci_clk"; 1115*4882a593Smuzhiyun status = "disabled"; 1116*4882a593Smuzhiyun }; 1117*4882a593Smuzhiyun 1118*4882a593Smuzhiyun mmc1: mmc@fffd0000 { 1119*4882a593Smuzhiyun compatible = "atmel,hsmci"; 1120*4882a593Smuzhiyun reg = <0xfffd0000 0x600>; 1121*4882a593Smuzhiyun interrupts = <29 IRQ_TYPE_LEVEL_HIGH 0>; 1122*4882a593Smuzhiyun pinctrl-names = "default"; 1123*4882a593Smuzhiyun dmas = <&dma 1 AT91_DMA_CFG_PER_ID(13)>; 1124*4882a593Smuzhiyun dma-names = "rxtx"; 1125*4882a593Smuzhiyun #address-cells = <1>; 1126*4882a593Smuzhiyun #size-cells = <0>; 1127*4882a593Smuzhiyun clocks = <&mci1_clk>; 1128*4882a593Smuzhiyun clock-names = "mci_clk"; 1129*4882a593Smuzhiyun status = "disabled"; 1130*4882a593Smuzhiyun }; 1131*4882a593Smuzhiyun 1132*4882a593Smuzhiyun watchdog@fffffd40 { 1133*4882a593Smuzhiyun compatible = "atmel,at91sam9260-wdt"; 1134*4882a593Smuzhiyun reg = <0xfffffd40 0x10>; 1135*4882a593Smuzhiyun interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; 1136*4882a593Smuzhiyun clocks = <&clk32k>; 1137*4882a593Smuzhiyun atmel,watchdog-type = "hardware"; 1138*4882a593Smuzhiyun atmel,reset-type = "all"; 1139*4882a593Smuzhiyun atmel,dbg-halt; 1140*4882a593Smuzhiyun status = "disabled"; 1141*4882a593Smuzhiyun }; 1142*4882a593Smuzhiyun 1143*4882a593Smuzhiyun spi0: spi@fffa4000 { 1144*4882a593Smuzhiyun #address-cells = <1>; 1145*4882a593Smuzhiyun #size-cells = <0>; 1146*4882a593Smuzhiyun compatible = "atmel,at91rm9200-spi"; 1147*4882a593Smuzhiyun reg = <0xfffa4000 0x200>; 1148*4882a593Smuzhiyun interrupts = <14 4 3>; 1149*4882a593Smuzhiyun pinctrl-names = "default"; 1150*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_spi0>; 1151*4882a593Smuzhiyun clocks = <&spi0_clk>; 1152*4882a593Smuzhiyun clock-names = "spi_clk"; 1153*4882a593Smuzhiyun status = "disabled"; 1154*4882a593Smuzhiyun }; 1155*4882a593Smuzhiyun 1156*4882a593Smuzhiyun spi1: spi@fffa8000 { 1157*4882a593Smuzhiyun #address-cells = <1>; 1158*4882a593Smuzhiyun #size-cells = <0>; 1159*4882a593Smuzhiyun compatible = "atmel,at91rm9200-spi"; 1160*4882a593Smuzhiyun reg = <0xfffa8000 0x200>; 1161*4882a593Smuzhiyun interrupts = <15 4 3>; 1162*4882a593Smuzhiyun pinctrl-names = "default"; 1163*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_spi1>; 1164*4882a593Smuzhiyun clocks = <&spi1_clk>; 1165*4882a593Smuzhiyun clock-names = "spi_clk"; 1166*4882a593Smuzhiyun status = "disabled"; 1167*4882a593Smuzhiyun }; 1168*4882a593Smuzhiyun 1169*4882a593Smuzhiyun usb2: gadget@fff78000 { 1170*4882a593Smuzhiyun #address-cells = <1>; 1171*4882a593Smuzhiyun #size-cells = <0>; 1172*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-udc"; 1173*4882a593Smuzhiyun reg = <0x00600000 0x80000 1174*4882a593Smuzhiyun 0xfff78000 0x400>; 1175*4882a593Smuzhiyun interrupts = <27 IRQ_TYPE_LEVEL_HIGH 0>; 1176*4882a593Smuzhiyun clocks = <&udphs_clk>, <&utmi>; 1177*4882a593Smuzhiyun clock-names = "pclk", "hclk"; 1178*4882a593Smuzhiyun status = "disabled"; 1179*4882a593Smuzhiyun 1180*4882a593Smuzhiyun ep@0 { 1181*4882a593Smuzhiyun reg = <0>; 1182*4882a593Smuzhiyun atmel,fifo-size = <64>; 1183*4882a593Smuzhiyun atmel,nb-banks = <1>; 1184*4882a593Smuzhiyun }; 1185*4882a593Smuzhiyun 1186*4882a593Smuzhiyun ep@1 { 1187*4882a593Smuzhiyun reg = <1>; 1188*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1189*4882a593Smuzhiyun atmel,nb-banks = <2>; 1190*4882a593Smuzhiyun atmel,can-dma; 1191*4882a593Smuzhiyun atmel,can-isoc; 1192*4882a593Smuzhiyun }; 1193*4882a593Smuzhiyun 1194*4882a593Smuzhiyun ep@2 { 1195*4882a593Smuzhiyun reg = <2>; 1196*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1197*4882a593Smuzhiyun atmel,nb-banks = <2>; 1198*4882a593Smuzhiyun atmel,can-dma; 1199*4882a593Smuzhiyun atmel,can-isoc; 1200*4882a593Smuzhiyun }; 1201*4882a593Smuzhiyun 1202*4882a593Smuzhiyun ep@3 { 1203*4882a593Smuzhiyun reg = <3>; 1204*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1205*4882a593Smuzhiyun atmel,nb-banks = <3>; 1206*4882a593Smuzhiyun atmel,can-dma; 1207*4882a593Smuzhiyun }; 1208*4882a593Smuzhiyun 1209*4882a593Smuzhiyun ep@4 { 1210*4882a593Smuzhiyun reg = <4>; 1211*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1212*4882a593Smuzhiyun atmel,nb-banks = <3>; 1213*4882a593Smuzhiyun atmel,can-dma; 1214*4882a593Smuzhiyun }; 1215*4882a593Smuzhiyun 1216*4882a593Smuzhiyun ep@5 { 1217*4882a593Smuzhiyun reg = <5>; 1218*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1219*4882a593Smuzhiyun atmel,nb-banks = <3>; 1220*4882a593Smuzhiyun atmel,can-dma; 1221*4882a593Smuzhiyun atmel,can-isoc; 1222*4882a593Smuzhiyun }; 1223*4882a593Smuzhiyun 1224*4882a593Smuzhiyun ep@6 { 1225*4882a593Smuzhiyun reg = <6>; 1226*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1227*4882a593Smuzhiyun atmel,nb-banks = <3>; 1228*4882a593Smuzhiyun atmel,can-dma; 1229*4882a593Smuzhiyun atmel,can-isoc; 1230*4882a593Smuzhiyun }; 1231*4882a593Smuzhiyun }; 1232*4882a593Smuzhiyun 1233*4882a593Smuzhiyun sckc@fffffd50 { 1234*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-sckc"; 1235*4882a593Smuzhiyun reg = <0xfffffd50 0x4>; 1236*4882a593Smuzhiyun 1237*4882a593Smuzhiyun slow_osc: slow_osc { 1238*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-slow-osc"; 1239*4882a593Smuzhiyun #clock-cells = <0>; 1240*4882a593Smuzhiyun atmel,startup-time-usec = <1200000>; 1241*4882a593Smuzhiyun clocks = <&slow_xtal>; 1242*4882a593Smuzhiyun }; 1243*4882a593Smuzhiyun 1244*4882a593Smuzhiyun slow_rc_osc: slow_rc_osc { 1245*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-slow-rc-osc"; 1246*4882a593Smuzhiyun #clock-cells = <0>; 1247*4882a593Smuzhiyun atmel,startup-time-usec = <75>; 1248*4882a593Smuzhiyun clock-frequency = <32768>; 1249*4882a593Smuzhiyun clock-accuracy = <50000000>; 1250*4882a593Smuzhiyun }; 1251*4882a593Smuzhiyun 1252*4882a593Smuzhiyun clk32k: slck { 1253*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-slow"; 1254*4882a593Smuzhiyun #clock-cells = <0>; 1255*4882a593Smuzhiyun clocks = <&slow_rc_osc &slow_osc>; 1256*4882a593Smuzhiyun }; 1257*4882a593Smuzhiyun }; 1258*4882a593Smuzhiyun 1259*4882a593Smuzhiyun rtc@fffffd20 { 1260*4882a593Smuzhiyun compatible = "atmel,at91sam9260-rtt"; 1261*4882a593Smuzhiyun reg = <0xfffffd20 0x10>; 1262*4882a593Smuzhiyun interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; 1263*4882a593Smuzhiyun clocks = <&clk32k>; 1264*4882a593Smuzhiyun status = "disabled"; 1265*4882a593Smuzhiyun }; 1266*4882a593Smuzhiyun 1267*4882a593Smuzhiyun rtc@fffffdb0 { 1268*4882a593Smuzhiyun compatible = "atmel,at91rm9200-rtc"; 1269*4882a593Smuzhiyun reg = <0xfffffdb0 0x30>; 1270*4882a593Smuzhiyun interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; 1271*4882a593Smuzhiyun clocks = <&clk32k>; 1272*4882a593Smuzhiyun status = "disabled"; 1273*4882a593Smuzhiyun }; 1274*4882a593Smuzhiyun 1275*4882a593Smuzhiyun gpbr: syscon@fffffd60 { 1276*4882a593Smuzhiyun compatible = "atmel,at91sam9260-gpbr", "syscon"; 1277*4882a593Smuzhiyun reg = <0xfffffd60 0x10>; 1278*4882a593Smuzhiyun status = "disabled"; 1279*4882a593Smuzhiyun }; 1280*4882a593Smuzhiyun }; 1281*4882a593Smuzhiyun 1282*4882a593Smuzhiyun fb0: fb@0x00500000 { 1283*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-lcdc"; 1284*4882a593Smuzhiyun reg = <0x00500000 0x1000>; 1285*4882a593Smuzhiyun interrupts = <23 IRQ_TYPE_LEVEL_HIGH 3>; 1286*4882a593Smuzhiyun pinctrl-names = "default"; 1287*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_fb>; 1288*4882a593Smuzhiyun clocks = <&lcd_clk>, <&lcd_clk>; 1289*4882a593Smuzhiyun clock-names = "hclk", "lcdc_clk"; 1290*4882a593Smuzhiyun status = "disabled"; 1291*4882a593Smuzhiyun }; 1292*4882a593Smuzhiyun 1293*4882a593Smuzhiyun nand0: nand@40000000 { 1294*4882a593Smuzhiyun compatible = "atmel,at91rm9200-nand"; 1295*4882a593Smuzhiyun #address-cells = <1>; 1296*4882a593Smuzhiyun #size-cells = <1>; 1297*4882a593Smuzhiyun reg = <0x40000000 0x10000000 1298*4882a593Smuzhiyun 0xffffe200 0x200 1299*4882a593Smuzhiyun >; 1300*4882a593Smuzhiyun atmel,nand-addr-offset = <21>; 1301*4882a593Smuzhiyun atmel,nand-cmd-offset = <22>; 1302*4882a593Smuzhiyun atmel,nand-has-dma; 1303*4882a593Smuzhiyun pinctrl-names = "default"; 1304*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_nand>; 1305*4882a593Smuzhiyun gpios = <&pioC 8 GPIO_ACTIVE_HIGH 1306*4882a593Smuzhiyun &pioC 14 GPIO_ACTIVE_HIGH 1307*4882a593Smuzhiyun 0 1308*4882a593Smuzhiyun >; 1309*4882a593Smuzhiyun status = "disabled"; 1310*4882a593Smuzhiyun }; 1311*4882a593Smuzhiyun 1312*4882a593Smuzhiyun usb0: ohci@00700000 { 1313*4882a593Smuzhiyun compatible = "atmel,at91rm9200-ohci", "usb-ohci"; 1314*4882a593Smuzhiyun reg = <0x00700000 0x100000>; 1315*4882a593Smuzhiyun interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>; 1316*4882a593Smuzhiyun clocks = <&uhphs_clk>, <&uhphs_clk>, <&uhpck>; 1317*4882a593Smuzhiyun clock-names = "ohci_clk", "hclk", "uhpck"; 1318*4882a593Smuzhiyun status = "disabled"; 1319*4882a593Smuzhiyun }; 1320*4882a593Smuzhiyun 1321*4882a593Smuzhiyun usb1: ehci@00800000 { 1322*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-ehci", "usb-ehci"; 1323*4882a593Smuzhiyun reg = <0x00800000 0x100000>; 1324*4882a593Smuzhiyun interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>; 1325*4882a593Smuzhiyun clocks = <&utmi>, <&uhphs_clk>; 1326*4882a593Smuzhiyun clock-names = "usb_clk", "ehci_clk"; 1327*4882a593Smuzhiyun status = "disabled"; 1328*4882a593Smuzhiyun }; 1329*4882a593Smuzhiyun }; 1330*4882a593Smuzhiyun 1331*4882a593Smuzhiyun i2c-gpio-0 { 1332*4882a593Smuzhiyun compatible = "i2c-gpio"; 1333*4882a593Smuzhiyun gpios = <&pioA 20 GPIO_ACTIVE_HIGH /* sda */ 1334*4882a593Smuzhiyun &pioA 21 GPIO_ACTIVE_HIGH /* scl */ 1335*4882a593Smuzhiyun >; 1336*4882a593Smuzhiyun i2c-gpio,sda-open-drain; 1337*4882a593Smuzhiyun i2c-gpio,scl-open-drain; 1338*4882a593Smuzhiyun i2c-gpio,delay-us = <5>; /* ~100 kHz */ 1339*4882a593Smuzhiyun #address-cells = <1>; 1340*4882a593Smuzhiyun #size-cells = <0>; 1341*4882a593Smuzhiyun status = "disabled"; 1342*4882a593Smuzhiyun }; 1343*4882a593Smuzhiyun}; 1344