1*4882a593Smuzhiyun/* 2*4882a593Smuzhiyun * sama5d3.dtsi - Device Tree Include file for SAMA5D3 family SoC 3*4882a593Smuzhiyun * applies to SAMA5D31, SAMA5D33, SAMA5D34, SAMA5D35, SAMA5D36 SoC 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Copyright (C) 2013 Atmel, 6*4882a593Smuzhiyun * 2013 Ludovic Desroches <ludovic.desroches@atmel.com> 7*4882a593Smuzhiyun * 8*4882a593Smuzhiyun * Licensed under GPLv2 or later. 9*4882a593Smuzhiyun */ 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun#include "skeleton.dtsi" 12*4882a593Smuzhiyun#include <dt-bindings/dma/at91.h> 13*4882a593Smuzhiyun#include <dt-bindings/pinctrl/at91.h> 14*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/irq.h> 15*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h> 16*4882a593Smuzhiyun#include <dt-bindings/clock/at91.h> 17*4882a593Smuzhiyun 18*4882a593Smuzhiyun/ { 19*4882a593Smuzhiyun model = "Atmel SAMA5D3 family SoC"; 20*4882a593Smuzhiyun compatible = "atmel,sama5d3", "atmel,sama5"; 21*4882a593Smuzhiyun interrupt-parent = <&aic>; 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun aliases { 24*4882a593Smuzhiyun serial0 = &dbgu; 25*4882a593Smuzhiyun serial1 = &usart0; 26*4882a593Smuzhiyun serial2 = &usart1; 27*4882a593Smuzhiyun serial3 = &usart2; 28*4882a593Smuzhiyun serial4 = &usart3; 29*4882a593Smuzhiyun serial5 = &uart0; 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 i2c0 = &i2c0; 37*4882a593Smuzhiyun i2c1 = &i2c1; 38*4882a593Smuzhiyun i2c2 = &i2c2; 39*4882a593Smuzhiyun ssc0 = &ssc0; 40*4882a593Smuzhiyun ssc1 = &ssc1; 41*4882a593Smuzhiyun pwm0 = &pwm0; 42*4882a593Smuzhiyun }; 43*4882a593Smuzhiyun cpus { 44*4882a593Smuzhiyun #address-cells = <1>; 45*4882a593Smuzhiyun #size-cells = <0>; 46*4882a593Smuzhiyun cpu@0 { 47*4882a593Smuzhiyun device_type = "cpu"; 48*4882a593Smuzhiyun compatible = "arm,cortex-a5"; 49*4882a593Smuzhiyun reg = <0x0>; 50*4882a593Smuzhiyun }; 51*4882a593Smuzhiyun }; 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun pmu { 54*4882a593Smuzhiyun compatible = "arm,cortex-a5-pmu"; 55*4882a593Smuzhiyun interrupts = <46 IRQ_TYPE_LEVEL_HIGH 0>; 56*4882a593Smuzhiyun }; 57*4882a593Smuzhiyun 58*4882a593Smuzhiyun memory { 59*4882a593Smuzhiyun reg = <0x20000000 0x8000000>; 60*4882a593Smuzhiyun }; 61*4882a593Smuzhiyun 62*4882a593Smuzhiyun clocks { 63*4882a593Smuzhiyun slow_xtal: slow_xtal { 64*4882a593Smuzhiyun compatible = "fixed-clock"; 65*4882a593Smuzhiyun #clock-cells = <0>; 66*4882a593Smuzhiyun clock-frequency = <0>; 67*4882a593Smuzhiyun }; 68*4882a593Smuzhiyun 69*4882a593Smuzhiyun main_xtal: main_xtal { 70*4882a593Smuzhiyun compatible = "fixed-clock"; 71*4882a593Smuzhiyun #clock-cells = <0>; 72*4882a593Smuzhiyun clock-frequency = <0>; 73*4882a593Smuzhiyun }; 74*4882a593Smuzhiyun 75*4882a593Smuzhiyun adc_op_clk: adc_op_clk{ 76*4882a593Smuzhiyun compatible = "fixed-clock"; 77*4882a593Smuzhiyun #clock-cells = <0>; 78*4882a593Smuzhiyun clock-frequency = <1000000>; 79*4882a593Smuzhiyun }; 80*4882a593Smuzhiyun }; 81*4882a593Smuzhiyun 82*4882a593Smuzhiyun sram: sram@00300000 { 83*4882a593Smuzhiyun compatible = "mmio-sram"; 84*4882a593Smuzhiyun reg = <0x00300000 0x20000>; 85*4882a593Smuzhiyun }; 86*4882a593Smuzhiyun 87*4882a593Smuzhiyun ahb { 88*4882a593Smuzhiyun compatible = "simple-bus"; 89*4882a593Smuzhiyun #address-cells = <1>; 90*4882a593Smuzhiyun #size-cells = <1>; 91*4882a593Smuzhiyun ranges; 92*4882a593Smuzhiyun u-boot,dm-pre-reloc; 93*4882a593Smuzhiyun 94*4882a593Smuzhiyun apb { 95*4882a593Smuzhiyun compatible = "simple-bus"; 96*4882a593Smuzhiyun #address-cells = <1>; 97*4882a593Smuzhiyun #size-cells = <1>; 98*4882a593Smuzhiyun ranges; 99*4882a593Smuzhiyun u-boot,dm-pre-reloc; 100*4882a593Smuzhiyun 101*4882a593Smuzhiyun mmc0: mmc@f0000000 { 102*4882a593Smuzhiyun compatible = "atmel,hsmci"; 103*4882a593Smuzhiyun reg = <0xf0000000 0x600>; 104*4882a593Smuzhiyun interrupts = <21 IRQ_TYPE_LEVEL_HIGH 0>; 105*4882a593Smuzhiyun dmas = <&dma0 2 AT91_DMA_CFG_PER_ID(0)>; 106*4882a593Smuzhiyun dma-names = "rxtx"; 107*4882a593Smuzhiyun pinctrl-names = "default"; 108*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_dat4_7>; 109*4882a593Smuzhiyun status = "disabled"; 110*4882a593Smuzhiyun #address-cells = <1>; 111*4882a593Smuzhiyun #size-cells = <0>; 112*4882a593Smuzhiyun clocks = <&mci0_clk>; 113*4882a593Smuzhiyun clock-names = "mci_clk"; 114*4882a593Smuzhiyun }; 115*4882a593Smuzhiyun 116*4882a593Smuzhiyun spi0: spi@f0004000 { 117*4882a593Smuzhiyun #address-cells = <1>; 118*4882a593Smuzhiyun #size-cells = <0>; 119*4882a593Smuzhiyun compatible = "atmel,at91rm9200-spi"; 120*4882a593Smuzhiyun reg = <0xf0004000 0x100>; 121*4882a593Smuzhiyun interrupts = <24 IRQ_TYPE_LEVEL_HIGH 3>; 122*4882a593Smuzhiyun dmas = <&dma0 2 AT91_DMA_CFG_PER_ID(1)>, 123*4882a593Smuzhiyun <&dma0 2 AT91_DMA_CFG_PER_ID(2)>; 124*4882a593Smuzhiyun dma-names = "tx", "rx"; 125*4882a593Smuzhiyun pinctrl-names = "default"; 126*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_spi0>; 127*4882a593Smuzhiyun clocks = <&spi0_clk>; 128*4882a593Smuzhiyun clock-names = "spi_clk"; 129*4882a593Smuzhiyun status = "disabled"; 130*4882a593Smuzhiyun }; 131*4882a593Smuzhiyun 132*4882a593Smuzhiyun ssc0: ssc@f0008000 { 133*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-ssc"; 134*4882a593Smuzhiyun reg = <0xf0008000 0x4000>; 135*4882a593Smuzhiyun interrupts = <38 IRQ_TYPE_LEVEL_HIGH 4>; 136*4882a593Smuzhiyun dmas = <&dma0 2 AT91_DMA_CFG_PER_ID(13)>, 137*4882a593Smuzhiyun <&dma0 2 AT91_DMA_CFG_PER_ID(14)>; 138*4882a593Smuzhiyun dma-names = "tx", "rx"; 139*4882a593Smuzhiyun pinctrl-names = "default"; 140*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>; 141*4882a593Smuzhiyun clocks = <&ssc0_clk>; 142*4882a593Smuzhiyun clock-names = "pclk"; 143*4882a593Smuzhiyun status = "disabled"; 144*4882a593Smuzhiyun }; 145*4882a593Smuzhiyun 146*4882a593Smuzhiyun tcb0: timer@f0010000 { 147*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-tcb"; 148*4882a593Smuzhiyun reg = <0xf0010000 0x100>; 149*4882a593Smuzhiyun interrupts = <26 IRQ_TYPE_LEVEL_HIGH 0>; 150*4882a593Smuzhiyun clocks = <&tcb0_clk>, <&clk32k>; 151*4882a593Smuzhiyun clock-names = "t0_clk", "slow_clk"; 152*4882a593Smuzhiyun }; 153*4882a593Smuzhiyun 154*4882a593Smuzhiyun i2c0: i2c@f0014000 { 155*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-i2c"; 156*4882a593Smuzhiyun reg = <0xf0014000 0x4000>; 157*4882a593Smuzhiyun interrupts = <18 IRQ_TYPE_LEVEL_HIGH 6>; 158*4882a593Smuzhiyun dmas = <&dma0 2 AT91_DMA_CFG_PER_ID(7)>, 159*4882a593Smuzhiyun <&dma0 2 AT91_DMA_CFG_PER_ID(8)>; 160*4882a593Smuzhiyun dma-names = "tx", "rx"; 161*4882a593Smuzhiyun pinctrl-names = "default"; 162*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_i2c0>; 163*4882a593Smuzhiyun #address-cells = <1>; 164*4882a593Smuzhiyun #size-cells = <0>; 165*4882a593Smuzhiyun clocks = <&twi0_clk>; 166*4882a593Smuzhiyun status = "disabled"; 167*4882a593Smuzhiyun }; 168*4882a593Smuzhiyun 169*4882a593Smuzhiyun i2c1: i2c@f0018000 { 170*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-i2c"; 171*4882a593Smuzhiyun reg = <0xf0018000 0x4000>; 172*4882a593Smuzhiyun interrupts = <19 IRQ_TYPE_LEVEL_HIGH 6>; 173*4882a593Smuzhiyun dmas = <&dma0 2 AT91_DMA_CFG_PER_ID(9)>, 174*4882a593Smuzhiyun <&dma0 2 AT91_DMA_CFG_PER_ID(10)>; 175*4882a593Smuzhiyun dma-names = "tx", "rx"; 176*4882a593Smuzhiyun pinctrl-names = "default"; 177*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_i2c1>; 178*4882a593Smuzhiyun #address-cells = <1>; 179*4882a593Smuzhiyun #size-cells = <0>; 180*4882a593Smuzhiyun clocks = <&twi1_clk>; 181*4882a593Smuzhiyun status = "disabled"; 182*4882a593Smuzhiyun }; 183*4882a593Smuzhiyun 184*4882a593Smuzhiyun usart0: serial@f001c000 { 185*4882a593Smuzhiyun compatible = "atmel,at91sam9260-usart"; 186*4882a593Smuzhiyun reg = <0xf001c000 0x100>; 187*4882a593Smuzhiyun interrupts = <12 IRQ_TYPE_LEVEL_HIGH 5>; 188*4882a593Smuzhiyun dmas = <&dma0 2 AT91_DMA_CFG_PER_ID(3)>, 189*4882a593Smuzhiyun <&dma0 2 (AT91_DMA_CFG_PER_ID(4) | AT91_DMA_CFG_FIFOCFG_ASAP)>; 190*4882a593Smuzhiyun dma-names = "tx", "rx"; 191*4882a593Smuzhiyun pinctrl-names = "default"; 192*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_usart0>; 193*4882a593Smuzhiyun clocks = <&usart0_clk>; 194*4882a593Smuzhiyun clock-names = "usart"; 195*4882a593Smuzhiyun status = "disabled"; 196*4882a593Smuzhiyun }; 197*4882a593Smuzhiyun 198*4882a593Smuzhiyun usart1: serial@f0020000 { 199*4882a593Smuzhiyun compatible = "atmel,at91sam9260-usart"; 200*4882a593Smuzhiyun reg = <0xf0020000 0x100>; 201*4882a593Smuzhiyun interrupts = <13 IRQ_TYPE_LEVEL_HIGH 5>; 202*4882a593Smuzhiyun dmas = <&dma0 2 AT91_DMA_CFG_PER_ID(5)>, 203*4882a593Smuzhiyun <&dma0 2 (AT91_DMA_CFG_PER_ID(6) | AT91_DMA_CFG_FIFOCFG_ASAP)>; 204*4882a593Smuzhiyun dma-names = "tx", "rx"; 205*4882a593Smuzhiyun pinctrl-names = "default"; 206*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_usart1>; 207*4882a593Smuzhiyun clocks = <&usart1_clk>; 208*4882a593Smuzhiyun clock-names = "usart"; 209*4882a593Smuzhiyun status = "disabled"; 210*4882a593Smuzhiyun }; 211*4882a593Smuzhiyun 212*4882a593Smuzhiyun uart0: serial@f0024000 { 213*4882a593Smuzhiyun compatible = "atmel,at91sam9260-usart"; 214*4882a593Smuzhiyun reg = <0xf0024000 0x100>; 215*4882a593Smuzhiyun interrupts = <16 IRQ_TYPE_LEVEL_HIGH 5>; 216*4882a593Smuzhiyun pinctrl-names = "default"; 217*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_uart0>; 218*4882a593Smuzhiyun clocks = <&uart0_clk>; 219*4882a593Smuzhiyun clock-names = "usart"; 220*4882a593Smuzhiyun status = "disabled"; 221*4882a593Smuzhiyun }; 222*4882a593Smuzhiyun 223*4882a593Smuzhiyun pwm0: pwm@f002c000 { 224*4882a593Smuzhiyun compatible = "atmel,sama5d3-pwm"; 225*4882a593Smuzhiyun reg = <0xf002c000 0x300>; 226*4882a593Smuzhiyun interrupts = <28 IRQ_TYPE_LEVEL_HIGH 4>; 227*4882a593Smuzhiyun #pwm-cells = <3>; 228*4882a593Smuzhiyun clocks = <&pwm_clk>; 229*4882a593Smuzhiyun status = "disabled"; 230*4882a593Smuzhiyun }; 231*4882a593Smuzhiyun 232*4882a593Smuzhiyun isi: isi@f0034000 { 233*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-isi"; 234*4882a593Smuzhiyun reg = <0xf0034000 0x4000>; 235*4882a593Smuzhiyun interrupts = <37 IRQ_TYPE_LEVEL_HIGH 5>; 236*4882a593Smuzhiyun pinctrl-names = "default"; 237*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_isi_data_0_7>; 238*4882a593Smuzhiyun clocks = <&isi_clk>; 239*4882a593Smuzhiyun clock-names = "isi_clk"; 240*4882a593Smuzhiyun status = "disabled"; 241*4882a593Smuzhiyun port { 242*4882a593Smuzhiyun #address-cells = <1>; 243*4882a593Smuzhiyun #size-cells = <0>; 244*4882a593Smuzhiyun }; 245*4882a593Smuzhiyun }; 246*4882a593Smuzhiyun 247*4882a593Smuzhiyun sfr: sfr@f0038000 { 248*4882a593Smuzhiyun compatible = "atmel,sama5d3-sfr", "syscon"; 249*4882a593Smuzhiyun reg = <0xf0038000 0x60>; 250*4882a593Smuzhiyun }; 251*4882a593Smuzhiyun 252*4882a593Smuzhiyun mmc1: mmc@f8000000 { 253*4882a593Smuzhiyun compatible = "atmel,hsmci"; 254*4882a593Smuzhiyun reg = <0xf8000000 0x600>; 255*4882a593Smuzhiyun interrupts = <22 IRQ_TYPE_LEVEL_HIGH 0>; 256*4882a593Smuzhiyun dmas = <&dma1 2 AT91_DMA_CFG_PER_ID(0)>; 257*4882a593Smuzhiyun dma-names = "rxtx"; 258*4882a593Smuzhiyun pinctrl-names = "default"; 259*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3>; 260*4882a593Smuzhiyun status = "disabled"; 261*4882a593Smuzhiyun #address-cells = <1>; 262*4882a593Smuzhiyun #size-cells = <0>; 263*4882a593Smuzhiyun clocks = <&mci1_clk>; 264*4882a593Smuzhiyun clock-names = "mci_clk"; 265*4882a593Smuzhiyun }; 266*4882a593Smuzhiyun 267*4882a593Smuzhiyun spi1: spi@f8008000 { 268*4882a593Smuzhiyun #address-cells = <1>; 269*4882a593Smuzhiyun #size-cells = <0>; 270*4882a593Smuzhiyun compatible = "atmel,at91rm9200-spi"; 271*4882a593Smuzhiyun reg = <0xf8008000 0x100>; 272*4882a593Smuzhiyun interrupts = <25 IRQ_TYPE_LEVEL_HIGH 3>; 273*4882a593Smuzhiyun dmas = <&dma1 2 AT91_DMA_CFG_PER_ID(15)>, 274*4882a593Smuzhiyun <&dma1 2 AT91_DMA_CFG_PER_ID(16)>; 275*4882a593Smuzhiyun dma-names = "tx", "rx"; 276*4882a593Smuzhiyun pinctrl-names = "default"; 277*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_spi1>; 278*4882a593Smuzhiyun clocks = <&spi1_clk>; 279*4882a593Smuzhiyun clock-names = "spi_clk"; 280*4882a593Smuzhiyun status = "disabled"; 281*4882a593Smuzhiyun }; 282*4882a593Smuzhiyun 283*4882a593Smuzhiyun ssc1: ssc@f800c000 { 284*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-ssc"; 285*4882a593Smuzhiyun reg = <0xf800c000 0x4000>; 286*4882a593Smuzhiyun interrupts = <39 IRQ_TYPE_LEVEL_HIGH 4>; 287*4882a593Smuzhiyun dmas = <&dma1 2 AT91_DMA_CFG_PER_ID(3)>, 288*4882a593Smuzhiyun <&dma1 2 AT91_DMA_CFG_PER_ID(4)>; 289*4882a593Smuzhiyun dma-names = "tx", "rx"; 290*4882a593Smuzhiyun pinctrl-names = "default"; 291*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_ssc1_tx &pinctrl_ssc1_rx>; 292*4882a593Smuzhiyun clocks = <&ssc1_clk>; 293*4882a593Smuzhiyun clock-names = "pclk"; 294*4882a593Smuzhiyun status = "disabled"; 295*4882a593Smuzhiyun }; 296*4882a593Smuzhiyun 297*4882a593Smuzhiyun adc0: adc@f8018000 { 298*4882a593Smuzhiyun #address-cells = <1>; 299*4882a593Smuzhiyun #size-cells = <0>; 300*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-adc"; 301*4882a593Smuzhiyun reg = <0xf8018000 0x100>; 302*4882a593Smuzhiyun interrupts = <29 IRQ_TYPE_LEVEL_HIGH 5>; 303*4882a593Smuzhiyun pinctrl-names = "default"; 304*4882a593Smuzhiyun pinctrl-0 = < 305*4882a593Smuzhiyun &pinctrl_adc0_adtrg 306*4882a593Smuzhiyun &pinctrl_adc0_ad0 307*4882a593Smuzhiyun &pinctrl_adc0_ad1 308*4882a593Smuzhiyun &pinctrl_adc0_ad2 309*4882a593Smuzhiyun &pinctrl_adc0_ad3 310*4882a593Smuzhiyun &pinctrl_adc0_ad4 311*4882a593Smuzhiyun &pinctrl_adc0_ad5 312*4882a593Smuzhiyun &pinctrl_adc0_ad6 313*4882a593Smuzhiyun &pinctrl_adc0_ad7 314*4882a593Smuzhiyun &pinctrl_adc0_ad8 315*4882a593Smuzhiyun &pinctrl_adc0_ad9 316*4882a593Smuzhiyun &pinctrl_adc0_ad10 317*4882a593Smuzhiyun &pinctrl_adc0_ad11 318*4882a593Smuzhiyun >; 319*4882a593Smuzhiyun clocks = <&adc_clk>, 320*4882a593Smuzhiyun <&adc_op_clk>; 321*4882a593Smuzhiyun clock-names = "adc_clk", "adc_op_clk"; 322*4882a593Smuzhiyun atmel,adc-channels-used = <0xfff>; 323*4882a593Smuzhiyun atmel,adc-startup-time = <40>; 324*4882a593Smuzhiyun atmel,adc-use-external-triggers; 325*4882a593Smuzhiyun atmel,adc-vref = <3000>; 326*4882a593Smuzhiyun atmel,adc-res = <10 12>; 327*4882a593Smuzhiyun atmel,adc-sample-hold-time = <11>; 328*4882a593Smuzhiyun atmel,adc-res-names = "lowres", "highres"; 329*4882a593Smuzhiyun status = "disabled"; 330*4882a593Smuzhiyun 331*4882a593Smuzhiyun trigger@0 { 332*4882a593Smuzhiyun reg = <0>; 333*4882a593Smuzhiyun trigger-name = "external-rising"; 334*4882a593Smuzhiyun trigger-value = <0x1>; 335*4882a593Smuzhiyun trigger-external; 336*4882a593Smuzhiyun }; 337*4882a593Smuzhiyun trigger@1 { 338*4882a593Smuzhiyun reg = <1>; 339*4882a593Smuzhiyun trigger-name = "external-falling"; 340*4882a593Smuzhiyun trigger-value = <0x2>; 341*4882a593Smuzhiyun trigger-external; 342*4882a593Smuzhiyun }; 343*4882a593Smuzhiyun trigger@2 { 344*4882a593Smuzhiyun reg = <2>; 345*4882a593Smuzhiyun trigger-name = "external-any"; 346*4882a593Smuzhiyun trigger-value = <0x3>; 347*4882a593Smuzhiyun trigger-external; 348*4882a593Smuzhiyun }; 349*4882a593Smuzhiyun trigger@3 { 350*4882a593Smuzhiyun reg = <3>; 351*4882a593Smuzhiyun trigger-name = "continuous"; 352*4882a593Smuzhiyun trigger-value = <0x6>; 353*4882a593Smuzhiyun }; 354*4882a593Smuzhiyun }; 355*4882a593Smuzhiyun 356*4882a593Smuzhiyun i2c2: i2c@f801c000 { 357*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-i2c"; 358*4882a593Smuzhiyun reg = <0xf801c000 0x4000>; 359*4882a593Smuzhiyun interrupts = <20 IRQ_TYPE_LEVEL_HIGH 6>; 360*4882a593Smuzhiyun dmas = <&dma1 2 AT91_DMA_CFG_PER_ID(11)>, 361*4882a593Smuzhiyun <&dma1 2 AT91_DMA_CFG_PER_ID(12)>; 362*4882a593Smuzhiyun dma-names = "tx", "rx"; 363*4882a593Smuzhiyun pinctrl-names = "default"; 364*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_i2c2>; 365*4882a593Smuzhiyun #address-cells = <1>; 366*4882a593Smuzhiyun #size-cells = <0>; 367*4882a593Smuzhiyun clocks = <&twi2_clk>; 368*4882a593Smuzhiyun status = "disabled"; 369*4882a593Smuzhiyun }; 370*4882a593Smuzhiyun 371*4882a593Smuzhiyun usart2: serial@f8020000 { 372*4882a593Smuzhiyun compatible = "atmel,at91sam9260-usart"; 373*4882a593Smuzhiyun reg = <0xf8020000 0x100>; 374*4882a593Smuzhiyun interrupts = <14 IRQ_TYPE_LEVEL_HIGH 5>; 375*4882a593Smuzhiyun dmas = <&dma1 2 AT91_DMA_CFG_PER_ID(7)>, 376*4882a593Smuzhiyun <&dma1 2 (AT91_DMA_CFG_PER_ID(8) | AT91_DMA_CFG_FIFOCFG_ASAP)>; 377*4882a593Smuzhiyun dma-names = "tx", "rx"; 378*4882a593Smuzhiyun pinctrl-names = "default"; 379*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_usart2>; 380*4882a593Smuzhiyun clocks = <&usart2_clk>; 381*4882a593Smuzhiyun clock-names = "usart"; 382*4882a593Smuzhiyun status = "disabled"; 383*4882a593Smuzhiyun }; 384*4882a593Smuzhiyun 385*4882a593Smuzhiyun usart3: serial@f8024000 { 386*4882a593Smuzhiyun compatible = "atmel,at91sam9260-usart"; 387*4882a593Smuzhiyun reg = <0xf8024000 0x100>; 388*4882a593Smuzhiyun interrupts = <15 IRQ_TYPE_LEVEL_HIGH 5>; 389*4882a593Smuzhiyun dmas = <&dma1 2 AT91_DMA_CFG_PER_ID(9)>, 390*4882a593Smuzhiyun <&dma1 2 (AT91_DMA_CFG_PER_ID(10) | AT91_DMA_CFG_FIFOCFG_ASAP)>; 391*4882a593Smuzhiyun dma-names = "tx", "rx"; 392*4882a593Smuzhiyun pinctrl-names = "default"; 393*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_usart3>; 394*4882a593Smuzhiyun clocks = <&usart3_clk>; 395*4882a593Smuzhiyun clock-names = "usart"; 396*4882a593Smuzhiyun status = "disabled"; 397*4882a593Smuzhiyun }; 398*4882a593Smuzhiyun 399*4882a593Smuzhiyun sha@f8034000 { 400*4882a593Smuzhiyun compatible = "atmel,at91sam9g46-sha"; 401*4882a593Smuzhiyun reg = <0xf8034000 0x100>; 402*4882a593Smuzhiyun interrupts = <42 IRQ_TYPE_LEVEL_HIGH 0>; 403*4882a593Smuzhiyun dmas = <&dma1 2 AT91_DMA_CFG_PER_ID(17)>; 404*4882a593Smuzhiyun dma-names = "tx"; 405*4882a593Smuzhiyun clocks = <&sha_clk>; 406*4882a593Smuzhiyun clock-names = "sha_clk"; 407*4882a593Smuzhiyun }; 408*4882a593Smuzhiyun 409*4882a593Smuzhiyun aes@f8038000 { 410*4882a593Smuzhiyun compatible = "atmel,at91sam9g46-aes"; 411*4882a593Smuzhiyun reg = <0xf8038000 0x100>; 412*4882a593Smuzhiyun interrupts = <43 IRQ_TYPE_LEVEL_HIGH 0>; 413*4882a593Smuzhiyun dmas = <&dma1 2 AT91_DMA_CFG_PER_ID(18)>, 414*4882a593Smuzhiyun <&dma1 2 AT91_DMA_CFG_PER_ID(19)>; 415*4882a593Smuzhiyun dma-names = "tx", "rx"; 416*4882a593Smuzhiyun clocks = <&aes_clk>; 417*4882a593Smuzhiyun clock-names = "aes_clk"; 418*4882a593Smuzhiyun }; 419*4882a593Smuzhiyun 420*4882a593Smuzhiyun tdes@f803c000 { 421*4882a593Smuzhiyun compatible = "atmel,at91sam9g46-tdes"; 422*4882a593Smuzhiyun reg = <0xf803c000 0x100>; 423*4882a593Smuzhiyun interrupts = <44 IRQ_TYPE_LEVEL_HIGH 0>; 424*4882a593Smuzhiyun dmas = <&dma1 2 AT91_DMA_CFG_PER_ID(20)>, 425*4882a593Smuzhiyun <&dma1 2 AT91_DMA_CFG_PER_ID(21)>; 426*4882a593Smuzhiyun dma-names = "tx", "rx"; 427*4882a593Smuzhiyun clocks = <&tdes_clk>; 428*4882a593Smuzhiyun clock-names = "tdes_clk"; 429*4882a593Smuzhiyun }; 430*4882a593Smuzhiyun 431*4882a593Smuzhiyun trng@f8040000 { 432*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-trng"; 433*4882a593Smuzhiyun reg = <0xf8040000 0x100>; 434*4882a593Smuzhiyun interrupts = <45 IRQ_TYPE_LEVEL_HIGH 0>; 435*4882a593Smuzhiyun clocks = <&trng_clk>; 436*4882a593Smuzhiyun }; 437*4882a593Smuzhiyun 438*4882a593Smuzhiyun dma0: dma-controller@ffffe600 { 439*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-dma"; 440*4882a593Smuzhiyun reg = <0xffffe600 0x200>; 441*4882a593Smuzhiyun interrupts = <30 IRQ_TYPE_LEVEL_HIGH 0>; 442*4882a593Smuzhiyun #dma-cells = <2>; 443*4882a593Smuzhiyun clocks = <&dma0_clk>; 444*4882a593Smuzhiyun clock-names = "dma_clk"; 445*4882a593Smuzhiyun }; 446*4882a593Smuzhiyun 447*4882a593Smuzhiyun dma1: dma-controller@ffffe800 { 448*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-dma"; 449*4882a593Smuzhiyun reg = <0xffffe800 0x200>; 450*4882a593Smuzhiyun interrupts = <31 IRQ_TYPE_LEVEL_HIGH 0>; 451*4882a593Smuzhiyun #dma-cells = <2>; 452*4882a593Smuzhiyun clocks = <&dma1_clk>; 453*4882a593Smuzhiyun clock-names = "dma_clk"; 454*4882a593Smuzhiyun }; 455*4882a593Smuzhiyun 456*4882a593Smuzhiyun ramc0: ramc@ffffea00 { 457*4882a593Smuzhiyun compatible = "atmel,sama5d3-ddramc"; 458*4882a593Smuzhiyun reg = <0xffffea00 0x200>; 459*4882a593Smuzhiyun clocks = <&ddrck>, <&mpddr_clk>; 460*4882a593Smuzhiyun clock-names = "ddrck", "mpddr"; 461*4882a593Smuzhiyun }; 462*4882a593Smuzhiyun 463*4882a593Smuzhiyun dbgu: serial@ffffee00 { 464*4882a593Smuzhiyun compatible = "atmel,at91sam9260-dbgu", "atmel,at91sam9260-usart"; 465*4882a593Smuzhiyun reg = <0xffffee00 0x200>; 466*4882a593Smuzhiyun interrupts = <2 IRQ_TYPE_LEVEL_HIGH 7>; 467*4882a593Smuzhiyun dmas = <&dma1 2 AT91_DMA_CFG_PER_ID(13)>, 468*4882a593Smuzhiyun <&dma1 2 (AT91_DMA_CFG_PER_ID(14) | AT91_DMA_CFG_FIFOCFG_ASAP)>; 469*4882a593Smuzhiyun dma-names = "tx", "rx"; 470*4882a593Smuzhiyun pinctrl-names = "default"; 471*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_dbgu>; 472*4882a593Smuzhiyun clocks = <&dbgu_clk>; 473*4882a593Smuzhiyun clock-names = "usart"; 474*4882a593Smuzhiyun status = "disabled"; 475*4882a593Smuzhiyun }; 476*4882a593Smuzhiyun 477*4882a593Smuzhiyun aic: interrupt-controller@fffff000 { 478*4882a593Smuzhiyun #interrupt-cells = <3>; 479*4882a593Smuzhiyun compatible = "atmel,sama5d3-aic"; 480*4882a593Smuzhiyun interrupt-controller; 481*4882a593Smuzhiyun reg = <0xfffff000 0x200>; 482*4882a593Smuzhiyun atmel,external-irqs = <47>; 483*4882a593Smuzhiyun }; 484*4882a593Smuzhiyun 485*4882a593Smuzhiyun pinctrl@fffff200 { 486*4882a593Smuzhiyun u-boot,dm-pre-reloc; 487*4882a593Smuzhiyun #address-cells = <1>; 488*4882a593Smuzhiyun #size-cells = <1>; 489*4882a593Smuzhiyun compatible = "atmel,sama5d3-pinctrl", "atmel,at91sam9x5-pinctrl", "simple-bus"; 490*4882a593Smuzhiyun ranges = <0xfffff200 0xfffff200 0xa00>; 491*4882a593Smuzhiyun atmel,mux-mask = < 492*4882a593Smuzhiyun /* A B C */ 493*4882a593Smuzhiyun 0xffffffff 0xc0fc0000 0xc0ff0000 /* pioA */ 494*4882a593Smuzhiyun 0xffffffff 0x0ff8ffff 0x00000000 /* pioB */ 495*4882a593Smuzhiyun 0xffffffff 0xbc00f1ff 0x7c00fc00 /* pioC */ 496*4882a593Smuzhiyun 0xffffffff 0xc001c0e0 0x0001c1e0 /* pioD */ 497*4882a593Smuzhiyun 0xffffffff 0xbf9f8000 0x18000000 /* pioE */ 498*4882a593Smuzhiyun >; 499*4882a593Smuzhiyun reg = <0xfffff200 0x100 /* pioA */ 500*4882a593Smuzhiyun 0xfffff400 0x100 /* pioB */ 501*4882a593Smuzhiyun 0xfffff600 0x100 /* pioC */ 502*4882a593Smuzhiyun 0xfffff800 0x100 /* pioD */ 503*4882a593Smuzhiyun 0xfffffa00 0x100 /* pioE */ 504*4882a593Smuzhiyun >; 505*4882a593Smuzhiyun 506*4882a593Smuzhiyun /* shared pinctrl settings */ 507*4882a593Smuzhiyun adc0 { 508*4882a593Smuzhiyun pinctrl_adc0_adtrg: adc0_adtrg { 509*4882a593Smuzhiyun atmel,pins = 510*4882a593Smuzhiyun <AT91_PIOD 19 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD19 periph A ADTRG */ 511*4882a593Smuzhiyun }; 512*4882a593Smuzhiyun pinctrl_adc0_ad0: adc0_ad0 { 513*4882a593Smuzhiyun atmel,pins = 514*4882a593Smuzhiyun <AT91_PIOD 20 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD20 periph A AD0 */ 515*4882a593Smuzhiyun }; 516*4882a593Smuzhiyun pinctrl_adc0_ad1: adc0_ad1 { 517*4882a593Smuzhiyun atmel,pins = 518*4882a593Smuzhiyun <AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD21 periph A AD1 */ 519*4882a593Smuzhiyun }; 520*4882a593Smuzhiyun pinctrl_adc0_ad2: adc0_ad2 { 521*4882a593Smuzhiyun atmel,pins = 522*4882a593Smuzhiyun <AT91_PIOD 22 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD22 periph A AD2 */ 523*4882a593Smuzhiyun }; 524*4882a593Smuzhiyun pinctrl_adc0_ad3: adc0_ad3 { 525*4882a593Smuzhiyun atmel,pins = 526*4882a593Smuzhiyun <AT91_PIOD 23 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD23 periph A AD3 */ 527*4882a593Smuzhiyun }; 528*4882a593Smuzhiyun pinctrl_adc0_ad4: adc0_ad4 { 529*4882a593Smuzhiyun atmel,pins = 530*4882a593Smuzhiyun <AT91_PIOD 24 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD24 periph A AD4 */ 531*4882a593Smuzhiyun }; 532*4882a593Smuzhiyun pinctrl_adc0_ad5: adc0_ad5 { 533*4882a593Smuzhiyun atmel,pins = 534*4882a593Smuzhiyun <AT91_PIOD 25 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD25 periph A AD5 */ 535*4882a593Smuzhiyun }; 536*4882a593Smuzhiyun pinctrl_adc0_ad6: adc0_ad6 { 537*4882a593Smuzhiyun atmel,pins = 538*4882a593Smuzhiyun <AT91_PIOD 26 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD26 periph A AD6 */ 539*4882a593Smuzhiyun }; 540*4882a593Smuzhiyun pinctrl_adc0_ad7: adc0_ad7 { 541*4882a593Smuzhiyun atmel,pins = 542*4882a593Smuzhiyun <AT91_PIOD 27 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD27 periph A AD7 */ 543*4882a593Smuzhiyun }; 544*4882a593Smuzhiyun pinctrl_adc0_ad8: adc0_ad8 { 545*4882a593Smuzhiyun atmel,pins = 546*4882a593Smuzhiyun <AT91_PIOD 28 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD28 periph A AD8 */ 547*4882a593Smuzhiyun }; 548*4882a593Smuzhiyun pinctrl_adc0_ad9: adc0_ad9 { 549*4882a593Smuzhiyun atmel,pins = 550*4882a593Smuzhiyun <AT91_PIOD 29 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD29 periph A AD9 */ 551*4882a593Smuzhiyun }; 552*4882a593Smuzhiyun pinctrl_adc0_ad10: adc0_ad10 { 553*4882a593Smuzhiyun atmel,pins = 554*4882a593Smuzhiyun <AT91_PIOD 30 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD30 periph A AD10, conflicts with PCK0 */ 555*4882a593Smuzhiyun }; 556*4882a593Smuzhiyun pinctrl_adc0_ad11: adc0_ad11 { 557*4882a593Smuzhiyun atmel,pins = 558*4882a593Smuzhiyun <AT91_PIOD 31 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD31 periph A AD11, conflicts with PCK1 */ 559*4882a593Smuzhiyun }; 560*4882a593Smuzhiyun }; 561*4882a593Smuzhiyun 562*4882a593Smuzhiyun dbgu { 563*4882a593Smuzhiyun u-boot,dm-pre-reloc; 564*4882a593Smuzhiyun pinctrl_dbgu: dbgu-0 { 565*4882a593Smuzhiyun u-boot,dm-pre-reloc; 566*4882a593Smuzhiyun atmel,pins = 567*4882a593Smuzhiyun <AT91_PIOB 30 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB30 periph A */ 568*4882a593Smuzhiyun AT91_PIOB 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PB31 periph A with pullup */ 569*4882a593Smuzhiyun }; 570*4882a593Smuzhiyun }; 571*4882a593Smuzhiyun 572*4882a593Smuzhiyun i2c0 { 573*4882a593Smuzhiyun pinctrl_i2c0: i2c0-0 { 574*4882a593Smuzhiyun atmel,pins = 575*4882a593Smuzhiyun <AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_NONE /* PA30 periph A TWD0 pin, conflicts with URXD1, ISI_VSYNC */ 576*4882a593Smuzhiyun AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA31 periph A TWCK0 pin, conflicts with UTXD1, ISI_HSYNC */ 577*4882a593Smuzhiyun }; 578*4882a593Smuzhiyun }; 579*4882a593Smuzhiyun 580*4882a593Smuzhiyun i2c1 { 581*4882a593Smuzhiyun pinctrl_i2c1: i2c1-0 { 582*4882a593Smuzhiyun atmel,pins = 583*4882a593Smuzhiyun <AT91_PIOC 26 AT91_PERIPH_B AT91_PINCTRL_NONE /* PC26 periph B TWD1 pin, conflicts with SPI1_NPCS1, ISI_D11 */ 584*4882a593Smuzhiyun AT91_PIOC 27 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PC27 periph B TWCK1 pin, conflicts with SPI1_NPCS2, ISI_D10 */ 585*4882a593Smuzhiyun }; 586*4882a593Smuzhiyun }; 587*4882a593Smuzhiyun 588*4882a593Smuzhiyun i2c2 { 589*4882a593Smuzhiyun pinctrl_i2c2: i2c2-0 { 590*4882a593Smuzhiyun atmel,pins = 591*4882a593Smuzhiyun <AT91_PIOA 18 AT91_PERIPH_B AT91_PINCTRL_NONE /* TWD2 pin, conflicts with LCDDAT18, ISI_D2 */ 592*4882a593Smuzhiyun AT91_PIOA 19 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* TWCK2 pin, conflicts with LCDDAT19, ISI_D3 */ 593*4882a593Smuzhiyun }; 594*4882a593Smuzhiyun }; 595*4882a593Smuzhiyun 596*4882a593Smuzhiyun isi { 597*4882a593Smuzhiyun pinctrl_isi_data_0_7: isi-0-data-0-7 { 598*4882a593Smuzhiyun atmel,pins = 599*4882a593Smuzhiyun <AT91_PIOA 16 AT91_PERIPH_C AT91_PINCTRL_NONE /* PA16 periph C ISI_D0, conflicts with LCDDAT16 */ 600*4882a593Smuzhiyun AT91_PIOA 17 AT91_PERIPH_C AT91_PINCTRL_NONE /* PA17 periph C ISI_D1, conflicts with LCDDAT17 */ 601*4882a593Smuzhiyun AT91_PIOA 18 AT91_PERIPH_C AT91_PINCTRL_NONE /* PA18 periph C ISI_D2, conflicts with LCDDAT18, TWD2 */ 602*4882a593Smuzhiyun AT91_PIOA 19 AT91_PERIPH_C AT91_PINCTRL_NONE /* PA19 periph C ISI_D3, conflicts with LCDDAT19, TWCK2 */ 603*4882a593Smuzhiyun AT91_PIOA 20 AT91_PERIPH_C AT91_PINCTRL_NONE /* PA20 periph C ISI_D4, conflicts with LCDDAT20, PWMH0 */ 604*4882a593Smuzhiyun AT91_PIOA 21 AT91_PERIPH_C AT91_PINCTRL_NONE /* PA21 periph C ISI_D5, conflicts with LCDDAT21, PWML0 */ 605*4882a593Smuzhiyun AT91_PIOA 22 AT91_PERIPH_C AT91_PINCTRL_NONE /* PA22 periph C ISI_D6, conflicts with LCDDAT22, PWMH1 */ 606*4882a593Smuzhiyun AT91_PIOA 23 AT91_PERIPH_C AT91_PINCTRL_NONE /* PA23 periph C ISI_D7, conflicts with LCDDAT23, PWML1 */ 607*4882a593Smuzhiyun AT91_PIOC 30 AT91_PERIPH_C AT91_PINCTRL_NONE /* PC30 periph C ISI_PCK, conflicts with UTXD0 */ 608*4882a593Smuzhiyun AT91_PIOA 31 AT91_PERIPH_C AT91_PINCTRL_NONE /* PA31 periph C ISI_HSYNC, conflicts with TWCK0, UTXD1 */ 609*4882a593Smuzhiyun AT91_PIOA 30 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* PA30 periph C ISI_VSYNC, conflicts with TWD0, URXD1 */ 610*4882a593Smuzhiyun }; 611*4882a593Smuzhiyun 612*4882a593Smuzhiyun pinctrl_isi_data_8_9: isi-0-data-8-9 { 613*4882a593Smuzhiyun atmel,pins = 614*4882a593Smuzhiyun <AT91_PIOC 29 AT91_PERIPH_C AT91_PINCTRL_NONE /* PC29 periph C ISI_PD8, conflicts with URXD0, PWMFI2 */ 615*4882a593Smuzhiyun AT91_PIOC 28 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* PC28 periph C ISI_PD9, conflicts with SPI1_NPCS3, PWMFI0 */ 616*4882a593Smuzhiyun }; 617*4882a593Smuzhiyun 618*4882a593Smuzhiyun pinctrl_isi_data_10_11: isi-0-data-10-11 { 619*4882a593Smuzhiyun atmel,pins = 620*4882a593Smuzhiyun <AT91_PIOC 27 AT91_PERIPH_C AT91_PINCTRL_NONE /* PC27 periph C ISI_PD10, conflicts with SPI1_NPCS2, TWCK1 */ 621*4882a593Smuzhiyun AT91_PIOC 26 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* PC26 periph C ISI_PD11, conflicts with SPI1_NPCS1, TWD1 */ 622*4882a593Smuzhiyun }; 623*4882a593Smuzhiyun }; 624*4882a593Smuzhiyun 625*4882a593Smuzhiyun mmc0 { 626*4882a593Smuzhiyun u-boot,dm-pre-reloc; 627*4882a593Smuzhiyun pinctrl_mmc0_clk_cmd_dat0: mmc0_clk_cmd_dat0 { 628*4882a593Smuzhiyun u-boot,dm-pre-reloc; 629*4882a593Smuzhiyun atmel,pins = 630*4882a593Smuzhiyun <AT91_PIOD 9 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD9 periph A MCI0_CK */ 631*4882a593Smuzhiyun AT91_PIOD 0 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD0 periph A MCI0_CDA with pullup */ 632*4882a593Smuzhiyun AT91_PIOD 1 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PD1 periph A MCI0_DA0 with pullup */ 633*4882a593Smuzhiyun }; 634*4882a593Smuzhiyun pinctrl_mmc0_dat1_3: mmc0_dat1_3 { 635*4882a593Smuzhiyun u-boot,dm-pre-reloc; 636*4882a593Smuzhiyun atmel,pins = 637*4882a593Smuzhiyun <AT91_PIOD 2 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD2 periph A MCI0_DA1 with pullup */ 638*4882a593Smuzhiyun AT91_PIOD 3 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD3 periph A MCI0_DA2 with pullup */ 639*4882a593Smuzhiyun AT91_PIOD 4 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PD4 periph A MCI0_DA3 with pullup */ 640*4882a593Smuzhiyun }; 641*4882a593Smuzhiyun pinctrl_mmc0_dat4_7: mmc0_dat4_7 { 642*4882a593Smuzhiyun u-boot,dm-pre-reloc; 643*4882a593Smuzhiyun atmel,pins = 644*4882a593Smuzhiyun <AT91_PIOD 5 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD5 periph A MCI0_DA4 with pullup, conflicts with TIOA0, PWMH2 */ 645*4882a593Smuzhiyun AT91_PIOD 6 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD6 periph A MCI0_DA5 with pullup, conflicts with TIOB0, PWML2 */ 646*4882a593Smuzhiyun AT91_PIOD 7 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD7 periph A MCI0_DA6 with pullup, conlicts with TCLK0, PWMH3 */ 647*4882a593Smuzhiyun AT91_PIOD 8 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PD8 periph A MCI0_DA7 with pullup, conflicts with PWML3 */ 648*4882a593Smuzhiyun }; 649*4882a593Smuzhiyun }; 650*4882a593Smuzhiyun 651*4882a593Smuzhiyun mmc1 { 652*4882a593Smuzhiyun u-boot,dm-pre-reloc; 653*4882a593Smuzhiyun pinctrl_mmc1_clk_cmd_dat0: mmc1_clk_cmd_dat0 { 654*4882a593Smuzhiyun u-boot,dm-pre-reloc; 655*4882a593Smuzhiyun atmel,pins = 656*4882a593Smuzhiyun <AT91_PIOB 24 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB24 periph A MCI1_CK, conflicts with GRX5 */ 657*4882a593Smuzhiyun AT91_PIOB 19 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PB19 periph A MCI1_CDA with pullup, conflicts with GTX4 */ 658*4882a593Smuzhiyun AT91_PIOB 20 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PB20 periph A MCI1_DA0 with pullup, conflicts with GTX5 */ 659*4882a593Smuzhiyun }; 660*4882a593Smuzhiyun pinctrl_mmc1_dat1_3: mmc1_dat1_3 { 661*4882a593Smuzhiyun u-boot,dm-pre-reloc; 662*4882a593Smuzhiyun atmel,pins = 663*4882a593Smuzhiyun <AT91_PIOB 21 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PB21 periph A MCI1_DA1 with pullup, conflicts with GTX6 */ 664*4882a593Smuzhiyun AT91_PIOB 22 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PB22 periph A MCI1_DA2 with pullup, conflicts with GTX7 */ 665*4882a593Smuzhiyun AT91_PIOB 23 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PB23 periph A MCI1_DA3 with pullup, conflicts with GRX4 */ 666*4882a593Smuzhiyun }; 667*4882a593Smuzhiyun }; 668*4882a593Smuzhiyun 669*4882a593Smuzhiyun nand0 { 670*4882a593Smuzhiyun pinctrl_nand0_ale_cle: nand0_ale_cle-0 { 671*4882a593Smuzhiyun atmel,pins = 672*4882a593Smuzhiyun <AT91_PIOE 21 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PE21 periph A with pullup */ 673*4882a593Smuzhiyun AT91_PIOE 22 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PE22 periph A with pullup */ 674*4882a593Smuzhiyun }; 675*4882a593Smuzhiyun }; 676*4882a593Smuzhiyun 677*4882a593Smuzhiyun pwm0 { 678*4882a593Smuzhiyun pinctrl_pwm0_pwmh0_0: pwm0_pwmh0-0 { 679*4882a593Smuzhiyun atmel,pins = 680*4882a593Smuzhiyun <AT91_PIOA 20 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with ISI_D4 and LCDDAT20 */ 681*4882a593Smuzhiyun }; 682*4882a593Smuzhiyun pinctrl_pwm0_pwmh0_1: pwm0_pwmh0-1 { 683*4882a593Smuzhiyun atmel,pins = 684*4882a593Smuzhiyun <AT91_PIOB 0 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GTX0 */ 685*4882a593Smuzhiyun }; 686*4882a593Smuzhiyun pinctrl_pwm0_pwml0_0: pwm0_pwml0-0 { 687*4882a593Smuzhiyun atmel,pins = 688*4882a593Smuzhiyun <AT91_PIOA 21 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with ISI_D5 and LCDDAT21 */ 689*4882a593Smuzhiyun }; 690*4882a593Smuzhiyun pinctrl_pwm0_pwml0_1: pwm0_pwml0-1 { 691*4882a593Smuzhiyun atmel,pins = 692*4882a593Smuzhiyun <AT91_PIOB 1 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GTX1 */ 693*4882a593Smuzhiyun }; 694*4882a593Smuzhiyun 695*4882a593Smuzhiyun pinctrl_pwm0_pwmh1_0: pwm0_pwmh1-0 { 696*4882a593Smuzhiyun atmel,pins = 697*4882a593Smuzhiyun <AT91_PIOA 22 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with ISI_D6 and LCDDAT22 */ 698*4882a593Smuzhiyun }; 699*4882a593Smuzhiyun pinctrl_pwm0_pwmh1_1: pwm0_pwmh1-1 { 700*4882a593Smuzhiyun atmel,pins = 701*4882a593Smuzhiyun <AT91_PIOB 4 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GRX0 */ 702*4882a593Smuzhiyun }; 703*4882a593Smuzhiyun pinctrl_pwm0_pwmh1_2: pwm0_pwmh1-2 { 704*4882a593Smuzhiyun atmel,pins = 705*4882a593Smuzhiyun <AT91_PIOB 27 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* conflicts with G125CKO and RTS1 */ 706*4882a593Smuzhiyun }; 707*4882a593Smuzhiyun pinctrl_pwm0_pwml1_0: pwm0_pwml1-0 { 708*4882a593Smuzhiyun atmel,pins = 709*4882a593Smuzhiyun <AT91_PIOA 23 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with ISI_D7 and LCDDAT23 */ 710*4882a593Smuzhiyun }; 711*4882a593Smuzhiyun pinctrl_pwm0_pwml1_1: pwm0_pwml1-1 { 712*4882a593Smuzhiyun atmel,pins = 713*4882a593Smuzhiyun <AT91_PIOB 5 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GRX1 */ 714*4882a593Smuzhiyun }; 715*4882a593Smuzhiyun pinctrl_pwm0_pwml1_2: pwm0_pwml1-2 { 716*4882a593Smuzhiyun atmel,pins = 717*4882a593Smuzhiyun <AT91_PIOE 31 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with IRQ */ 718*4882a593Smuzhiyun }; 719*4882a593Smuzhiyun 720*4882a593Smuzhiyun pinctrl_pwm0_pwmh2_0: pwm0_pwmh2-0 { 721*4882a593Smuzhiyun atmel,pins = 722*4882a593Smuzhiyun <AT91_PIOB 8 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GTXCK */ 723*4882a593Smuzhiyun }; 724*4882a593Smuzhiyun pinctrl_pwm0_pwmh2_1: pwm0_pwmh2-1 { 725*4882a593Smuzhiyun atmel,pins = 726*4882a593Smuzhiyun <AT91_PIOD 5 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* conflicts with MCI0_DA4 and TIOA0 */ 727*4882a593Smuzhiyun }; 728*4882a593Smuzhiyun pinctrl_pwm0_pwml2_0: pwm0_pwml2-0 { 729*4882a593Smuzhiyun atmel,pins = 730*4882a593Smuzhiyun <AT91_PIOB 9 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GTXEN */ 731*4882a593Smuzhiyun }; 732*4882a593Smuzhiyun pinctrl_pwm0_pwml2_1: pwm0_pwml2-1 { 733*4882a593Smuzhiyun atmel,pins = 734*4882a593Smuzhiyun <AT91_PIOD 6 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* conflicts with MCI0_DA5 and TIOB0 */ 735*4882a593Smuzhiyun }; 736*4882a593Smuzhiyun 737*4882a593Smuzhiyun pinctrl_pwm0_pwmh3_0: pwm0_pwmh3-0 { 738*4882a593Smuzhiyun atmel,pins = 739*4882a593Smuzhiyun <AT91_PIOB 12 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GRXDV */ 740*4882a593Smuzhiyun }; 741*4882a593Smuzhiyun pinctrl_pwm0_pwmh3_1: pwm0_pwmh3-1 { 742*4882a593Smuzhiyun atmel,pins = 743*4882a593Smuzhiyun <AT91_PIOD 7 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* conflicts with MCI0_DA6 and TCLK0 */ 744*4882a593Smuzhiyun }; 745*4882a593Smuzhiyun pinctrl_pwm0_pwml3_0: pwm0_pwml3-0 { 746*4882a593Smuzhiyun atmel,pins = 747*4882a593Smuzhiyun <AT91_PIOB 13 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* conflicts with GRXER */ 748*4882a593Smuzhiyun }; 749*4882a593Smuzhiyun pinctrl_pwm0_pwml3_1: pwm0_pwml3-1 { 750*4882a593Smuzhiyun atmel,pins = 751*4882a593Smuzhiyun <AT91_PIOD 8 AT91_PERIPH_C AT91_PINCTRL_NONE>; /* conflicts with MCI0_DA7 */ 752*4882a593Smuzhiyun }; 753*4882a593Smuzhiyun }; 754*4882a593Smuzhiyun 755*4882a593Smuzhiyun spi0 { 756*4882a593Smuzhiyun u-boot,dm-pre-reloc; 757*4882a593Smuzhiyun pinctrl_spi0: spi0-0 { 758*4882a593Smuzhiyun u-boot,dm-pre-reloc; 759*4882a593Smuzhiyun atmel,pins = 760*4882a593Smuzhiyun <AT91_PIOD 10 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD10 periph A SPI0_MISO pin */ 761*4882a593Smuzhiyun AT91_PIOD 11 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD11 periph A SPI0_MOSI pin */ 762*4882a593Smuzhiyun AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD12 periph A SPI0_SPCK pin */ 763*4882a593Smuzhiyun }; 764*4882a593Smuzhiyun }; 765*4882a593Smuzhiyun 766*4882a593Smuzhiyun spi1 { 767*4882a593Smuzhiyun u-boot,dm-pre-reloc; 768*4882a593Smuzhiyun pinctrl_spi1: spi1-0 { 769*4882a593Smuzhiyun u-boot,dm-pre-reloc; 770*4882a593Smuzhiyun atmel,pins = 771*4882a593Smuzhiyun <AT91_PIOC 22 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC22 periph A SPI1_MISO pin */ 772*4882a593Smuzhiyun AT91_PIOC 23 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC23 periph A SPI1_MOSI pin */ 773*4882a593Smuzhiyun AT91_PIOC 24 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PC24 periph A SPI1_SPCK pin */ 774*4882a593Smuzhiyun }; 775*4882a593Smuzhiyun }; 776*4882a593Smuzhiyun 777*4882a593Smuzhiyun ssc0 { 778*4882a593Smuzhiyun pinctrl_ssc0_tx: ssc0_tx { 779*4882a593Smuzhiyun atmel,pins = 780*4882a593Smuzhiyun <AT91_PIOC 16 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC16 periph A TK0 */ 781*4882a593Smuzhiyun AT91_PIOC 17 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC17 periph A TF0 */ 782*4882a593Smuzhiyun AT91_PIOC 18 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PC18 periph A TD0 */ 783*4882a593Smuzhiyun }; 784*4882a593Smuzhiyun 785*4882a593Smuzhiyun pinctrl_ssc0_rx: ssc0_rx { 786*4882a593Smuzhiyun atmel,pins = 787*4882a593Smuzhiyun <AT91_PIOC 19 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC19 periph A RK0 */ 788*4882a593Smuzhiyun AT91_PIOC 20 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC20 periph A RF0 */ 789*4882a593Smuzhiyun AT91_PIOC 21 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PC21 periph A RD0 */ 790*4882a593Smuzhiyun }; 791*4882a593Smuzhiyun }; 792*4882a593Smuzhiyun 793*4882a593Smuzhiyun ssc1 { 794*4882a593Smuzhiyun pinctrl_ssc1_tx: ssc1_tx { 795*4882a593Smuzhiyun atmel,pins = 796*4882a593Smuzhiyun <AT91_PIOB 2 AT91_PERIPH_B AT91_PINCTRL_NONE /* PB2 periph B TK1, conflicts with GTX2 */ 797*4882a593Smuzhiyun AT91_PIOB 3 AT91_PERIPH_B AT91_PINCTRL_NONE /* PB3 periph B TF1, conflicts with GTX3 */ 798*4882a593Smuzhiyun AT91_PIOB 6 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PB6 periph B TD1, conflicts with TD1 */ 799*4882a593Smuzhiyun }; 800*4882a593Smuzhiyun 801*4882a593Smuzhiyun pinctrl_ssc1_rx: ssc1_rx { 802*4882a593Smuzhiyun atmel,pins = 803*4882a593Smuzhiyun <AT91_PIOB 7 AT91_PERIPH_B AT91_PINCTRL_NONE /* PB7 periph B RK1, conflicts with EREFCK */ 804*4882a593Smuzhiyun AT91_PIOB 10 AT91_PERIPH_B AT91_PINCTRL_NONE /* PB10 periph B RF1, conflicts with GTXER */ 805*4882a593Smuzhiyun AT91_PIOB 11 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PB11 periph B RD1, conflicts with GRXCK */ 806*4882a593Smuzhiyun }; 807*4882a593Smuzhiyun }; 808*4882a593Smuzhiyun 809*4882a593Smuzhiyun uart0 { 810*4882a593Smuzhiyun pinctrl_uart0: uart0-0 { 811*4882a593Smuzhiyun atmel,pins = 812*4882a593Smuzhiyun <AT91_PIOC 29 AT91_PERIPH_A AT91_PINCTRL_NONE /* conflicts with PWMFI2, ISI_D8 */ 813*4882a593Smuzhiyun AT91_PIOC 30 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* conflicts with ISI_PCK */ 814*4882a593Smuzhiyun }; 815*4882a593Smuzhiyun }; 816*4882a593Smuzhiyun 817*4882a593Smuzhiyun uart1 { 818*4882a593Smuzhiyun pinctrl_uart1: uart1-0 { 819*4882a593Smuzhiyun atmel,pins = 820*4882a593Smuzhiyun <AT91_PIOA 30 AT91_PERIPH_B AT91_PINCTRL_NONE /* conflicts with TWD0, ISI_VSYNC */ 821*4882a593Smuzhiyun AT91_PIOA 31 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>; /* conflicts with TWCK0, ISI_HSYNC */ 822*4882a593Smuzhiyun }; 823*4882a593Smuzhiyun }; 824*4882a593Smuzhiyun 825*4882a593Smuzhiyun usart0 { 826*4882a593Smuzhiyun pinctrl_usart0: usart0-0 { 827*4882a593Smuzhiyun atmel,pins = 828*4882a593Smuzhiyun <AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD17 periph A */ 829*4882a593Smuzhiyun AT91_PIOD 18 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PD18 periph A with pullup */ 830*4882a593Smuzhiyun }; 831*4882a593Smuzhiyun 832*4882a593Smuzhiyun pinctrl_usart0_rts_cts: usart0_rts_cts-0 { 833*4882a593Smuzhiyun atmel,pins = 834*4882a593Smuzhiyun <AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE /* PD15 periph A, conflicts with SPI0_NPCS2, CANTX0 */ 835*4882a593Smuzhiyun AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD16 periph A, conflicts with SPI0_NPCS3, PWMFI3 */ 836*4882a593Smuzhiyun }; 837*4882a593Smuzhiyun }; 838*4882a593Smuzhiyun 839*4882a593Smuzhiyun usart1 { 840*4882a593Smuzhiyun pinctrl_usart1: usart1-0 { 841*4882a593Smuzhiyun atmel,pins = 842*4882a593Smuzhiyun <AT91_PIOB 28 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB28 periph A */ 843*4882a593Smuzhiyun AT91_PIOB 29 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PB29 periph A with pullup */ 844*4882a593Smuzhiyun }; 845*4882a593Smuzhiyun 846*4882a593Smuzhiyun pinctrl_usart1_rts_cts: usart1_rts_cts-0 { 847*4882a593Smuzhiyun atmel,pins = 848*4882a593Smuzhiyun <AT91_PIOB 26 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB26 periph A, conflicts with GRX7 */ 849*4882a593Smuzhiyun AT91_PIOB 27 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB27 periph A, conflicts with G125CKO */ 850*4882a593Smuzhiyun }; 851*4882a593Smuzhiyun }; 852*4882a593Smuzhiyun 853*4882a593Smuzhiyun usart2 { 854*4882a593Smuzhiyun pinctrl_usart2: usart2-0 { 855*4882a593Smuzhiyun atmel,pins = 856*4882a593Smuzhiyun <AT91_PIOE 25 AT91_PERIPH_B AT91_PINCTRL_NONE /* PE25 periph B, conflicts with A25 */ 857*4882a593Smuzhiyun AT91_PIOE 26 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>; /* PE26 periph B with pullup, conflicts NCS0 */ 858*4882a593Smuzhiyun }; 859*4882a593Smuzhiyun 860*4882a593Smuzhiyun pinctrl_usart2_rts_cts: usart2_rts_cts-0 { 861*4882a593Smuzhiyun atmel,pins = 862*4882a593Smuzhiyun <AT91_PIOE 23 AT91_PERIPH_B AT91_PINCTRL_NONE /* PE23 periph B, conflicts with A23 */ 863*4882a593Smuzhiyun AT91_PIOE 24 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PE24 periph B, conflicts with A24 */ 864*4882a593Smuzhiyun }; 865*4882a593Smuzhiyun }; 866*4882a593Smuzhiyun 867*4882a593Smuzhiyun usart3 { 868*4882a593Smuzhiyun pinctrl_usart3: usart3-0 { 869*4882a593Smuzhiyun atmel,pins = 870*4882a593Smuzhiyun <AT91_PIOE 18 AT91_PERIPH_B AT91_PINCTRL_NONE /* PE18 periph B, conflicts with A18 */ 871*4882a593Smuzhiyun AT91_PIOE 19 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>; /* PE19 periph B with pullup, conflicts with A19 */ 872*4882a593Smuzhiyun }; 873*4882a593Smuzhiyun 874*4882a593Smuzhiyun pinctrl_usart3_rts_cts: usart3_rts_cts-0 { 875*4882a593Smuzhiyun atmel,pins = 876*4882a593Smuzhiyun <AT91_PIOE 16 AT91_PERIPH_B AT91_PINCTRL_NONE /* PE16 periph B, conflicts with A16 */ 877*4882a593Smuzhiyun AT91_PIOE 17 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PE17 periph B, conflicts with A17 */ 878*4882a593Smuzhiyun }; 879*4882a593Smuzhiyun }; 880*4882a593Smuzhiyun }; 881*4882a593Smuzhiyun 882*4882a593Smuzhiyun pioA: gpio@fffff200 { 883*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 884*4882a593Smuzhiyun reg = <0xfffff200 0x100>; 885*4882a593Smuzhiyun interrupts = <6 IRQ_TYPE_LEVEL_HIGH 1>; 886*4882a593Smuzhiyun #gpio-cells = <2>; 887*4882a593Smuzhiyun gpio-controller; 888*4882a593Smuzhiyun interrupt-controller; 889*4882a593Smuzhiyun #interrupt-cells = <2>; 890*4882a593Smuzhiyun clocks = <&pioA_clk>; 891*4882a593Smuzhiyun u-boot,dm-pre-reloc; 892*4882a593Smuzhiyun }; 893*4882a593Smuzhiyun 894*4882a593Smuzhiyun pioB: gpio@fffff400 { 895*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 896*4882a593Smuzhiyun reg = <0xfffff400 0x100>; 897*4882a593Smuzhiyun interrupts = <7 IRQ_TYPE_LEVEL_HIGH 1>; 898*4882a593Smuzhiyun #gpio-cells = <2>; 899*4882a593Smuzhiyun gpio-controller; 900*4882a593Smuzhiyun interrupt-controller; 901*4882a593Smuzhiyun #interrupt-cells = <2>; 902*4882a593Smuzhiyun clocks = <&pioB_clk>; 903*4882a593Smuzhiyun u-boot,dm-pre-reloc; 904*4882a593Smuzhiyun }; 905*4882a593Smuzhiyun 906*4882a593Smuzhiyun pioC: gpio@fffff600 { 907*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 908*4882a593Smuzhiyun reg = <0xfffff600 0x100>; 909*4882a593Smuzhiyun interrupts = <8 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 = <&pioC_clk>; 915*4882a593Smuzhiyun u-boot,dm-pre-reloc; 916*4882a593Smuzhiyun }; 917*4882a593Smuzhiyun 918*4882a593Smuzhiyun pioD: gpio@fffff800 { 919*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 920*4882a593Smuzhiyun reg = <0xfffff800 0x100>; 921*4882a593Smuzhiyun interrupts = <9 IRQ_TYPE_LEVEL_HIGH 1>; 922*4882a593Smuzhiyun #gpio-cells = <2>; 923*4882a593Smuzhiyun gpio-controller; 924*4882a593Smuzhiyun interrupt-controller; 925*4882a593Smuzhiyun #interrupt-cells = <2>; 926*4882a593Smuzhiyun clocks = <&pioD_clk>; 927*4882a593Smuzhiyun u-boot,dm-pre-reloc; 928*4882a593Smuzhiyun }; 929*4882a593Smuzhiyun 930*4882a593Smuzhiyun pioE: gpio@fffffa00 { 931*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-gpio", "atmel,at91rm9200-gpio"; 932*4882a593Smuzhiyun reg = <0xfffffa00 0x100>; 933*4882a593Smuzhiyun interrupts = <10 IRQ_TYPE_LEVEL_HIGH 1>; 934*4882a593Smuzhiyun #gpio-cells = <2>; 935*4882a593Smuzhiyun gpio-controller; 936*4882a593Smuzhiyun interrupt-controller; 937*4882a593Smuzhiyun #interrupt-cells = <2>; 938*4882a593Smuzhiyun clocks = <&pioE_clk>; 939*4882a593Smuzhiyun u-boot,dm-pre-reloc; 940*4882a593Smuzhiyun }; 941*4882a593Smuzhiyun 942*4882a593Smuzhiyun pmc: pmc@fffffc00 { 943*4882a593Smuzhiyun compatible = "atmel,sama5d3-pmc", "syscon"; 944*4882a593Smuzhiyun reg = <0xfffffc00 0x120>; 945*4882a593Smuzhiyun interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; 946*4882a593Smuzhiyun interrupt-controller; 947*4882a593Smuzhiyun #address-cells = <1>; 948*4882a593Smuzhiyun #size-cells = <0>; 949*4882a593Smuzhiyun #interrupt-cells = <1>; 950*4882a593Smuzhiyun u-boot,dm-pre-reloc; 951*4882a593Smuzhiyun 952*4882a593Smuzhiyun main_rc_osc: main_rc_osc { 953*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-main-rc-osc"; 954*4882a593Smuzhiyun #clock-cells = <0>; 955*4882a593Smuzhiyun interrupt-parent = <&pmc>; 956*4882a593Smuzhiyun interrupts = <AT91_PMC_MOSCRCS>; 957*4882a593Smuzhiyun clock-frequency = <12000000>; 958*4882a593Smuzhiyun clock-accuracy = <50000000>; 959*4882a593Smuzhiyun }; 960*4882a593Smuzhiyun 961*4882a593Smuzhiyun main_osc: main_osc { 962*4882a593Smuzhiyun compatible = "atmel,at91rm9200-clk-main-osc"; 963*4882a593Smuzhiyun #clock-cells = <0>; 964*4882a593Smuzhiyun interrupt-parent = <&pmc>; 965*4882a593Smuzhiyun interrupts = <AT91_PMC_MOSCS>; 966*4882a593Smuzhiyun clocks = <&main_xtal>; 967*4882a593Smuzhiyun }; 968*4882a593Smuzhiyun 969*4882a593Smuzhiyun main: mainck { 970*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-main"; 971*4882a593Smuzhiyun #clock-cells = <0>; 972*4882a593Smuzhiyun interrupt-parent = <&pmc>; 973*4882a593Smuzhiyun interrupts = <AT91_PMC_MOSCSELS>; 974*4882a593Smuzhiyun clocks = <&main_rc_osc &main_osc>; 975*4882a593Smuzhiyun }; 976*4882a593Smuzhiyun 977*4882a593Smuzhiyun plla: pllack@0 { 978*4882a593Smuzhiyun compatible = "atmel,sama5d3-clk-pll"; 979*4882a593Smuzhiyun #clock-cells = <0>; 980*4882a593Smuzhiyun interrupt-parent = <&pmc>; 981*4882a593Smuzhiyun interrupts = <AT91_PMC_LOCKA>; 982*4882a593Smuzhiyun clocks = <&main>; 983*4882a593Smuzhiyun reg = <0>; 984*4882a593Smuzhiyun atmel,clk-input-range = <8000000 50000000>; 985*4882a593Smuzhiyun #atmel,pll-clk-output-range-cells = <4>; 986*4882a593Smuzhiyun atmel,pll-clk-output-ranges = <400000000 1000000000 0 0>; 987*4882a593Smuzhiyun }; 988*4882a593Smuzhiyun 989*4882a593Smuzhiyun plladiv: plladivck { 990*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-plldiv"; 991*4882a593Smuzhiyun #clock-cells = <0>; 992*4882a593Smuzhiyun clocks = <&plla>; 993*4882a593Smuzhiyun }; 994*4882a593Smuzhiyun 995*4882a593Smuzhiyun utmi: utmick { 996*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-utmi"; 997*4882a593Smuzhiyun #clock-cells = <0>; 998*4882a593Smuzhiyun interrupt-parent = <&pmc>; 999*4882a593Smuzhiyun interrupts = <AT91_PMC_LOCKU>; 1000*4882a593Smuzhiyun clocks = <&main>; 1001*4882a593Smuzhiyun }; 1002*4882a593Smuzhiyun 1003*4882a593Smuzhiyun mck: masterck { 1004*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-master"; 1005*4882a593Smuzhiyun #clock-cells = <0>; 1006*4882a593Smuzhiyun interrupt-parent = <&pmc>; 1007*4882a593Smuzhiyun interrupts = <AT91_PMC_MCKRDY>; 1008*4882a593Smuzhiyun clocks = <&clk32k>, <&main>, <&plladiv>, <&utmi>; 1009*4882a593Smuzhiyun atmel,clk-output-range = <0 166000000>; 1010*4882a593Smuzhiyun atmel,clk-divisors = <1 2 4 3>; 1011*4882a593Smuzhiyun u-boot,dm-pre-reloc; 1012*4882a593Smuzhiyun }; 1013*4882a593Smuzhiyun 1014*4882a593Smuzhiyun usb: usbck { 1015*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-usb"; 1016*4882a593Smuzhiyun #clock-cells = <0>; 1017*4882a593Smuzhiyun clocks = <&plladiv>, <&utmi>; 1018*4882a593Smuzhiyun }; 1019*4882a593Smuzhiyun 1020*4882a593Smuzhiyun prog: progck { 1021*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-programmable"; 1022*4882a593Smuzhiyun #address-cells = <1>; 1023*4882a593Smuzhiyun #size-cells = <0>; 1024*4882a593Smuzhiyun interrupt-parent = <&pmc>; 1025*4882a593Smuzhiyun clocks = <&clk32k>, <&main>, <&plladiv>, <&utmi>, <&mck>; 1026*4882a593Smuzhiyun 1027*4882a593Smuzhiyun prog0: progck@0 { 1028*4882a593Smuzhiyun #clock-cells = <0>; 1029*4882a593Smuzhiyun reg = <0>; 1030*4882a593Smuzhiyun interrupts = <AT91_PMC_PCKRDY(0)>; 1031*4882a593Smuzhiyun }; 1032*4882a593Smuzhiyun 1033*4882a593Smuzhiyun prog1: progck@1 { 1034*4882a593Smuzhiyun #clock-cells = <0>; 1035*4882a593Smuzhiyun reg = <1>; 1036*4882a593Smuzhiyun interrupts = <AT91_PMC_PCKRDY(1)>; 1037*4882a593Smuzhiyun }; 1038*4882a593Smuzhiyun 1039*4882a593Smuzhiyun prog2: progck@2 { 1040*4882a593Smuzhiyun #clock-cells = <0>; 1041*4882a593Smuzhiyun reg = <2>; 1042*4882a593Smuzhiyun interrupts = <AT91_PMC_PCKRDY(2)>; 1043*4882a593Smuzhiyun }; 1044*4882a593Smuzhiyun }; 1045*4882a593Smuzhiyun 1046*4882a593Smuzhiyun smd: smdclk { 1047*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-smd"; 1048*4882a593Smuzhiyun #clock-cells = <0>; 1049*4882a593Smuzhiyun clocks = <&plladiv>, <&utmi>; 1050*4882a593Smuzhiyun }; 1051*4882a593Smuzhiyun 1052*4882a593Smuzhiyun systemck { 1053*4882a593Smuzhiyun compatible = "atmel,at91rm9200-clk-system"; 1054*4882a593Smuzhiyun #address-cells = <1>; 1055*4882a593Smuzhiyun #size-cells = <0>; 1056*4882a593Smuzhiyun 1057*4882a593Smuzhiyun ddrck: ddrck@2 { 1058*4882a593Smuzhiyun #clock-cells = <0>; 1059*4882a593Smuzhiyun reg = <2>; 1060*4882a593Smuzhiyun clocks = <&mck>; 1061*4882a593Smuzhiyun }; 1062*4882a593Smuzhiyun 1063*4882a593Smuzhiyun smdck: smdck@4 { 1064*4882a593Smuzhiyun #clock-cells = <0>; 1065*4882a593Smuzhiyun reg = <4>; 1066*4882a593Smuzhiyun clocks = <&smd>; 1067*4882a593Smuzhiyun }; 1068*4882a593Smuzhiyun 1069*4882a593Smuzhiyun uhpck: uhpck@6 { 1070*4882a593Smuzhiyun #clock-cells = <0>; 1071*4882a593Smuzhiyun reg = <6>; 1072*4882a593Smuzhiyun clocks = <&usb>; 1073*4882a593Smuzhiyun }; 1074*4882a593Smuzhiyun 1075*4882a593Smuzhiyun udpck: udpck@7 { 1076*4882a593Smuzhiyun #clock-cells = <0>; 1077*4882a593Smuzhiyun reg = <7>; 1078*4882a593Smuzhiyun clocks = <&usb>; 1079*4882a593Smuzhiyun }; 1080*4882a593Smuzhiyun 1081*4882a593Smuzhiyun pck0: pck@8 { 1082*4882a593Smuzhiyun #clock-cells = <0>; 1083*4882a593Smuzhiyun reg = <8>; 1084*4882a593Smuzhiyun clocks = <&prog0>; 1085*4882a593Smuzhiyun }; 1086*4882a593Smuzhiyun 1087*4882a593Smuzhiyun pck1: pck@9 { 1088*4882a593Smuzhiyun #clock-cells = <0>; 1089*4882a593Smuzhiyun reg = <9>; 1090*4882a593Smuzhiyun clocks = <&prog1>; 1091*4882a593Smuzhiyun }; 1092*4882a593Smuzhiyun 1093*4882a593Smuzhiyun pck2: pck@10 { 1094*4882a593Smuzhiyun #clock-cells = <0>; 1095*4882a593Smuzhiyun reg = <10>; 1096*4882a593Smuzhiyun clocks = <&prog2>; 1097*4882a593Smuzhiyun }; 1098*4882a593Smuzhiyun }; 1099*4882a593Smuzhiyun 1100*4882a593Smuzhiyun periphck { 1101*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-peripheral"; 1102*4882a593Smuzhiyun #address-cells = <1>; 1103*4882a593Smuzhiyun #size-cells = <0>; 1104*4882a593Smuzhiyun clocks = <&mck>; 1105*4882a593Smuzhiyun u-boot,dm-pre-reloc; 1106*4882a593Smuzhiyun 1107*4882a593Smuzhiyun dbgu_clk: dbgu_clk@2 { 1108*4882a593Smuzhiyun u-boot,dm-pre-reloc; 1109*4882a593Smuzhiyun #clock-cells = <0>; 1110*4882a593Smuzhiyun reg = <2>; 1111*4882a593Smuzhiyun }; 1112*4882a593Smuzhiyun 1113*4882a593Smuzhiyun hsmc_clk: hsmc_clk@5 { 1114*4882a593Smuzhiyun #clock-cells = <0>; 1115*4882a593Smuzhiyun reg = <5>; 1116*4882a593Smuzhiyun }; 1117*4882a593Smuzhiyun 1118*4882a593Smuzhiyun pioA_clk: pioA_clk@6 { 1119*4882a593Smuzhiyun u-boot,dm-pre-reloc; 1120*4882a593Smuzhiyun #clock-cells = <0>; 1121*4882a593Smuzhiyun reg = <6>; 1122*4882a593Smuzhiyun }; 1123*4882a593Smuzhiyun 1124*4882a593Smuzhiyun pioB_clk: pioB_clk@7 { 1125*4882a593Smuzhiyun u-boot,dm-pre-reloc; 1126*4882a593Smuzhiyun #clock-cells = <0>; 1127*4882a593Smuzhiyun reg = <7>; 1128*4882a593Smuzhiyun }; 1129*4882a593Smuzhiyun 1130*4882a593Smuzhiyun pioC_clk: pioC_clk@8 { 1131*4882a593Smuzhiyun u-boot,dm-pre-reloc; 1132*4882a593Smuzhiyun #clock-cells = <0>; 1133*4882a593Smuzhiyun reg = <8>; 1134*4882a593Smuzhiyun }; 1135*4882a593Smuzhiyun 1136*4882a593Smuzhiyun pioD_clk: pioD_clk@9 { 1137*4882a593Smuzhiyun u-boot,dm-pre-reloc; 1138*4882a593Smuzhiyun #clock-cells = <0>; 1139*4882a593Smuzhiyun reg = <9>; 1140*4882a593Smuzhiyun }; 1141*4882a593Smuzhiyun 1142*4882a593Smuzhiyun pioE_clk: pioE_clk@10 { 1143*4882a593Smuzhiyun u-boot,dm-pre-reloc; 1144*4882a593Smuzhiyun #clock-cells = <0>; 1145*4882a593Smuzhiyun reg = <10>; 1146*4882a593Smuzhiyun }; 1147*4882a593Smuzhiyun 1148*4882a593Smuzhiyun usart0_clk: usart0_clk@12 { 1149*4882a593Smuzhiyun #clock-cells = <0>; 1150*4882a593Smuzhiyun reg = <12>; 1151*4882a593Smuzhiyun atmel,clk-output-range = <0 66000000>; 1152*4882a593Smuzhiyun }; 1153*4882a593Smuzhiyun 1154*4882a593Smuzhiyun usart1_clk: usart1_clk@13 { 1155*4882a593Smuzhiyun #clock-cells = <0>; 1156*4882a593Smuzhiyun reg = <13>; 1157*4882a593Smuzhiyun atmel,clk-output-range = <0 66000000>; 1158*4882a593Smuzhiyun }; 1159*4882a593Smuzhiyun 1160*4882a593Smuzhiyun usart2_clk: usart2_clk@14 { 1161*4882a593Smuzhiyun #clock-cells = <0>; 1162*4882a593Smuzhiyun reg = <14>; 1163*4882a593Smuzhiyun atmel,clk-output-range = <0 66000000>; 1164*4882a593Smuzhiyun }; 1165*4882a593Smuzhiyun 1166*4882a593Smuzhiyun usart3_clk: usart3_clk@15 { 1167*4882a593Smuzhiyun #clock-cells = <0>; 1168*4882a593Smuzhiyun reg = <15>; 1169*4882a593Smuzhiyun atmel,clk-output-range = <0 66000000>; 1170*4882a593Smuzhiyun }; 1171*4882a593Smuzhiyun 1172*4882a593Smuzhiyun uart0_clk: uart0_clk@16 { 1173*4882a593Smuzhiyun #clock-cells = <0>; 1174*4882a593Smuzhiyun reg = <16>; 1175*4882a593Smuzhiyun atmel,clk-output-range = <0 66000000>; 1176*4882a593Smuzhiyun }; 1177*4882a593Smuzhiyun 1178*4882a593Smuzhiyun twi0_clk: twi0_clk@18 { 1179*4882a593Smuzhiyun reg = <18>; 1180*4882a593Smuzhiyun #clock-cells = <0>; 1181*4882a593Smuzhiyun atmel,clk-output-range = <0 16625000>; 1182*4882a593Smuzhiyun }; 1183*4882a593Smuzhiyun 1184*4882a593Smuzhiyun twi1_clk: twi1_clk@19 { 1185*4882a593Smuzhiyun #clock-cells = <0>; 1186*4882a593Smuzhiyun reg = <19>; 1187*4882a593Smuzhiyun atmel,clk-output-range = <0 16625000>; 1188*4882a593Smuzhiyun }; 1189*4882a593Smuzhiyun 1190*4882a593Smuzhiyun twi2_clk: twi2_clk@20 { 1191*4882a593Smuzhiyun #clock-cells = <0>; 1192*4882a593Smuzhiyun reg = <20>; 1193*4882a593Smuzhiyun atmel,clk-output-range = <0 16625000>; 1194*4882a593Smuzhiyun }; 1195*4882a593Smuzhiyun 1196*4882a593Smuzhiyun mci0_clk: mci0_clk@21 { 1197*4882a593Smuzhiyun u-boot,dm-pre-reloc; 1198*4882a593Smuzhiyun #clock-cells = <0>; 1199*4882a593Smuzhiyun reg = <21>; 1200*4882a593Smuzhiyun }; 1201*4882a593Smuzhiyun 1202*4882a593Smuzhiyun mci1_clk: mci1_clk@22 { 1203*4882a593Smuzhiyun u-boot,dm-pre-reloc; 1204*4882a593Smuzhiyun #clock-cells = <0>; 1205*4882a593Smuzhiyun reg = <22>; 1206*4882a593Smuzhiyun }; 1207*4882a593Smuzhiyun 1208*4882a593Smuzhiyun spi0_clk: spi0_clk@24 { 1209*4882a593Smuzhiyun u-boot,dm-pre-reloc; 1210*4882a593Smuzhiyun #clock-cells = <0>; 1211*4882a593Smuzhiyun reg = <24>; 1212*4882a593Smuzhiyun atmel,clk-output-range = <0 133000000>; 1213*4882a593Smuzhiyun }; 1214*4882a593Smuzhiyun 1215*4882a593Smuzhiyun spi1_clk: spi1_clk@25 { 1216*4882a593Smuzhiyun u-boot,dm-pre-reloc; 1217*4882a593Smuzhiyun #clock-cells = <0>; 1218*4882a593Smuzhiyun reg = <25>; 1219*4882a593Smuzhiyun atmel,clk-output-range = <0 133000000>; 1220*4882a593Smuzhiyun }; 1221*4882a593Smuzhiyun 1222*4882a593Smuzhiyun tcb0_clk: tcb0_clk@26 { 1223*4882a593Smuzhiyun #clock-cells = <0>; 1224*4882a593Smuzhiyun reg = <26>; 1225*4882a593Smuzhiyun atmel,clk-output-range = <0 133000000>; 1226*4882a593Smuzhiyun }; 1227*4882a593Smuzhiyun 1228*4882a593Smuzhiyun pwm_clk: pwm_clk@28 { 1229*4882a593Smuzhiyun #clock-cells = <0>; 1230*4882a593Smuzhiyun reg = <28>; 1231*4882a593Smuzhiyun }; 1232*4882a593Smuzhiyun 1233*4882a593Smuzhiyun adc_clk: adc_clk@29 { 1234*4882a593Smuzhiyun #clock-cells = <0>; 1235*4882a593Smuzhiyun reg = <29>; 1236*4882a593Smuzhiyun atmel,clk-output-range = <0 66000000>; 1237*4882a593Smuzhiyun }; 1238*4882a593Smuzhiyun 1239*4882a593Smuzhiyun dma0_clk: dma0_clk@30 { 1240*4882a593Smuzhiyun #clock-cells = <0>; 1241*4882a593Smuzhiyun reg = <30>; 1242*4882a593Smuzhiyun }; 1243*4882a593Smuzhiyun 1244*4882a593Smuzhiyun dma1_clk: dma1_clk@31 { 1245*4882a593Smuzhiyun #clock-cells = <0>; 1246*4882a593Smuzhiyun reg = <31>; 1247*4882a593Smuzhiyun }; 1248*4882a593Smuzhiyun 1249*4882a593Smuzhiyun uhphs_clk: uhphs_clk@32 { 1250*4882a593Smuzhiyun #clock-cells = <0>; 1251*4882a593Smuzhiyun reg = <32>; 1252*4882a593Smuzhiyun }; 1253*4882a593Smuzhiyun 1254*4882a593Smuzhiyun udphs_clk: udphs_clk@33 { 1255*4882a593Smuzhiyun #clock-cells = <0>; 1256*4882a593Smuzhiyun reg = <33>; 1257*4882a593Smuzhiyun }; 1258*4882a593Smuzhiyun 1259*4882a593Smuzhiyun isi_clk: isi_clk@37 { 1260*4882a593Smuzhiyun #clock-cells = <0>; 1261*4882a593Smuzhiyun reg = <37>; 1262*4882a593Smuzhiyun }; 1263*4882a593Smuzhiyun 1264*4882a593Smuzhiyun ssc0_clk: ssc0_clk@38 { 1265*4882a593Smuzhiyun #clock-cells = <0>; 1266*4882a593Smuzhiyun reg = <38>; 1267*4882a593Smuzhiyun atmel,clk-output-range = <0 66000000>; 1268*4882a593Smuzhiyun }; 1269*4882a593Smuzhiyun 1270*4882a593Smuzhiyun ssc1_clk: ssc1_clk@39 { 1271*4882a593Smuzhiyun #clock-cells = <0>; 1272*4882a593Smuzhiyun reg = <39>; 1273*4882a593Smuzhiyun atmel,clk-output-range = <0 66000000>; 1274*4882a593Smuzhiyun }; 1275*4882a593Smuzhiyun 1276*4882a593Smuzhiyun sha_clk: sha_clk@42 { 1277*4882a593Smuzhiyun #clock-cells = <0>; 1278*4882a593Smuzhiyun reg = <42>; 1279*4882a593Smuzhiyun }; 1280*4882a593Smuzhiyun 1281*4882a593Smuzhiyun aes_clk: aes_clk@43 { 1282*4882a593Smuzhiyun #clock-cells = <0>; 1283*4882a593Smuzhiyun reg = <43>; 1284*4882a593Smuzhiyun }; 1285*4882a593Smuzhiyun 1286*4882a593Smuzhiyun tdes_clk: tdes_clk@44 { 1287*4882a593Smuzhiyun #clock-cells = <0>; 1288*4882a593Smuzhiyun reg = <44>; 1289*4882a593Smuzhiyun }; 1290*4882a593Smuzhiyun 1291*4882a593Smuzhiyun trng_clk: trng_clk@45 { 1292*4882a593Smuzhiyun #clock-cells = <0>; 1293*4882a593Smuzhiyun reg = <45>; 1294*4882a593Smuzhiyun }; 1295*4882a593Smuzhiyun 1296*4882a593Smuzhiyun fuse_clk: fuse_clk@48 { 1297*4882a593Smuzhiyun #clock-cells = <0>; 1298*4882a593Smuzhiyun reg = <48>; 1299*4882a593Smuzhiyun }; 1300*4882a593Smuzhiyun 1301*4882a593Smuzhiyun mpddr_clk: mpddr_clk@49 { 1302*4882a593Smuzhiyun #clock-cells = <0>; 1303*4882a593Smuzhiyun reg = <49>; 1304*4882a593Smuzhiyun }; 1305*4882a593Smuzhiyun }; 1306*4882a593Smuzhiyun }; 1307*4882a593Smuzhiyun 1308*4882a593Smuzhiyun rstc@fffffe00 { 1309*4882a593Smuzhiyun compatible = "atmel,sama5d3-rstc", "atmel,at91sam9g45-rstc"; 1310*4882a593Smuzhiyun reg = <0xfffffe00 0x10>; 1311*4882a593Smuzhiyun clocks = <&clk32k>; 1312*4882a593Smuzhiyun }; 1313*4882a593Smuzhiyun 1314*4882a593Smuzhiyun shutdown-controller@fffffe10 { 1315*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-shdwc"; 1316*4882a593Smuzhiyun reg = <0xfffffe10 0x10>; 1317*4882a593Smuzhiyun clocks = <&clk32k>; 1318*4882a593Smuzhiyun }; 1319*4882a593Smuzhiyun 1320*4882a593Smuzhiyun pit: timer@fffffe30 { 1321*4882a593Smuzhiyun compatible = "atmel,at91sam9260-pit"; 1322*4882a593Smuzhiyun reg = <0xfffffe30 0xf>; 1323*4882a593Smuzhiyun interrupts = <3 IRQ_TYPE_LEVEL_HIGH 5>; 1324*4882a593Smuzhiyun clocks = <&mck>; 1325*4882a593Smuzhiyun }; 1326*4882a593Smuzhiyun 1327*4882a593Smuzhiyun watchdog@fffffe40 { 1328*4882a593Smuzhiyun compatible = "atmel,at91sam9260-wdt"; 1329*4882a593Smuzhiyun reg = <0xfffffe40 0x10>; 1330*4882a593Smuzhiyun interrupts = <4 IRQ_TYPE_LEVEL_HIGH 7>; 1331*4882a593Smuzhiyun clocks = <&clk32k>; 1332*4882a593Smuzhiyun atmel,watchdog-type = "hardware"; 1333*4882a593Smuzhiyun atmel,reset-type = "all"; 1334*4882a593Smuzhiyun atmel,dbg-halt; 1335*4882a593Smuzhiyun status = "disabled"; 1336*4882a593Smuzhiyun }; 1337*4882a593Smuzhiyun 1338*4882a593Smuzhiyun sckc@fffffe50 { 1339*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-sckc"; 1340*4882a593Smuzhiyun reg = <0xfffffe50 0x4>; 1341*4882a593Smuzhiyun 1342*4882a593Smuzhiyun slow_rc_osc: slow_rc_osc { 1343*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-slow-rc-osc"; 1344*4882a593Smuzhiyun #clock-cells = <0>; 1345*4882a593Smuzhiyun clock-frequency = <32768>; 1346*4882a593Smuzhiyun clock-accuracy = <50000000>; 1347*4882a593Smuzhiyun atmel,startup-time-usec = <75>; 1348*4882a593Smuzhiyun }; 1349*4882a593Smuzhiyun 1350*4882a593Smuzhiyun slow_osc: slow_osc { 1351*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-slow-osc"; 1352*4882a593Smuzhiyun #clock-cells = <0>; 1353*4882a593Smuzhiyun clocks = <&slow_xtal>; 1354*4882a593Smuzhiyun atmel,startup-time-usec = <1200000>; 1355*4882a593Smuzhiyun }; 1356*4882a593Smuzhiyun 1357*4882a593Smuzhiyun clk32k: slowck { 1358*4882a593Smuzhiyun compatible = "atmel,at91sam9x5-clk-slow"; 1359*4882a593Smuzhiyun #clock-cells = <0>; 1360*4882a593Smuzhiyun clocks = <&slow_rc_osc &slow_osc>; 1361*4882a593Smuzhiyun }; 1362*4882a593Smuzhiyun }; 1363*4882a593Smuzhiyun 1364*4882a593Smuzhiyun rtc@fffffeb0 { 1365*4882a593Smuzhiyun compatible = "atmel,at91rm9200-rtc"; 1366*4882a593Smuzhiyun reg = <0xfffffeb0 0x30>; 1367*4882a593Smuzhiyun interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>; 1368*4882a593Smuzhiyun clocks = <&clk32k>; 1369*4882a593Smuzhiyun }; 1370*4882a593Smuzhiyun }; 1371*4882a593Smuzhiyun 1372*4882a593Smuzhiyun usb0: gadget@00500000 { 1373*4882a593Smuzhiyun #address-cells = <1>; 1374*4882a593Smuzhiyun #size-cells = <0>; 1375*4882a593Smuzhiyun compatible = "atmel,sama5d3-udc"; 1376*4882a593Smuzhiyun reg = <0x00500000 0x100000 1377*4882a593Smuzhiyun 0xf8030000 0x4000>; 1378*4882a593Smuzhiyun interrupts = <33 IRQ_TYPE_LEVEL_HIGH 2>; 1379*4882a593Smuzhiyun clocks = <&udphs_clk>, <&utmi>; 1380*4882a593Smuzhiyun clock-names = "pclk", "hclk"; 1381*4882a593Smuzhiyun status = "disabled"; 1382*4882a593Smuzhiyun 1383*4882a593Smuzhiyun ep0: endpoint@0 { 1384*4882a593Smuzhiyun reg = <0>; 1385*4882a593Smuzhiyun atmel,fifo-size = <64>; 1386*4882a593Smuzhiyun atmel,nb-banks = <1>; 1387*4882a593Smuzhiyun }; 1388*4882a593Smuzhiyun 1389*4882a593Smuzhiyun ep1: endpoint@1 { 1390*4882a593Smuzhiyun reg = <1>; 1391*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1392*4882a593Smuzhiyun atmel,nb-banks = <3>; 1393*4882a593Smuzhiyun atmel,can-dma; 1394*4882a593Smuzhiyun atmel,can-isoc; 1395*4882a593Smuzhiyun }; 1396*4882a593Smuzhiyun 1397*4882a593Smuzhiyun ep2: endpoint@2 { 1398*4882a593Smuzhiyun reg = <2>; 1399*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1400*4882a593Smuzhiyun atmel,nb-banks = <3>; 1401*4882a593Smuzhiyun atmel,can-dma; 1402*4882a593Smuzhiyun atmel,can-isoc; 1403*4882a593Smuzhiyun }; 1404*4882a593Smuzhiyun 1405*4882a593Smuzhiyun ep3: endpoint@3 { 1406*4882a593Smuzhiyun reg = <3>; 1407*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1408*4882a593Smuzhiyun atmel,nb-banks = <2>; 1409*4882a593Smuzhiyun atmel,can-dma; 1410*4882a593Smuzhiyun }; 1411*4882a593Smuzhiyun 1412*4882a593Smuzhiyun ep4: endpoint@4 { 1413*4882a593Smuzhiyun reg = <4>; 1414*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1415*4882a593Smuzhiyun atmel,nb-banks = <2>; 1416*4882a593Smuzhiyun atmel,can-dma; 1417*4882a593Smuzhiyun }; 1418*4882a593Smuzhiyun 1419*4882a593Smuzhiyun ep5: endpoint@5 { 1420*4882a593Smuzhiyun reg = <5>; 1421*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1422*4882a593Smuzhiyun atmel,nb-banks = <2>; 1423*4882a593Smuzhiyun atmel,can-dma; 1424*4882a593Smuzhiyun }; 1425*4882a593Smuzhiyun 1426*4882a593Smuzhiyun ep6: endpoint@6 { 1427*4882a593Smuzhiyun reg = <6>; 1428*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1429*4882a593Smuzhiyun atmel,nb-banks = <2>; 1430*4882a593Smuzhiyun atmel,can-dma; 1431*4882a593Smuzhiyun }; 1432*4882a593Smuzhiyun 1433*4882a593Smuzhiyun ep7i: endpoint@7 { 1434*4882a593Smuzhiyun reg = <7>; 1435*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1436*4882a593Smuzhiyun atmel,nb-banks = <2>; 1437*4882a593Smuzhiyun atmel,can-dma; 1438*4882a593Smuzhiyun }; 1439*4882a593Smuzhiyun 1440*4882a593Smuzhiyun ep8: endpoint@8 { 1441*4882a593Smuzhiyun reg = <8>; 1442*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1443*4882a593Smuzhiyun atmel,nb-banks = <2>; 1444*4882a593Smuzhiyun }; 1445*4882a593Smuzhiyun 1446*4882a593Smuzhiyun ep9: endpoint@9 { 1447*4882a593Smuzhiyun reg = <9>; 1448*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1449*4882a593Smuzhiyun atmel,nb-banks = <2>; 1450*4882a593Smuzhiyun }; 1451*4882a593Smuzhiyun 1452*4882a593Smuzhiyun ep10: endpoint@10 { 1453*4882a593Smuzhiyun reg = <10>; 1454*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1455*4882a593Smuzhiyun atmel,nb-banks = <2>; 1456*4882a593Smuzhiyun }; 1457*4882a593Smuzhiyun 1458*4882a593Smuzhiyun ep11: endpoint@11 { 1459*4882a593Smuzhiyun reg = <11>; 1460*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1461*4882a593Smuzhiyun atmel,nb-banks = <2>; 1462*4882a593Smuzhiyun }; 1463*4882a593Smuzhiyun 1464*4882a593Smuzhiyun ep12: endpoint@12 { 1465*4882a593Smuzhiyun reg = <12>; 1466*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1467*4882a593Smuzhiyun atmel,nb-banks = <2>; 1468*4882a593Smuzhiyun }; 1469*4882a593Smuzhiyun 1470*4882a593Smuzhiyun ep13: endpoint@13 { 1471*4882a593Smuzhiyun reg = <13>; 1472*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1473*4882a593Smuzhiyun atmel,nb-banks = <2>; 1474*4882a593Smuzhiyun }; 1475*4882a593Smuzhiyun 1476*4882a593Smuzhiyun ep14: endpoint@14 { 1477*4882a593Smuzhiyun reg = <14>; 1478*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1479*4882a593Smuzhiyun atmel,nb-banks = <2>; 1480*4882a593Smuzhiyun }; 1481*4882a593Smuzhiyun 1482*4882a593Smuzhiyun ep15: endpoint@15 { 1483*4882a593Smuzhiyun reg = <15>; 1484*4882a593Smuzhiyun atmel,fifo-size = <1024>; 1485*4882a593Smuzhiyun atmel,nb-banks = <2>; 1486*4882a593Smuzhiyun }; 1487*4882a593Smuzhiyun }; 1488*4882a593Smuzhiyun 1489*4882a593Smuzhiyun usb1: ohci@00600000 { 1490*4882a593Smuzhiyun compatible = "atmel,at91rm9200-ohci", "usb-ohci"; 1491*4882a593Smuzhiyun reg = <0x00600000 0x100000>; 1492*4882a593Smuzhiyun interrupts = <32 IRQ_TYPE_LEVEL_HIGH 2>; 1493*4882a593Smuzhiyun clocks = <&uhphs_clk>, <&uhphs_clk>, <&uhpck>; 1494*4882a593Smuzhiyun clock-names = "ohci_clk", "hclk", "uhpck"; 1495*4882a593Smuzhiyun status = "disabled"; 1496*4882a593Smuzhiyun }; 1497*4882a593Smuzhiyun 1498*4882a593Smuzhiyun usb2: ehci@00700000 { 1499*4882a593Smuzhiyun compatible = "atmel,at91sam9g45-ehci", "usb-ehci"; 1500*4882a593Smuzhiyun reg = <0x00700000 0x100000>; 1501*4882a593Smuzhiyun interrupts = <32 IRQ_TYPE_LEVEL_HIGH 2>; 1502*4882a593Smuzhiyun clocks = <&utmi>, <&uhphs_clk>; 1503*4882a593Smuzhiyun clock-names = "usb_clk", "ehci_clk"; 1504*4882a593Smuzhiyun status = "disabled"; 1505*4882a593Smuzhiyun }; 1506*4882a593Smuzhiyun 1507*4882a593Smuzhiyun nand0: nand@60000000 { 1508*4882a593Smuzhiyun compatible = "atmel,at91rm9200-nand"; 1509*4882a593Smuzhiyun #address-cells = <1>; 1510*4882a593Smuzhiyun #size-cells = <1>; 1511*4882a593Smuzhiyun ranges; 1512*4882a593Smuzhiyun reg = < 0x60000000 0x01000000 /* EBI CS3 */ 1513*4882a593Smuzhiyun 0xffffc070 0x00000490 /* SMC PMECC regs */ 1514*4882a593Smuzhiyun 0xffffc500 0x00000100 /* SMC PMECC Error Location regs */ 1515*4882a593Smuzhiyun 0x00110000 0x00018000 /* ROM code */ 1516*4882a593Smuzhiyun >; 1517*4882a593Smuzhiyun interrupts = <5 IRQ_TYPE_LEVEL_HIGH 6>; 1518*4882a593Smuzhiyun atmel,nand-addr-offset = <21>; 1519*4882a593Smuzhiyun atmel,nand-cmd-offset = <22>; 1520*4882a593Smuzhiyun atmel,nand-has-dma; 1521*4882a593Smuzhiyun pinctrl-names = "default"; 1522*4882a593Smuzhiyun pinctrl-0 = <&pinctrl_nand0_ale_cle>; 1523*4882a593Smuzhiyun atmel,pmecc-lookup-table-offset = <0x0 0x8000>; 1524*4882a593Smuzhiyun status = "disabled"; 1525*4882a593Smuzhiyun 1526*4882a593Smuzhiyun nfc@70000000 { 1527*4882a593Smuzhiyun compatible = "atmel,sama5d3-nfc"; 1528*4882a593Smuzhiyun #address-cells = <1>; 1529*4882a593Smuzhiyun #size-cells = <1>; 1530*4882a593Smuzhiyun reg = < 1531*4882a593Smuzhiyun 0x70000000 0x08000000 /* NFC Command Registers */ 1532*4882a593Smuzhiyun 0xffffc000 0x00000070 /* NFC HSMC regs */ 1533*4882a593Smuzhiyun 0x00200000 0x00100000 /* NFC SRAM banks */ 1534*4882a593Smuzhiyun >; 1535*4882a593Smuzhiyun clocks = <&hsmc_clk>; 1536*4882a593Smuzhiyun }; 1537*4882a593Smuzhiyun }; 1538*4882a593Smuzhiyun }; 1539*4882a593Smuzhiyun}; 1540