at91sam9x5.dtsi revision 270864
1262569Simp/* 2262569Simp * at91sam9x5.dtsi - Device Tree Include file for AT91SAM9x5 family SoC 3262569Simp * applies to AT91SAM9G15, AT91SAM9G25, AT91SAM9G35, 4262569Simp * AT91SAM9X25, AT91SAM9X35 SoC 5262569Simp * 6262569Simp * Copyright (C) 2012 Atmel, 7262569Simp * 2012 Nicolas Ferre <nicolas.ferre@atmel.com> 8262569Simp * 9262569Simp * Licensed under GPLv2 or later. 10262569Simp */ 11262569Simp 12262569Simp#include "skeleton.dtsi" 13262569Simp#include <dt-bindings/dma/at91.h> 14262569Simp#include <dt-bindings/pinctrl/at91.h> 15262569Simp#include <dt-bindings/interrupt-controller/irq.h> 16262569Simp#include <dt-bindings/gpio/gpio.h> 17270864Simp#include <dt-bindings/clock/at91.h> 18262569Simp 19262569Simp/ { 20262569Simp model = "Atmel AT91SAM9x5 family SoC"; 21262569Simp compatible = "atmel,at91sam9x5"; 22262569Simp interrupt-parent = <&aic>; 23262569Simp 24262569Simp aliases { 25262569Simp serial0 = &dbgu; 26262569Simp serial1 = &usart0; 27262569Simp serial2 = &usart1; 28262569Simp serial3 = &usart2; 29262569Simp gpio0 = &pioA; 30262569Simp gpio1 = &pioB; 31262569Simp gpio2 = &pioC; 32262569Simp gpio3 = &pioD; 33262569Simp tcb0 = &tcb0; 34262569Simp tcb1 = &tcb1; 35262569Simp i2c0 = &i2c0; 36262569Simp i2c1 = &i2c1; 37262569Simp i2c2 = &i2c2; 38262569Simp ssc0 = &ssc0; 39262569Simp pwm0 = &pwm0; 40262569Simp }; 41262569Simp cpus { 42262569Simp #address-cells = <0>; 43262569Simp #size-cells = <0>; 44262569Simp 45262569Simp cpu { 46262569Simp compatible = "arm,arm926ej-s"; 47262569Simp device_type = "cpu"; 48262569Simp }; 49262569Simp }; 50262569Simp 51262569Simp memory { 52262569Simp reg = <0x20000000 0x10000000>; 53262569Simp }; 54262569Simp 55270864Simp clocks { 56270864Simp slow_xtal: slow_xtal { 57270864Simp compatible = "fixed-clock"; 58270864Simp #clock-cells = <0>; 59270864Simp clock-frequency = <0>; 60270864Simp }; 61270864Simp 62270864Simp main_xtal: main_xtal { 63270864Simp compatible = "fixed-clock"; 64270864Simp #clock-cells = <0>; 65270864Simp clock-frequency = <0>; 66270864Simp }; 67270864Simp 68270864Simp adc_op_clk: adc_op_clk{ 69270864Simp compatible = "fixed-clock"; 70270864Simp #clock-cells = <0>; 71270864Simp clock-frequency = <5000000>; 72270864Simp }; 73270864Simp }; 74270864Simp 75262569Simp ahb { 76262569Simp compatible = "simple-bus"; 77262569Simp #address-cells = <1>; 78262569Simp #size-cells = <1>; 79262569Simp ranges; 80262569Simp 81262569Simp apb { 82262569Simp compatible = "simple-bus"; 83262569Simp #address-cells = <1>; 84262569Simp #size-cells = <1>; 85262569Simp ranges; 86262569Simp 87262569Simp aic: interrupt-controller@fffff000 { 88262569Simp #interrupt-cells = <3>; 89262569Simp compatible = "atmel,at91rm9200-aic"; 90262569Simp interrupt-controller; 91262569Simp reg = <0xfffff000 0x200>; 92262569Simp atmel,external-irqs = <31>; 93262569Simp }; 94262569Simp 95262569Simp ramc0: ramc@ffffe800 { 96262569Simp compatible = "atmel,at91sam9g45-ddramc"; 97262569Simp reg = <0xffffe800 0x200>; 98262569Simp }; 99262569Simp 100262569Simp pmc: pmc@fffffc00 { 101270864Simp compatible = "atmel,at91sam9x5-pmc"; 102262569Simp reg = <0xfffffc00 0x100>; 103270864Simp interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; 104270864Simp interrupt-controller; 105270864Simp #address-cells = <1>; 106270864Simp #size-cells = <0>; 107270864Simp #interrupt-cells = <1>; 108270864Simp 109270864Simp main_rc_osc: main_rc_osc { 110270864Simp compatible = "atmel,at91sam9x5-clk-main-rc-osc"; 111270864Simp #clock-cells = <0>; 112270864Simp interrupts-extended = <&pmc AT91_PMC_MOSCRCS>; 113270864Simp clock-frequency = <12000000>; 114270864Simp clock-accuracy = <50000000>; 115270864Simp }; 116270864Simp 117270864Simp main_osc: main_osc { 118270864Simp compatible = "atmel,at91rm9200-clk-main-osc"; 119270864Simp #clock-cells = <0>; 120270864Simp interrupts-extended = <&pmc AT91_PMC_MOSCS>; 121270864Simp clocks = <&main_xtal>; 122270864Simp }; 123270864Simp 124270864Simp main: mainck { 125270864Simp compatible = "atmel,at91sam9x5-clk-main"; 126270864Simp #clock-cells = <0>; 127270864Simp interrupts-extended = <&pmc AT91_PMC_MOSCSELS>; 128270864Simp clocks = <&main_rc_osc>, <&main_osc>; 129270864Simp }; 130270864Simp 131270864Simp plla: pllack { 132270864Simp compatible = "atmel,at91rm9200-clk-pll"; 133270864Simp #clock-cells = <0>; 134270864Simp interrupts-extended = <&pmc AT91_PMC_LOCKA>; 135270864Simp clocks = <&main>; 136270864Simp reg = <0>; 137270864Simp atmel,clk-input-range = <2000000 32000000>; 138270864Simp #atmel,pll-clk-output-range-cells = <4>; 139270864Simp atmel,pll-clk-output-ranges = <745000000 800000000 0 0 140270864Simp 695000000 750000000 1 0 141270864Simp 645000000 700000000 2 0 142270864Simp 595000000 650000000 3 0 143270864Simp 545000000 600000000 0 1 144270864Simp 495000000 555000000 1 1 145270864Simp 445000000 500000000 2 1 146270864Simp 400000000 450000000 3 1>; 147270864Simp }; 148270864Simp 149270864Simp plladiv: plladivck { 150270864Simp compatible = "atmel,at91sam9x5-clk-plldiv"; 151270864Simp #clock-cells = <0>; 152270864Simp clocks = <&plla>; 153270864Simp }; 154270864Simp 155270864Simp utmi: utmick { 156270864Simp compatible = "atmel,at91sam9x5-clk-utmi"; 157270864Simp #clock-cells = <0>; 158270864Simp interrupts-extended = <&pmc AT91_PMC_LOCKU>; 159270864Simp clocks = <&main>; 160270864Simp }; 161270864Simp 162270864Simp mck: masterck { 163270864Simp compatible = "atmel,at91sam9x5-clk-master"; 164270864Simp #clock-cells = <0>; 165270864Simp interrupts-extended = <&pmc AT91_PMC_MCKRDY>; 166270864Simp clocks = <&clk32k>, <&main>, <&plladiv>, <&utmi>; 167270864Simp atmel,clk-output-range = <0 133333333>; 168270864Simp atmel,clk-divisors = <1 2 4 3>; 169270864Simp atmel,master-clk-have-div3-pres; 170270864Simp }; 171270864Simp 172270864Simp usb: usbck { 173270864Simp compatible = "atmel,at91sam9x5-clk-usb"; 174270864Simp #clock-cells = <0>; 175270864Simp clocks = <&plladiv>, <&utmi>; 176270864Simp }; 177270864Simp 178270864Simp prog: progck { 179270864Simp compatible = "atmel,at91sam9x5-clk-programmable"; 180270864Simp #address-cells = <1>; 181270864Simp #size-cells = <0>; 182270864Simp interrupt-parent = <&pmc>; 183270864Simp clocks = <&clk32k>, <&main>, <&plladiv>, <&utmi>, <&mck>; 184270864Simp 185270864Simp prog0: prog0 { 186270864Simp #clock-cells = <0>; 187270864Simp reg = <0>; 188270864Simp interrupts = <AT91_PMC_PCKRDY(0)>; 189270864Simp }; 190270864Simp 191270864Simp prog1: prog1 { 192270864Simp #clock-cells = <0>; 193270864Simp reg = <1>; 194270864Simp interrupts = <AT91_PMC_PCKRDY(1)>; 195270864Simp }; 196270864Simp }; 197270864Simp 198270864Simp smd: smdclk { 199270864Simp compatible = "atmel,at91sam9x5-clk-smd"; 200270864Simp #clock-cells = <0>; 201270864Simp clocks = <&plladiv>, <&utmi>; 202270864Simp }; 203270864Simp 204270864Simp systemck { 205270864Simp compatible = "atmel,at91rm9200-clk-system"; 206270864Simp #address-cells = <1>; 207270864Simp #size-cells = <0>; 208270864Simp 209270864Simp ddrck: ddrck { 210270864Simp #clock-cells = <0>; 211270864Simp reg = <2>; 212270864Simp clocks = <&mck>; 213270864Simp }; 214270864Simp 215270864Simp smdck: smdck { 216270864Simp #clock-cells = <0>; 217270864Simp reg = <4>; 218270864Simp clocks = <&smd>; 219270864Simp }; 220270864Simp 221270864Simp uhpck: uhpck { 222270864Simp #clock-cells = <0>; 223270864Simp reg = <6>; 224270864Simp clocks = <&usb>; 225270864Simp }; 226270864Simp 227270864Simp udpck: udpck { 228270864Simp #clock-cells = <0>; 229270864Simp reg = <7>; 230270864Simp clocks = <&usb>; 231270864Simp }; 232270864Simp 233270864Simp pck0: pck0 { 234270864Simp #clock-cells = <0>; 235270864Simp reg = <8>; 236270864Simp clocks = <&prog0>; 237270864Simp }; 238270864Simp 239270864Simp pck1: pck1 { 240270864Simp #clock-cells = <0>; 241270864Simp reg = <9>; 242270864Simp clocks = <&prog1>; 243270864Simp }; 244270864Simp }; 245270864Simp 246270864Simp periphck { 247270864Simp compatible = "atmel,at91sam9x5-clk-peripheral"; 248270864Simp #address-cells = <1>; 249270864Simp #size-cells = <0>; 250270864Simp clocks = <&mck>; 251270864Simp 252270864Simp pioAB_clk: pioAB_clk { 253270864Simp #clock-cells = <0>; 254270864Simp reg = <2>; 255270864Simp }; 256270864Simp 257270864Simp pioCD_clk: pioCD_clk { 258270864Simp #clock-cells = <0>; 259270864Simp reg = <3>; 260270864Simp }; 261270864Simp 262270864Simp smd_clk: smd_clk { 263270864Simp #clock-cells = <0>; 264270864Simp reg = <4>; 265270864Simp }; 266270864Simp 267270864Simp usart0_clk: usart0_clk { 268270864Simp #clock-cells = <0>; 269270864Simp reg = <5>; 270270864Simp }; 271270864Simp 272270864Simp usart1_clk: usart1_clk { 273270864Simp #clock-cells = <0>; 274270864Simp reg = <6>; 275270864Simp }; 276270864Simp 277270864Simp usart2_clk: usart2_clk { 278270864Simp #clock-cells = <0>; 279270864Simp reg = <7>; 280270864Simp }; 281270864Simp 282270864Simp twi0_clk: twi0_clk { 283270864Simp reg = <9>; 284270864Simp #clock-cells = <0>; 285270864Simp }; 286270864Simp 287270864Simp twi1_clk: twi1_clk { 288270864Simp #clock-cells = <0>; 289270864Simp reg = <10>; 290270864Simp }; 291270864Simp 292270864Simp twi2_clk: twi2_clk { 293270864Simp #clock-cells = <0>; 294270864Simp reg = <11>; 295270864Simp }; 296270864Simp 297270864Simp mci0_clk: mci0_clk { 298270864Simp #clock-cells = <0>; 299270864Simp reg = <12>; 300270864Simp }; 301270864Simp 302270864Simp spi0_clk: spi0_clk { 303270864Simp #clock-cells = <0>; 304270864Simp reg = <13>; 305270864Simp }; 306270864Simp 307270864Simp spi1_clk: spi1_clk { 308270864Simp #clock-cells = <0>; 309270864Simp reg = <14>; 310270864Simp }; 311270864Simp 312270864Simp uart0_clk: uart0_clk { 313270864Simp #clock-cells = <0>; 314270864Simp reg = <15>; 315270864Simp }; 316270864Simp 317270864Simp uart1_clk: uart1_clk { 318270864Simp #clock-cells = <0>; 319270864Simp reg = <16>; 320270864Simp }; 321270864Simp 322270864Simp tcb0_clk: tcb0_clk { 323270864Simp #clock-cells = <0>; 324270864Simp reg = <17>; 325270864Simp }; 326270864Simp 327270864Simp pwm_clk: pwm_clk { 328270864Simp #clock-cells = <0>; 329270864Simp reg = <18>; 330270864Simp }; 331270864Simp 332270864Simp adc_clk: adc_clk { 333270864Simp #clock-cells = <0>; 334270864Simp reg = <19>; 335270864Simp }; 336270864Simp 337270864Simp dma0_clk: dma0_clk { 338270864Simp #clock-cells = <0>; 339270864Simp reg = <20>; 340270864Simp }; 341270864Simp 342270864Simp dma1_clk: dma1_clk { 343270864Simp #clock-cells = <0>; 344270864Simp reg = <21>; 345270864Simp }; 346270864Simp 347270864Simp uhphs_clk: uhphs_clk { 348270864Simp #clock-cells = <0>; 349270864Simp reg = <22>; 350270864Simp }; 351270864Simp 352270864Simp udphs_clk: udphs_clk { 353270864Simp #clock-cells = <0>; 354270864Simp reg = <23>; 355270864Simp }; 356270864Simp 357270864Simp mci1_clk: mci1_clk { 358270864Simp #clock-cells = <0>; 359270864Simp reg = <26>; 360270864Simp }; 361270864Simp 362270864Simp ssc0_clk: ssc0_clk { 363270864Simp #clock-cells = <0>; 364270864Simp reg = <28>; 365270864Simp }; 366270864Simp }; 367262569Simp }; 368262569Simp 369262569Simp rstc@fffffe00 { 370262569Simp compatible = "atmel,at91sam9g45-rstc"; 371262569Simp reg = <0xfffffe00 0x10>; 372262569Simp }; 373262569Simp 374262569Simp shdwc@fffffe10 { 375262569Simp compatible = "atmel,at91sam9x5-shdwc"; 376262569Simp reg = <0xfffffe10 0x10>; 377262569Simp }; 378262569Simp 379262569Simp pit: timer@fffffe30 { 380262569Simp compatible = "atmel,at91sam9260-pit"; 381262569Simp reg = <0xfffffe30 0xf>; 382262569Simp interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; 383270864Simp clocks = <&mck>; 384262569Simp }; 385262569Simp 386270864Simp sckc@fffffe50 { 387270864Simp compatible = "atmel,at91sam9x5-sckc"; 388270864Simp reg = <0xfffffe50 0x4>; 389270864Simp 390270864Simp slow_osc: slow_osc { 391270864Simp compatible = "atmel,at91sam9x5-clk-slow-osc"; 392270864Simp #clock-cells = <0>; 393270864Simp clocks = <&slow_xtal>; 394270864Simp }; 395270864Simp 396270864Simp slow_rc_osc: slow_rc_osc { 397270864Simp compatible = "atmel,at91sam9x5-clk-slow-rc-osc"; 398270864Simp #clock-cells = <0>; 399270864Simp clock-frequency = <32768>; 400270864Simp clock-accuracy = <50000000>; 401270864Simp }; 402270864Simp 403270864Simp clk32k: slck { 404270864Simp compatible = "atmel,at91sam9x5-clk-slow"; 405270864Simp #clock-cells = <0>; 406270864Simp clocks = <&slow_rc_osc>, <&slow_osc>; 407270864Simp }; 408270864Simp }; 409270864Simp 410262569Simp tcb0: timer@f8008000 { 411262569Simp compatible = "atmel,at91sam9x5-tcb"; 412262569Simp reg = <0xf8008000 0x100>; 413262569Simp interrupts = <17 IRQ_TYPE_LEVEL_HIGH 0>; 414270864Simp clocks = <&tcb0_clk>; 415270864Simp clock-names = "t0_clk"; 416262569Simp }; 417262569Simp 418262569Simp tcb1: timer@f800c000 { 419262569Simp compatible = "atmel,at91sam9x5-tcb"; 420262569Simp reg = <0xf800c000 0x100>; 421262569Simp interrupts = <17 IRQ_TYPE_LEVEL_HIGH 0>; 422270864Simp clocks = <&tcb0_clk>; 423270864Simp clock-names = "t0_clk"; 424262569Simp }; 425262569Simp 426262569Simp dma0: dma-controller@ffffec00 { 427262569Simp compatible = "atmel,at91sam9g45-dma"; 428262569Simp reg = <0xffffec00 0x200>; 429262569Simp interrupts = <20 IRQ_TYPE_LEVEL_HIGH 0>; 430262569Simp #dma-cells = <2>; 431270864Simp clocks = <&dma0_clk>; 432270864Simp clock-names = "dma_clk"; 433262569Simp }; 434262569Simp 435262569Simp dma1: dma-controller@ffffee00 { 436262569Simp compatible = "atmel,at91sam9g45-dma"; 437262569Simp reg = <0xffffee00 0x200>; 438262569Simp interrupts = <21 IRQ_TYPE_LEVEL_HIGH 0>; 439262569Simp #dma-cells = <2>; 440270864Simp clocks = <&dma1_clk>; 441270864Simp clock-names = "dma_clk"; 442262569Simp }; 443262569Simp 444262569Simp pinctrl@fffff400 { 445262569Simp #address-cells = <1>; 446262569Simp #size-cells = <1>; 447262569Simp compatible = "atmel,at91sam9x5-pinctrl", "atmel,at91rm9200-pinctrl", "simple-bus"; 448262569Simp ranges = <0xfffff400 0xfffff400 0x800>; 449262569Simp 450262569Simp /* shared pinctrl settings */ 451262569Simp dbgu { 452262569Simp pinctrl_dbgu: dbgu-0 { 453262569Simp atmel,pins = 454262569Simp <AT91_PIOA 9 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA9 periph A */ 455262569Simp AT91_PIOA 10 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA10 periph A with pullup */ 456262569Simp }; 457262569Simp }; 458262569Simp 459262569Simp usart0 { 460262569Simp pinctrl_usart0: usart0-0 { 461262569Simp atmel,pins = 462262569Simp <AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA0 periph A with pullup */ 463262569Simp AT91_PIOA 1 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA1 periph A */ 464262569Simp }; 465262569Simp 466262569Simp pinctrl_usart0_rts: usart0_rts-0 { 467262569Simp atmel,pins = 468262569Simp <AT91_PIOA 2 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA2 periph A */ 469262569Simp }; 470262569Simp 471262569Simp pinctrl_usart0_cts: usart0_cts-0 { 472262569Simp atmel,pins = 473262569Simp <AT91_PIOA 3 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA3 periph A */ 474262569Simp }; 475262569Simp 476262569Simp pinctrl_usart0_sck: usart0_sck-0 { 477262569Simp atmel,pins = 478262569Simp <AT91_PIOA 4 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA4 periph A */ 479262569Simp }; 480262569Simp }; 481262569Simp 482262569Simp usart1 { 483262569Simp pinctrl_usart1: usart1-0 { 484262569Simp atmel,pins = 485262569Simp <AT91_PIOA 5 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA5 periph A with pullup */ 486262569Simp AT91_PIOA 6 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA6 periph A */ 487262569Simp }; 488262569Simp 489262569Simp pinctrl_usart1_rts: usart1_rts-0 { 490262569Simp atmel,pins = 491262569Simp <AT91_PIOC 27 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* PC27 periph C */ 492262569Simp }; 493262569Simp 494262569Simp pinctrl_usart1_cts: usart1_cts-0 { 495262569Simp atmel,pins = 496262569Simp <AT91_PIOC 28 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* PC28 periph C */ 497262569Simp }; 498262569Simp 499262569Simp pinctrl_usart1_sck: usart1_sck-0 { 500262569Simp atmel,pins = 501262569Simp <AT91_PIOC 28 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* PC29 periph C */ 502262569Simp }; 503262569Simp }; 504262569Simp 505262569Simp usart2 { 506262569Simp pinctrl_usart2: usart2-0 { 507262569Simp atmel,pins = 508262569Simp <AT91_PIOA 7 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA7 periph A with pullup */ 509262569Simp AT91_PIOA 8 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA8 periph A */ 510262569Simp }; 511262569Simp 512262569Simp pinctrl_usart2_rts: usart2_rts-0 { 513262569Simp atmel,pins = 514262569Simp <AT91_PIOB 0 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PB0 periph B */ 515262569Simp }; 516262569Simp 517262569Simp pinctrl_usart2_cts: usart2_cts-0 { 518262569Simp atmel,pins = 519262569Simp <AT91_PIOB 1 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PB1 periph B */ 520262569Simp }; 521262569Simp 522262569Simp pinctrl_usart2_sck: usart2_sck-0 { 523262569Simp atmel,pins = 524262569Simp <AT91_PIOB 2 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PB2 periph B */ 525262569Simp }; 526262569Simp }; 527262569Simp 528262569Simp uart0 { 529262569Simp pinctrl_uart0: uart0-0 { 530262569Simp atmel,pins = 531262569Simp <AT91_PIOC 8 AT91_PERIPH_C AT91_PINCTRL_NONE /* PC8 periph C */ 532262569Simp AT91_PIOC 9 AT91_PERIPH_C AT91_PINCTRL_PULL_UP>; /* PC9 periph C with pullup */ 533262569Simp }; 534262569Simp }; 535262569Simp 536262569Simp uart1 { 537262569Simp pinctrl_uart1: uart1-0 { 538262569Simp atmel,pins = 539262569Simp <AT91_PIOC 16 AT91_PERIPH_C AT91_PINCTRL_NONE /* PC16 periph C */ 540262569Simp AT91_PIOC 17 AT91_PERIPH_C AT91_PINCTRL_PULL_UP>; /* PC17 periph C with pullup */ 541262569Simp }; 542262569Simp }; 543262569Simp 544262569Simp nand { 545262569Simp pinctrl_nand: nand-0 { 546262569Simp atmel,pins = 547262569Simp <AT91_PIOD 0 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD0 periph A Read Enable */ 548262569Simp AT91_PIOD 1 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD1 periph A Write Enable */ 549262569Simp AT91_PIOD 2 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD2 periph A Address Latch Enable */ 550262569Simp AT91_PIOD 3 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD3 periph A Command Latch Enable */ 551262569Simp AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PD4 gpio Chip Enable pin pull_up */ 552262569Simp AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PD5 gpio RDY/BUSY pin pull_up */ 553262569Simp AT91_PIOD 6 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD6 periph A Data bit 0 */ 554262569Simp AT91_PIOD 7 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD7 periph A Data bit 1 */ 555262569Simp AT91_PIOD 8 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD8 periph A Data bit 2 */ 556262569Simp AT91_PIOD 9 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD9 periph A Data bit 3 */ 557262569Simp AT91_PIOD 10 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD10 periph A Data bit 4 */ 558262569Simp AT91_PIOD 11 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD11 periph A Data bit 5 */ 559262569Simp AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD12 periph A Data bit 6 */ 560262569Simp AT91_PIOD 13 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD13 periph A Data bit 7 */ 561262569Simp }; 562262569Simp 563262569Simp pinctrl_nand_16bits: nand_16bits-0 { 564262569Simp atmel,pins = 565262569Simp <AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD14 periph A Data bit 8 */ 566262569Simp AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD15 periph A Data bit 9 */ 567262569Simp AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD16 periph A Data bit 10 */ 568262569Simp AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD17 periph A Data bit 11 */ 569262569Simp AT91_PIOD 18 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD18 periph A Data bit 12 */ 570262569Simp AT91_PIOD 19 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD19 periph A Data bit 13 */ 571262569Simp AT91_PIOD 20 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD20 periph A Data bit 14 */ 572262569Simp AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD21 periph A Data bit 15 */ 573262569Simp }; 574262569Simp }; 575262569Simp 576262569Simp mmc0 { 577262569Simp pinctrl_mmc0_slot0_clk_cmd_dat0: mmc0_slot0_clk_cmd_dat0-0 { 578262569Simp atmel,pins = 579262569Simp <AT91_PIOA 17 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA17 periph A */ 580262569Simp AT91_PIOA 16 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA16 periph A with pullup */ 581262569Simp AT91_PIOA 15 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA15 periph A with pullup */ 582262569Simp }; 583262569Simp 584262569Simp pinctrl_mmc0_slot0_dat1_3: mmc0_slot0_dat1_3-0 { 585262569Simp atmel,pins = 586262569Simp <AT91_PIOA 18 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA18 periph A with pullup */ 587262569Simp AT91_PIOA 19 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA19 periph A with pullup */ 588262569Simp AT91_PIOA 20 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA20 periph A with pullup */ 589262569Simp }; 590262569Simp }; 591262569Simp 592262569Simp mmc1 { 593262569Simp pinctrl_mmc1_slot0_clk_cmd_dat0: mmc1_slot0_clk_cmd_dat0-0 { 594262569Simp atmel,pins = 595262569Simp <AT91_PIOA 13 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA13 periph B */ 596262569Simp AT91_PIOA 12 AT91_PERIPH_B AT91_PINCTRL_PULL_UP /* PA12 periph B with pullup */ 597262569Simp AT91_PIOA 11 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>; /* PA11 periph B with pullup */ 598262569Simp }; 599262569Simp 600262569Simp pinctrl_mmc1_slot0_dat1_3: mmc1_slot0_dat1_3-0 { 601262569Simp atmel,pins = 602262569Simp <AT91_PIOA 2 AT91_PERIPH_B AT91_PINCTRL_PULL_UP /* PA2 periph B with pullup */ 603262569Simp AT91_PIOA 3 AT91_PERIPH_B AT91_PINCTRL_PULL_UP /* PA3 periph B with pullup */ 604262569Simp AT91_PIOA 4 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>; /* PA4 periph B with pullup */ 605262569Simp }; 606262569Simp }; 607262569Simp 608262569Simp ssc0 { 609262569Simp pinctrl_ssc0_tx: ssc0_tx-0 { 610262569Simp atmel,pins = 611262569Simp <AT91_PIOA 24 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA24 periph B */ 612262569Simp AT91_PIOA 25 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA25 periph B */ 613262569Simp AT91_PIOA 26 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PA26 periph B */ 614262569Simp }; 615262569Simp 616262569Simp pinctrl_ssc0_rx: ssc0_rx-0 { 617262569Simp atmel,pins = 618262569Simp <AT91_PIOA 27 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA27 periph B */ 619262569Simp AT91_PIOA 28 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA28 periph B */ 620262569Simp AT91_PIOA 29 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PA29 periph B */ 621262569Simp }; 622262569Simp }; 623262569Simp 624262569Simp spi0 { 625262569Simp pinctrl_spi0: spi0-0 { 626262569Simp atmel,pins = 627262569Simp <AT91_PIOA 11 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA11 periph A SPI0_MISO pin */ 628262569Simp AT91_PIOA 12 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA12 periph A SPI0_MOSI pin */ 629262569Simp AT91_PIOA 13 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA13 periph A SPI0_SPCK pin */ 630262569Simp }; 631262569Simp }; 632262569Simp 633262569Simp spi1 { 634262569Simp pinctrl_spi1: spi1-0 { 635262569Simp atmel,pins = 636262569Simp <AT91_PIOA 21 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA21 periph B SPI1_MISO pin */ 637262569Simp AT91_PIOA 22 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA22 periph B SPI1_MOSI pin */ 638262569Simp AT91_PIOA 23 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PA23 periph B SPI1_SPCK pin */ 639262569Simp }; 640262569Simp }; 641262569Simp 642262569Simp i2c0 { 643262569Simp pinctrl_i2c0: i2c0-0 { 644262569Simp atmel,pins = 645262569Simp <AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA30 periph A I2C0 data */ 646262569Simp AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA31 periph A I2C0 clock */ 647262569Simp }; 648262569Simp }; 649262569Simp 650262569Simp i2c1 { 651262569Simp pinctrl_i2c1: i2c1-0 { 652262569Simp atmel,pins = 653262569Simp <AT91_PIOC 0 AT91_PERIPH_C AT91_PINCTRL_NONE /* PC0 periph C I2C1 data */ 654262569Simp AT91_PIOC 1 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* PC1 periph C I2C1 clock */ 655262569Simp }; 656262569Simp }; 657262569Simp 658262569Simp i2c2 { 659262569Simp pinctrl_i2c2: i2c2-0 { 660262569Simp atmel,pins = 661262569Simp <AT91_PIOB 4 AT91_PERIPH_B AT91_PINCTRL_NONE /* PB4 periph B I2C2 data */ 662262569Simp AT91_PIOB 5 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PB5 periph B I2C2 clock */ 663262569Simp }; 664262569Simp }; 665262569Simp 666262569Simp i2c_gpio0 { 667262569Simp pinctrl_i2c_gpio0: i2c_gpio0-0 { 668262569Simp atmel,pins = 669262569Simp <AT91_PIOA 30 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE /* PA30 gpio multidrive I2C0 data */ 670262569Simp AT91_PIOA 31 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE>; /* PA31 gpio multidrive I2C0 clock */ 671262569Simp }; 672262569Simp }; 673262569Simp 674262569Simp i2c_gpio1 { 675262569Simp pinctrl_i2c_gpio1: i2c_gpio1-0 { 676262569Simp atmel,pins = 677262569Simp <AT91_PIOC 0 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE /* PC0 gpio multidrive I2C1 data */ 678262569Simp AT91_PIOC 1 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE>; /* PC1 gpio multidrive I2C1 clock */ 679262569Simp }; 680262569Simp }; 681262569Simp 682262569Simp i2c_gpio2 { 683262569Simp pinctrl_i2c_gpio2: i2c_gpio2-0 { 684262569Simp atmel,pins = 685262569Simp <AT91_PIOB 4 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE /* PB4 gpio multidrive I2C2 data */ 686262569Simp AT91_PIOB 5 AT91_PERIPH_GPIO AT91_PINCTRL_MULTI_DRIVE>; /* PB5 gpio multidrive I2C2 clock */ 687262569Simp }; 688262569Simp }; 689262569Simp 690262569Simp tcb0 { 691262569Simp pinctrl_tcb0_tclk0: tcb0_tclk0-0 { 692262569Simp atmel,pins = <AT91_PIOA 24 AT91_PERIPH_A AT91_PINCTRL_NONE>; 693262569Simp }; 694262569Simp 695262569Simp pinctrl_tcb0_tclk1: tcb0_tclk1-0 { 696262569Simp atmel,pins = <AT91_PIOA 25 AT91_PERIPH_A AT91_PINCTRL_NONE>; 697262569Simp }; 698262569Simp 699262569Simp pinctrl_tcb0_tclk2: tcb0_tclk2-0 { 700262569Simp atmel,pins = <AT91_PIOA 26 AT91_PERIPH_A AT91_PINCTRL_NONE>; 701262569Simp }; 702262569Simp 703262569Simp pinctrl_tcb0_tioa0: tcb0_tioa0-0 { 704262569Simp atmel,pins = <AT91_PIOA 21 AT91_PERIPH_A AT91_PINCTRL_NONE>; 705262569Simp }; 706262569Simp 707262569Simp pinctrl_tcb0_tioa1: tcb0_tioa1-0 { 708262569Simp atmel,pins = <AT91_PIOA 22 AT91_PERIPH_A AT91_PINCTRL_NONE>; 709262569Simp }; 710262569Simp 711262569Simp pinctrl_tcb0_tioa2: tcb0_tioa2-0 { 712262569Simp atmel,pins = <AT91_PIOA 23 AT91_PERIPH_A AT91_PINCTRL_NONE>; 713262569Simp }; 714262569Simp 715262569Simp pinctrl_tcb0_tiob0: tcb0_tiob0-0 { 716262569Simp atmel,pins = <AT91_PIOA 27 AT91_PERIPH_A AT91_PINCTRL_NONE>; 717262569Simp }; 718262569Simp 719262569Simp pinctrl_tcb0_tiob1: tcb0_tiob1-0 { 720262569Simp atmel,pins = <AT91_PIOA 28 AT91_PERIPH_A AT91_PINCTRL_NONE>; 721262569Simp }; 722262569Simp 723262569Simp pinctrl_tcb0_tiob2: tcb0_tiob2-0 { 724262569Simp atmel,pins = <AT91_PIOA 29 AT91_PERIPH_A AT91_PINCTRL_NONE>; 725262569Simp }; 726262569Simp }; 727262569Simp 728262569Simp tcb1 { 729262569Simp pinctrl_tcb1_tclk0: tcb1_tclk0-0 { 730262569Simp atmel,pins = <AT91_PIOC 4 AT91_PERIPH_C AT91_PINCTRL_NONE>; 731262569Simp }; 732262569Simp 733262569Simp pinctrl_tcb1_tclk1: tcb1_tclk1-0 { 734262569Simp atmel,pins = <AT91_PIOC 7 AT91_PERIPH_C AT91_PINCTRL_NONE>; 735262569Simp }; 736262569Simp 737262569Simp pinctrl_tcb1_tclk2: tcb1_tclk2-0 { 738262569Simp atmel,pins = <AT91_PIOC 14 AT91_PERIPH_C AT91_PINCTRL_NONE>; 739262569Simp }; 740262569Simp 741262569Simp pinctrl_tcb1_tioa0: tcb1_tioa0-0 { 742262569Simp atmel,pins = <AT91_PIOC 2 AT91_PERIPH_C AT91_PINCTRL_NONE>; 743262569Simp }; 744262569Simp 745262569Simp pinctrl_tcb1_tioa1: tcb1_tioa1-0 { 746262569Simp atmel,pins = <AT91_PIOC 5 AT91_PERIPH_C AT91_PINCTRL_NONE>; 747262569Simp }; 748262569Simp 749262569Simp pinctrl_tcb1_tioa2: tcb1_tioa2-0 { 750262569Simp atmel,pins = <AT91_PIOC 12 AT91_PERIPH_C AT91_PINCTRL_NONE>; 751262569Simp }; 752262569Simp 753262569Simp pinctrl_tcb1_tiob0: tcb1_tiob0-0 { 754262569Simp atmel,pins = <AT91_PIOC 3 AT91_PERIPH_C AT91_PINCTRL_NONE>; 755262569Simp }; 756262569Simp 757262569Simp pinctrl_tcb1_tiob1: tcb1_tiob1-0 { 758262569Simp atmel,pins = <AT91_PIOC 6 AT91_PERIPH_C AT91_PINCTRL_NONE>; 759262569Simp }; 760262569Simp 761262569Simp pinctrl_tcb1_tiob2: tcb1_tiob2-0 { 762262569Simp atmel,pins = <AT91_PIOC 13 AT91_PERIPH_C AT91_PINCTRL_NONE>; 763262569Simp }; 764262569Simp }; 765262569Simp 766262569Simp pioA: gpio@fffff400 { 767262569Simp compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 768262569Simp reg = <0xfffff400 0x200>; 769262569Simp interrupts = <2 IRQ_TYPE_LEVEL_HIGH 1>; 770262569Simp #gpio-cells = <2>; 771262569Simp gpio-controller; 772262569Simp interrupt-controller; 773262569Simp #interrupt-cells = <2>; 774270864Simp clocks = <&pioAB_clk>; 775262569Simp }; 776262569Simp 777262569Simp pioB: gpio@fffff600 { 778262569Simp compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 779262569Simp reg = <0xfffff600 0x200>; 780262569Simp interrupts = <2 IRQ_TYPE_LEVEL_HIGH 1>; 781262569Simp #gpio-cells = <2>; 782262569Simp gpio-controller; 783262569Simp #gpio-lines = <19>; 784262569Simp interrupt-controller; 785262569Simp #interrupt-cells = <2>; 786270864Simp clocks = <&pioAB_clk>; 787262569Simp }; 788262569Simp 789262569Simp pioC: gpio@fffff800 { 790262569Simp compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 791262569Simp reg = <0xfffff800 0x200>; 792262569Simp interrupts = <3 IRQ_TYPE_LEVEL_HIGH 1>; 793262569Simp #gpio-cells = <2>; 794262569Simp gpio-controller; 795262569Simp interrupt-controller; 796262569Simp #interrupt-cells = <2>; 797270864Simp clocks = <&pioCD_clk>; 798262569Simp }; 799262569Simp 800262569Simp pioD: gpio@fffffa00 { 801262569Simp compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 802262569Simp reg = <0xfffffa00 0x200>; 803262569Simp interrupts = <3 IRQ_TYPE_LEVEL_HIGH 1>; 804262569Simp #gpio-cells = <2>; 805262569Simp gpio-controller; 806262569Simp #gpio-lines = <22>; 807262569Simp interrupt-controller; 808262569Simp #interrupt-cells = <2>; 809270864Simp clocks = <&pioCD_clk>; 810262569Simp }; 811262569Simp }; 812262569Simp 813262569Simp ssc0: ssc@f0010000 { 814262569Simp compatible = "atmel,at91sam9g45-ssc"; 815262569Simp reg = <0xf0010000 0x4000>; 816262569Simp interrupts = <28 IRQ_TYPE_LEVEL_HIGH 5>; 817262569Simp dmas = <&dma0 1 AT91_DMA_CFG_PER_ID(13)>, 818262569Simp <&dma0 1 AT91_DMA_CFG_PER_ID(14)>; 819262569Simp dma-names = "tx", "rx"; 820262569Simp pinctrl-names = "default"; 821262569Simp pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>; 822270864Simp clocks = <&ssc0_clk>; 823270864Simp clock-names = "pclk"; 824262569Simp status = "disabled"; 825262569Simp }; 826262569Simp 827262569Simp mmc0: mmc@f0008000 { 828262569Simp compatible = "atmel,hsmci"; 829262569Simp reg = <0xf0008000 0x600>; 830262569Simp interrupts = <12 IRQ_TYPE_LEVEL_HIGH 0>; 831262569Simp dmas = <&dma0 1 AT91_DMA_CFG_PER_ID(0)>; 832262569Simp dma-names = "rxtx"; 833262569Simp pinctrl-names = "default"; 834270864Simp clocks = <&mci0_clk>; 835270864Simp clock-names = "mci_clk"; 836262569Simp #address-cells = <1>; 837262569Simp #size-cells = <0>; 838262569Simp status = "disabled"; 839262569Simp }; 840262569Simp 841262569Simp mmc1: mmc@f000c000 { 842262569Simp compatible = "atmel,hsmci"; 843262569Simp reg = <0xf000c000 0x600>; 844262569Simp interrupts = <26 IRQ_TYPE_LEVEL_HIGH 0>; 845262569Simp dmas = <&dma1 1 AT91_DMA_CFG_PER_ID(0)>; 846262569Simp dma-names = "rxtx"; 847262569Simp pinctrl-names = "default"; 848270864Simp clocks = <&mci1_clk>; 849270864Simp clock-names = "mci_clk"; 850262569Simp #address-cells = <1>; 851262569Simp #size-cells = <0>; 852262569Simp status = "disabled"; 853262569Simp }; 854262569Simp 855262569Simp dbgu: serial@fffff200 { 856262569Simp compatible = "atmel,at91sam9260-usart"; 857262569Simp reg = <0xfffff200 0x200>; 858262569Simp interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; 859262569Simp pinctrl-names = "default"; 860262569Simp pinctrl-0 = <&pinctrl_dbgu>; 861270864Simp clocks = <&mck>; 862270864Simp clock-names = "usart"; 863262569Simp status = "disabled"; 864262569Simp }; 865262569Simp 866262569Simp usart0: serial@f801c000 { 867262569Simp compatible = "atmel,at91sam9260-usart"; 868262569Simp reg = <0xf801c000 0x200>; 869262569Simp interrupts = <5 IRQ_TYPE_LEVEL_HIGH 5>; 870262569Simp pinctrl-names = "default"; 871262569Simp pinctrl-0 = <&pinctrl_usart0>; 872270864Simp clocks = <&usart0_clk>; 873270864Simp clock-names = "usart"; 874262569Simp status = "disabled"; 875262569Simp }; 876262569Simp 877262569Simp usart1: serial@f8020000 { 878262569Simp compatible = "atmel,at91sam9260-usart"; 879262569Simp reg = <0xf8020000 0x200>; 880262569Simp interrupts = <6 IRQ_TYPE_LEVEL_HIGH 5>; 881262569Simp pinctrl-names = "default"; 882262569Simp pinctrl-0 = <&pinctrl_usart1>; 883270864Simp clocks = <&usart1_clk>; 884270864Simp clock-names = "usart"; 885262569Simp status = "disabled"; 886262569Simp }; 887262569Simp 888262569Simp usart2: serial@f8024000 { 889262569Simp compatible = "atmel,at91sam9260-usart"; 890262569Simp reg = <0xf8024000 0x200>; 891262569Simp interrupts = <7 IRQ_TYPE_LEVEL_HIGH 5>; 892262569Simp pinctrl-names = "default"; 893262569Simp pinctrl-0 = <&pinctrl_usart2>; 894270864Simp clocks = <&usart2_clk>; 895270864Simp clock-names = "usart"; 896262569Simp status = "disabled"; 897262569Simp }; 898262569Simp 899262569Simp i2c0: i2c@f8010000 { 900262569Simp compatible = "atmel,at91sam9x5-i2c"; 901262569Simp reg = <0xf8010000 0x100>; 902262569Simp interrupts = <9 IRQ_TYPE_LEVEL_HIGH 6>; 903262569Simp dmas = <&dma0 1 AT91_DMA_CFG_PER_ID(7)>, 904262569Simp <&dma0 1 AT91_DMA_CFG_PER_ID(8)>; 905262569Simp dma-names = "tx", "rx"; 906262569Simp #address-cells = <1>; 907262569Simp #size-cells = <0>; 908262569Simp pinctrl-names = "default"; 909262569Simp pinctrl-0 = <&pinctrl_i2c0>; 910270864Simp clocks = <&twi0_clk>; 911262569Simp status = "disabled"; 912262569Simp }; 913262569Simp 914262569Simp i2c1: i2c@f8014000 { 915262569Simp compatible = "atmel,at91sam9x5-i2c"; 916262569Simp reg = <0xf8014000 0x100>; 917262569Simp interrupts = <10 IRQ_TYPE_LEVEL_HIGH 6>; 918262569Simp dmas = <&dma1 1 AT91_DMA_CFG_PER_ID(5)>, 919262569Simp <&dma1 1 AT91_DMA_CFG_PER_ID(6)>; 920262569Simp dma-names = "tx", "rx"; 921262569Simp #address-cells = <1>; 922262569Simp #size-cells = <0>; 923262569Simp pinctrl-names = "default"; 924262569Simp pinctrl-0 = <&pinctrl_i2c1>; 925270864Simp clocks = <&twi1_clk>; 926262569Simp status = "disabled"; 927262569Simp }; 928262569Simp 929262569Simp i2c2: i2c@f8018000 { 930262569Simp compatible = "atmel,at91sam9x5-i2c"; 931262569Simp reg = <0xf8018000 0x100>; 932262569Simp interrupts = <11 IRQ_TYPE_LEVEL_HIGH 6>; 933262569Simp dmas = <&dma0 1 AT91_DMA_CFG_PER_ID(9)>, 934262569Simp <&dma0 1 AT91_DMA_CFG_PER_ID(10)>; 935262569Simp dma-names = "tx", "rx"; 936262569Simp #address-cells = <1>; 937262569Simp #size-cells = <0>; 938262569Simp pinctrl-names = "default"; 939262569Simp pinctrl-0 = <&pinctrl_i2c2>; 940270864Simp clocks = <&twi2_clk>; 941262569Simp status = "disabled"; 942262569Simp }; 943262569Simp 944262569Simp uart0: serial@f8040000 { 945262569Simp compatible = "atmel,at91sam9260-usart"; 946262569Simp reg = <0xf8040000 0x200>; 947262569Simp interrupts = <15 IRQ_TYPE_LEVEL_HIGH 5>; 948262569Simp pinctrl-names = "default"; 949262569Simp pinctrl-0 = <&pinctrl_uart0>; 950270864Simp clocks = <&uart0_clk>; 951270864Simp clock-names = "usart"; 952262569Simp status = "disabled"; 953262569Simp }; 954262569Simp 955262569Simp uart1: serial@f8044000 { 956262569Simp compatible = "atmel,at91sam9260-usart"; 957262569Simp reg = <0xf8044000 0x200>; 958262569Simp interrupts = <16 IRQ_TYPE_LEVEL_HIGH 5>; 959262569Simp pinctrl-names = "default"; 960262569Simp pinctrl-0 = <&pinctrl_uart1>; 961270864Simp clocks = <&uart1_clk>; 962270864Simp clock-names = "usart"; 963262569Simp status = "disabled"; 964262569Simp }; 965262569Simp 966262569Simp adc0: adc@f804c000 { 967270864Simp #address-cells = <1>; 968270864Simp #size-cells = <0>; 969262569Simp compatible = "atmel,at91sam9260-adc"; 970262569Simp reg = <0xf804c000 0x100>; 971262569Simp interrupts = <19 IRQ_TYPE_LEVEL_HIGH 0>; 972270864Simp clocks = <&adc_clk>, 973270864Simp <&adc_op_clk>; 974270864Simp clock-names = "adc_clk", "adc_op_clk"; 975270864Simp atmel,adc-use-external-triggers; 976262569Simp atmel,adc-channels-used = <0xffff>; 977262569Simp atmel,adc-vref = <3300>; 978262569Simp atmel,adc-startup-time = <40>; 979262569Simp atmel,adc-res = <8 10>; 980262569Simp atmel,adc-res-names = "lowres", "highres"; 981262569Simp atmel,adc-use-res = "highres"; 982262569Simp 983262569Simp trigger@0 { 984270864Simp reg = <0>; 985262569Simp trigger-name = "external-rising"; 986262569Simp trigger-value = <0x1>; 987262569Simp trigger-external; 988262569Simp }; 989262569Simp 990262569Simp trigger@1 { 991270864Simp reg = <1>; 992262569Simp trigger-name = "external-falling"; 993262569Simp trigger-value = <0x2>; 994262569Simp trigger-external; 995262569Simp }; 996262569Simp 997262569Simp trigger@2 { 998270864Simp reg = <2>; 999262569Simp trigger-name = "external-any"; 1000262569Simp trigger-value = <0x3>; 1001262569Simp trigger-external; 1002262569Simp }; 1003262569Simp 1004262569Simp trigger@3 { 1005270864Simp reg = <3>; 1006262569Simp trigger-name = "continuous"; 1007262569Simp trigger-value = <0x6>; 1008262569Simp }; 1009262569Simp }; 1010262569Simp 1011262569Simp spi0: spi@f0000000 { 1012262569Simp #address-cells = <1>; 1013262569Simp #size-cells = <0>; 1014262569Simp compatible = "atmel,at91rm9200-spi"; 1015262569Simp reg = <0xf0000000 0x100>; 1016262569Simp interrupts = <13 IRQ_TYPE_LEVEL_HIGH 3>; 1017262569Simp dmas = <&dma0 1 AT91_DMA_CFG_PER_ID(1)>, 1018262569Simp <&dma0 1 AT91_DMA_CFG_PER_ID(2)>; 1019262569Simp dma-names = "tx", "rx"; 1020262569Simp pinctrl-names = "default"; 1021262569Simp pinctrl-0 = <&pinctrl_spi0>; 1022270864Simp clocks = <&spi0_clk>; 1023270864Simp clock-names = "spi_clk"; 1024262569Simp status = "disabled"; 1025262569Simp }; 1026262569Simp 1027262569Simp spi1: spi@f0004000 { 1028262569Simp #address-cells = <1>; 1029262569Simp #size-cells = <0>; 1030262569Simp compatible = "atmel,at91rm9200-spi"; 1031262569Simp reg = <0xf0004000 0x100>; 1032262569Simp interrupts = <14 IRQ_TYPE_LEVEL_HIGH 3>; 1033262569Simp dmas = <&dma1 1 AT91_DMA_CFG_PER_ID(1)>, 1034262569Simp <&dma1 1 AT91_DMA_CFG_PER_ID(2)>; 1035262569Simp dma-names = "tx", "rx"; 1036262569Simp pinctrl-names = "default"; 1037262569Simp pinctrl-0 = <&pinctrl_spi1>; 1038270864Simp clocks = <&spi1_clk>; 1039270864Simp clock-names = "spi_clk"; 1040262569Simp status = "disabled"; 1041262569Simp }; 1042262569Simp 1043262569Simp usb2: gadget@f803c000 { 1044262569Simp #address-cells = <1>; 1045262569Simp #size-cells = <0>; 1046262569Simp compatible = "atmel,at91sam9rl-udc"; 1047262569Simp reg = <0x00500000 0x80000 1048262569Simp 0xf803c000 0x400>; 1049262569Simp interrupts = <23 IRQ_TYPE_LEVEL_HIGH 0>; 1050270864Simp clocks = <&usb>, <&udphs_clk>; 1051270864Simp clock-names = "hclk", "pclk"; 1052262569Simp status = "disabled"; 1053262569Simp 1054262569Simp ep0 { 1055262569Simp reg = <0>; 1056262569Simp atmel,fifo-size = <64>; 1057262569Simp atmel,nb-banks = <1>; 1058262569Simp }; 1059262569Simp 1060262569Simp ep1 { 1061262569Simp reg = <1>; 1062262569Simp atmel,fifo-size = <1024>; 1063262569Simp atmel,nb-banks = <2>; 1064262569Simp atmel,can-dma; 1065262569Simp atmel,can-isoc; 1066262569Simp }; 1067262569Simp 1068262569Simp ep2 { 1069262569Simp reg = <2>; 1070262569Simp atmel,fifo-size = <1024>; 1071262569Simp atmel,nb-banks = <2>; 1072262569Simp atmel,can-dma; 1073262569Simp atmel,can-isoc; 1074262569Simp }; 1075262569Simp 1076262569Simp ep3 { 1077262569Simp reg = <3>; 1078262569Simp atmel,fifo-size = <1024>; 1079262569Simp atmel,nb-banks = <3>; 1080262569Simp atmel,can-dma; 1081262569Simp }; 1082262569Simp 1083262569Simp ep4 { 1084262569Simp reg = <4>; 1085262569Simp atmel,fifo-size = <1024>; 1086262569Simp atmel,nb-banks = <3>; 1087262569Simp atmel,can-dma; 1088262569Simp }; 1089262569Simp 1090262569Simp ep5 { 1091262569Simp reg = <5>; 1092262569Simp atmel,fifo-size = <1024>; 1093262569Simp atmel,nb-banks = <3>; 1094262569Simp atmel,can-dma; 1095262569Simp atmel,can-isoc; 1096262569Simp }; 1097262569Simp 1098262569Simp ep6 { 1099262569Simp reg = <6>; 1100262569Simp atmel,fifo-size = <1024>; 1101262569Simp atmel,nb-banks = <3>; 1102262569Simp atmel,can-dma; 1103262569Simp atmel,can-isoc; 1104262569Simp }; 1105262569Simp }; 1106262569Simp 1107262569Simp watchdog@fffffe40 { 1108262569Simp compatible = "atmel,at91sam9260-wdt"; 1109262569Simp reg = <0xfffffe40 0x10>; 1110262569Simp interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; 1111262569Simp atmel,watchdog-type = "hardware"; 1112262569Simp atmel,reset-type = "all"; 1113262569Simp atmel,dbg-halt; 1114262569Simp atmel,idle-halt; 1115262569Simp status = "disabled"; 1116262569Simp }; 1117262569Simp 1118262569Simp rtc@fffffeb0 { 1119262569Simp compatible = "atmel,at91sam9x5-rtc"; 1120262569Simp reg = <0xfffffeb0 0x40>; 1121262569Simp interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; 1122262569Simp status = "disabled"; 1123262569Simp }; 1124262569Simp 1125262569Simp pwm0: pwm@f8034000 { 1126262569Simp compatible = "atmel,at91sam9rl-pwm"; 1127262569Simp reg = <0xf8034000 0x300>; 1128262569Simp interrupts = <18 IRQ_TYPE_LEVEL_HIGH 4>; 1129270864Simp clocks = <&pwm_clk>; 1130262569Simp #pwm-cells = <3>; 1131262569Simp status = "disabled"; 1132262569Simp }; 1133262569Simp }; 1134262569Simp 1135262569Simp nand0: nand@40000000 { 1136262569Simp compatible = "atmel,at91rm9200-nand"; 1137262569Simp #address-cells = <1>; 1138262569Simp #size-cells = <1>; 1139262569Simp reg = <0x40000000 0x10000000 1140262569Simp 0xffffe000 0x600 /* PMECC Registers */ 1141262569Simp 0xffffe600 0x200 /* PMECC Error Location Registers */ 1142262569Simp 0x00108000 0x18000 /* PMECC looup table in ROM code */ 1143262569Simp >; 1144262569Simp atmel,pmecc-lookup-table-offset = <0x0 0x8000>; 1145262569Simp atmel,nand-addr-offset = <21>; 1146262569Simp atmel,nand-cmd-offset = <22>; 1147270864Simp atmel,nand-has-dma; 1148262569Simp pinctrl-names = "default"; 1149262569Simp pinctrl-0 = <&pinctrl_nand>; 1150262569Simp gpios = <&pioD 5 GPIO_ACTIVE_HIGH 1151262569Simp &pioD 4 GPIO_ACTIVE_HIGH 1152262569Simp 0 1153262569Simp >; 1154262569Simp status = "disabled"; 1155262569Simp }; 1156262569Simp 1157262569Simp usb0: ohci@00600000 { 1158262569Simp compatible = "atmel,at91rm9200-ohci", "usb-ohci"; 1159262569Simp reg = <0x00600000 0x100000>; 1160262569Simp interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>; 1161270864Simp clocks = <&usb>, <&uhphs_clk>, <&uhphs_clk>, <&uhpck>; 1162270864Simp clock-names = "usb_clk", "ohci_clk", "hclk", "uhpck"; 1163262569Simp status = "disabled"; 1164262569Simp }; 1165262569Simp 1166262569Simp usb1: ehci@00700000 { 1167262569Simp compatible = "atmel,at91sam9g45-ehci", "usb-ehci"; 1168262569Simp reg = <0x00700000 0x100000>; 1169262569Simp interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>; 1170270864Simp clocks = <&usb>, <&uhphs_clk>, <&uhpck>; 1171270864Simp clock-names = "usb_clk", "ehci_clk", "uhpck"; 1172262569Simp status = "disabled"; 1173262569Simp }; 1174262569Simp }; 1175262569Simp 1176262569Simp i2c@0 { 1177262569Simp compatible = "i2c-gpio"; 1178262569Simp gpios = <&pioA 30 GPIO_ACTIVE_HIGH /* sda */ 1179262569Simp &pioA 31 GPIO_ACTIVE_HIGH /* scl */ 1180262569Simp >; 1181262569Simp i2c-gpio,sda-open-drain; 1182262569Simp i2c-gpio,scl-open-drain; 1183262569Simp i2c-gpio,delay-us = <2>; /* ~100 kHz */ 1184262569Simp #address-cells = <1>; 1185262569Simp #size-cells = <0>; 1186262569Simp pinctrl-names = "default"; 1187262569Simp pinctrl-0 = <&pinctrl_i2c_gpio0>; 1188262569Simp status = "disabled"; 1189262569Simp }; 1190262569Simp 1191262569Simp i2c@1 { 1192262569Simp compatible = "i2c-gpio"; 1193262569Simp gpios = <&pioC 0 GPIO_ACTIVE_HIGH /* sda */ 1194262569Simp &pioC 1 GPIO_ACTIVE_HIGH /* scl */ 1195262569Simp >; 1196262569Simp i2c-gpio,sda-open-drain; 1197262569Simp i2c-gpio,scl-open-drain; 1198262569Simp i2c-gpio,delay-us = <2>; /* ~100 kHz */ 1199262569Simp #address-cells = <1>; 1200262569Simp #size-cells = <0>; 1201262569Simp pinctrl-names = "default"; 1202262569Simp pinctrl-0 = <&pinctrl_i2c_gpio1>; 1203262569Simp status = "disabled"; 1204262569Simp }; 1205262569Simp 1206262569Simp i2c@2 { 1207262569Simp compatible = "i2c-gpio"; 1208262569Simp gpios = <&pioB 4 GPIO_ACTIVE_HIGH /* sda */ 1209262569Simp &pioB 5 GPIO_ACTIVE_HIGH /* scl */ 1210262569Simp >; 1211262569Simp i2c-gpio,sda-open-drain; 1212262569Simp i2c-gpio,scl-open-drain; 1213262569Simp i2c-gpio,delay-us = <2>; /* ~100 kHz */ 1214262569Simp #address-cells = <1>; 1215262569Simp #size-cells = <0>; 1216262569Simp pinctrl-names = "default"; 1217262569Simp pinctrl-0 = <&pinctrl_i2c_gpio2>; 1218262569Simp status = "disabled"; 1219262569Simp }; 1220262569Simp}; 1221