xref: /openbmc/u-boot/arch/arm/dts/at91sam9g45.dtsi (revision d1e15041)
16f967856SSimon Glass/*
26f967856SSimon Glass * at91sam9g45.dtsi - Device Tree Include file for AT91SAM9G45 family SoC
36f967856SSimon Glass *                    applies to AT91SAM9G45, AT91SAM9M10,
46f967856SSimon Glass *                    AT91SAM9G46, AT91SAM9M11 SoC
56f967856SSimon Glass *
66f967856SSimon Glass *  Copyright (C) 2011 Atmel,
76f967856SSimon Glass *                2011 Nicolas Ferre <nicolas.ferre@atmel.com>
86f967856SSimon Glass *
96f967856SSimon Glass * Licensed under GPLv2 or later.
106f967856SSimon Glass */
116f967856SSimon Glass
126f967856SSimon Glass#include "skeleton.dtsi"
136f967856SSimon Glass#include <dt-bindings/dma/at91.h>
146f967856SSimon Glass#include <dt-bindings/pinctrl/at91.h>
156f967856SSimon Glass#include <dt-bindings/interrupt-controller/irq.h>
166f967856SSimon Glass#include <dt-bindings/gpio/gpio.h>
176f967856SSimon Glass#include <dt-bindings/clock/at91.h>
186f967856SSimon Glass
196f967856SSimon Glass/ {
206f967856SSimon Glass	model = "Atmel AT91SAM9G45 family SoC";
216f967856SSimon Glass	compatible = "atmel,at91sam9g45";
226f967856SSimon Glass	interrupt-parent = <&aic>;
236f967856SSimon Glass
246f967856SSimon Glass	aliases {
256f967856SSimon Glass		serial0 = &dbgu;
266f967856SSimon Glass		serial1 = &usart0;
276f967856SSimon Glass		serial2 = &usart1;
286f967856SSimon Glass		serial3 = &usart2;
296f967856SSimon Glass		serial4 = &usart3;
306f967856SSimon Glass		gpio0 = &pioA;
316f967856SSimon Glass		gpio1 = &pioB;
326f967856SSimon Glass		gpio2 = &pioC;
336f967856SSimon Glass		gpio3 = &pioD;
346f967856SSimon Glass		gpio4 = &pioE;
356f967856SSimon Glass		tcb0 = &tcb0;
366f967856SSimon Glass		tcb1 = &tcb1;
376f967856SSimon Glass		i2c0 = &i2c0;
386f967856SSimon Glass		i2c1 = &i2c1;
396f967856SSimon Glass		ssc0 = &ssc0;
406f967856SSimon Glass		ssc1 = &ssc1;
416f967856SSimon Glass		pwm0 = &pwm0;
426f967856SSimon Glass	};
436f967856SSimon Glass	cpus {
446f967856SSimon Glass		cpu {
456f967856SSimon Glass			compatible = "arm,arm926ej-s";
466f967856SSimon Glass			device_type = "cpu";
476f967856SSimon Glass		};
486f967856SSimon Glass	};
496f967856SSimon Glass
506f967856SSimon Glass	memory {
516f967856SSimon Glass		reg = <0x70000000 0x10000000>;
526f967856SSimon Glass	};
536f967856SSimon Glass
546f967856SSimon Glass	clocks {
556f967856SSimon Glass		slow_xtal: slow_xtal {
566f967856SSimon Glass			compatible = "fixed-clock";
576f967856SSimon Glass			#clock-cells = <0>;
586f967856SSimon Glass			clock-frequency = <0>;
596f967856SSimon Glass		};
606f967856SSimon Glass
616f967856SSimon Glass		main_xtal: main_xtal {
626f967856SSimon Glass			compatible = "fixed-clock";
636f967856SSimon Glass			#clock-cells = <0>;
646f967856SSimon Glass			clock-frequency = <0>;
656f967856SSimon Glass		};
666f967856SSimon Glass
676f967856SSimon Glass		adc_op_clk: adc_op_clk{
686f967856SSimon Glass			compatible = "fixed-clock";
696f967856SSimon Glass			#clock-cells = <0>;
706f967856SSimon Glass			clock-frequency = <300000>;
716f967856SSimon Glass		};
726f967856SSimon Glass	};
736f967856SSimon Glass
746f967856SSimon Glass	sram: sram@00300000 {
756f967856SSimon Glass		compatible = "mmio-sram";
766f967856SSimon Glass		reg = <0x00300000 0x10000>;
776f967856SSimon Glass	};
786f967856SSimon Glass
796f967856SSimon Glass	ahb {
806f967856SSimon Glass		compatible = "simple-bus";
816f967856SSimon Glass		#address-cells = <1>;
826f967856SSimon Glass		#size-cells = <1>;
836f967856SSimon Glass		ranges;
84*eb6f87ccSWenyou Yang		u-boot,dm-pre-reloc;
856f967856SSimon Glass
866f967856SSimon Glass		apb {
876f967856SSimon Glass			compatible = "simple-bus";
886f967856SSimon Glass			#address-cells = <1>;
896f967856SSimon Glass			#size-cells = <1>;
906f967856SSimon Glass			ranges;
91*eb6f87ccSWenyou Yang			u-boot,dm-pre-reloc;
926f967856SSimon Glass
936f967856SSimon Glass			aic: interrupt-controller@fffff000 {
946f967856SSimon Glass				#interrupt-cells = <3>;
956f967856SSimon Glass				compatible = "atmel,at91rm9200-aic";
966f967856SSimon Glass				interrupt-controller;
976f967856SSimon Glass				reg = <0xfffff000 0x200>;
986f967856SSimon Glass				atmel,external-irqs = <31>;
996f967856SSimon Glass			};
1006f967856SSimon Glass
1016f967856SSimon Glass			ramc0: ramc@ffffe400 {
1026f967856SSimon Glass				compatible = "atmel,at91sam9g45-ddramc";
1036f967856SSimon Glass				reg = <0xffffe400 0x200>;
1046f967856SSimon Glass				clocks = <&ddrck>;
1056f967856SSimon Glass				clock-names = "ddrck";
1066f967856SSimon Glass			};
1076f967856SSimon Glass
1086f967856SSimon Glass			ramc1: ramc@ffffe600 {
1096f967856SSimon Glass				compatible = "atmel,at91sam9g45-ddramc";
1106f967856SSimon Glass				reg = <0xffffe600 0x200>;
1116f967856SSimon Glass				clocks = <&ddrck>;
1126f967856SSimon Glass				clock-names = "ddrck";
1136f967856SSimon Glass			};
1146f967856SSimon Glass
1156f967856SSimon Glass			pmc: pmc@fffffc00 {
1166f967856SSimon Glass				compatible = "atmel,at91sam9g45-pmc", "syscon";
1176f967856SSimon Glass				reg = <0xfffffc00 0x100>;
1186f967856SSimon Glass				interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
1196f967856SSimon Glass				interrupt-controller;
1206f967856SSimon Glass				#address-cells = <1>;
1216f967856SSimon Glass				#size-cells = <0>;
1226f967856SSimon Glass				#interrupt-cells = <1>;
123*eb6f87ccSWenyou Yang				u-boot,dm-pre-reloc;
1246f967856SSimon Glass
1256f967856SSimon Glass				main_osc: main_osc {
1266f967856SSimon Glass					compatible = "atmel,at91rm9200-clk-main-osc";
1276f967856SSimon Glass					#clock-cells = <0>;
1286f967856SSimon Glass					interrupts-extended = <&pmc AT91_PMC_MOSCS>;
1296f967856SSimon Glass					clocks = <&main_xtal>;
1306f967856SSimon Glass				};
1316f967856SSimon Glass
1326f967856SSimon Glass				main: mainck {
1336f967856SSimon Glass					compatible = "atmel,at91rm9200-clk-main";
1346f967856SSimon Glass					#clock-cells = <0>;
1356f967856SSimon Glass					clocks = <&main_osc>;
1366f967856SSimon Glass				};
1376f967856SSimon Glass
138*eb6f87ccSWenyou Yang				plla: pllack@0 {
1396f967856SSimon Glass					compatible = "atmel,at91rm9200-clk-pll";
1406f967856SSimon Glass					#clock-cells = <0>;
1416f967856SSimon Glass					interrupts-extended = <&pmc AT91_PMC_LOCKA>;
1426f967856SSimon Glass					clocks = <&main>;
1436f967856SSimon Glass					reg = <0>;
1446f967856SSimon Glass					atmel,clk-input-range = <2000000 32000000>;
1456f967856SSimon Glass					#atmel,pll-clk-output-range-cells = <4>;
1466f967856SSimon Glass					atmel,pll-clk-output-ranges = <745000000 800000000 0 0
1476f967856SSimon Glass								       695000000 750000000 1 0
1486f967856SSimon Glass								       645000000 700000000 2 0
1496f967856SSimon Glass								       595000000 650000000 3 0
1506f967856SSimon Glass								       545000000 600000000 0 1
1516f967856SSimon Glass								       495000000 555000000 1 1
1526f967856SSimon Glass								       445000000 500000000 2 1
1536f967856SSimon Glass								       400000000 450000000 3 1>;
1546f967856SSimon Glass				};
1556f967856SSimon Glass
1566f967856SSimon Glass				plladiv: plladivck {
1576f967856SSimon Glass					compatible = "atmel,at91sam9x5-clk-plldiv";
1586f967856SSimon Glass					#clock-cells = <0>;
1596f967856SSimon Glass					clocks = <&plla>;
1606f967856SSimon Glass				};
1616f967856SSimon Glass
1626f967856SSimon Glass				utmi: utmick {
1636f967856SSimon Glass					compatible = "atmel,at91sam9x5-clk-utmi";
1646f967856SSimon Glass					#clock-cells = <0>;
1656f967856SSimon Glass					interrupts-extended = <&pmc AT91_PMC_LOCKU>;
1666f967856SSimon Glass					clocks = <&main>;
1676f967856SSimon Glass				};
1686f967856SSimon Glass
1696f967856SSimon Glass				mck: masterck {
1706f967856SSimon Glass					compatible = "atmel,at91rm9200-clk-master";
1716f967856SSimon Glass					#clock-cells = <0>;
1726f967856SSimon Glass					interrupts-extended = <&pmc AT91_PMC_MCKRDY>;
1736f967856SSimon Glass					clocks = <&clk32k>, <&main>, <&plladiv>, <&utmi>;
1746f967856SSimon Glass					atmel,clk-output-range = <0 133333333>;
1756f967856SSimon Glass					atmel,clk-divisors = <1 2 4 3>;
176*eb6f87ccSWenyou Yang					u-boot,dm-pre-reloc;
1776f967856SSimon Glass				};
1786f967856SSimon Glass
1796f967856SSimon Glass				usb: usbck {
1806f967856SSimon Glass					compatible = "atmel,at91sam9x5-clk-usb";
1816f967856SSimon Glass					#clock-cells = <0>;
1826f967856SSimon Glass					clocks = <&plladiv>, <&utmi>;
1836f967856SSimon Glass				};
1846f967856SSimon Glass
1856f967856SSimon Glass				prog: progck {
1866f967856SSimon Glass					compatible = "atmel,at91sam9g45-clk-programmable";
1876f967856SSimon Glass					#address-cells = <1>;
1886f967856SSimon Glass					#size-cells = <0>;
1896f967856SSimon Glass					interrupt-parent = <&pmc>;
1906f967856SSimon Glass					clocks = <&clk32k>, <&main>, <&plladiv>, <&utmi>, <&mck>;
1916f967856SSimon Glass
192*eb6f87ccSWenyou Yang					prog0: prog@0 {
1936f967856SSimon Glass						#clock-cells = <0>;
1946f967856SSimon Glass						reg = <0>;
1956f967856SSimon Glass						interrupts = <AT91_PMC_PCKRDY(0)>;
1966f967856SSimon Glass					};
1976f967856SSimon Glass
198*eb6f87ccSWenyou Yang					prog1: prog@1 {
1996f967856SSimon Glass						#clock-cells = <0>;
2006f967856SSimon Glass						reg = <1>;
2016f967856SSimon Glass						interrupts = <AT91_PMC_PCKRDY(1)>;
2026f967856SSimon Glass					};
2036f967856SSimon Glass				};
2046f967856SSimon Glass
2056f967856SSimon Glass				systemck {
2066f967856SSimon Glass					compatible = "atmel,at91rm9200-clk-system";
2076f967856SSimon Glass					#address-cells = <1>;
2086f967856SSimon Glass					#size-cells = <0>;
2096f967856SSimon Glass
210*eb6f87ccSWenyou Yang					ddrck: ddrck@2 {
2116f967856SSimon Glass						#clock-cells = <0>;
2126f967856SSimon Glass						reg = <2>;
2136f967856SSimon Glass						clocks = <&mck>;
2146f967856SSimon Glass					};
2156f967856SSimon Glass
216*eb6f87ccSWenyou Yang					uhpck: uhpck@6 {
2176f967856SSimon Glass						#clock-cells = <0>;
2186f967856SSimon Glass						reg = <6>;
2196f967856SSimon Glass						clocks = <&usb>;
2206f967856SSimon Glass					};
2216f967856SSimon Glass
222*eb6f87ccSWenyou Yang					pck0: pck0@8 {
2236f967856SSimon Glass						#clock-cells = <0>;
2246f967856SSimon Glass						reg = <8>;
2256f967856SSimon Glass						clocks = <&prog0>;
2266f967856SSimon Glass					};
2276f967856SSimon Glass
228*eb6f87ccSWenyou Yang					pck1: pck1@9 {
2296f967856SSimon Glass						#clock-cells = <0>;
2306f967856SSimon Glass						reg = <9>;
2316f967856SSimon Glass						clocks = <&prog1>;
2326f967856SSimon Glass					};
2336f967856SSimon Glass				};
2346f967856SSimon Glass
2356f967856SSimon Glass				periphck {
2366f967856SSimon Glass					compatible = "atmel,at91rm9200-clk-peripheral";
2376f967856SSimon Glass					#address-cells = <1>;
2386f967856SSimon Glass					#size-cells = <0>;
2396f967856SSimon Glass					clocks = <&mck>;
2406f967856SSimon Glass
241*eb6f87ccSWenyou Yang					pioA_clk: pioA_clk@2 {
2426f967856SSimon Glass						#clock-cells = <0>;
2436f967856SSimon Glass						reg = <2>;
2446f967856SSimon Glass					};
2456f967856SSimon Glass
246*eb6f87ccSWenyou Yang					pioB_clk: pioB_clk@3 {
2476f967856SSimon Glass						#clock-cells = <0>;
2486f967856SSimon Glass						reg = <3>;
2496f967856SSimon Glass					};
2506f967856SSimon Glass
251*eb6f87ccSWenyou Yang					pioC_clk: pioC_clk@4 {
2526f967856SSimon Glass						#clock-cells = <0>;
2536f967856SSimon Glass						reg = <4>;
2546f967856SSimon Glass					};
2556f967856SSimon Glass
256*eb6f87ccSWenyou Yang					pioDE_clk: pioDE_clk@5 {
2576f967856SSimon Glass						#clock-cells = <0>;
2586f967856SSimon Glass						reg = <5>;
2596f967856SSimon Glass					};
2606f967856SSimon Glass
261*eb6f87ccSWenyou Yang					trng_clk: trng_clk@6 {
2626f967856SSimon Glass						#clock-cells = <0>;
2636f967856SSimon Glass						reg = <6>;
2646f967856SSimon Glass					};
2656f967856SSimon Glass
266*eb6f87ccSWenyou Yang					usart0_clk: usart0_clk@7 {
2676f967856SSimon Glass						#clock-cells = <0>;
2686f967856SSimon Glass						reg = <7>;
2696f967856SSimon Glass					};
2706f967856SSimon Glass
271*eb6f87ccSWenyou Yang					usart1_clk: usart1_clk@8 {
2726f967856SSimon Glass						#clock-cells = <0>;
2736f967856SSimon Glass						reg = <8>;
2746f967856SSimon Glass					};
2756f967856SSimon Glass
276*eb6f87ccSWenyou Yang					usart2_clk: usart2_clk@9 {
2776f967856SSimon Glass						#clock-cells = <0>;
2786f967856SSimon Glass						reg = <9>;
2796f967856SSimon Glass					};
2806f967856SSimon Glass
281*eb6f87ccSWenyou Yang					usart3_clk: usart3_clk@10 {
2826f967856SSimon Glass						#clock-cells = <0>;
2836f967856SSimon Glass						reg = <10>;
2846f967856SSimon Glass					};
2856f967856SSimon Glass
286*eb6f87ccSWenyou Yang					mci0_clk: mci0_clk@11 {
2876f967856SSimon Glass						#clock-cells = <0>;
2886f967856SSimon Glass						reg = <11>;
2896f967856SSimon Glass					};
2906f967856SSimon Glass
291*eb6f87ccSWenyou Yang					twi0_clk: twi0_clk@12 {
2926f967856SSimon Glass						#clock-cells = <0>;
2936f967856SSimon Glass						reg = <12>;
2946f967856SSimon Glass					};
2956f967856SSimon Glass
296*eb6f87ccSWenyou Yang					twi1_clk: twi1_clk@13 {
2976f967856SSimon Glass						#clock-cells = <0>;
2986f967856SSimon Glass						reg = <13>;
2996f967856SSimon Glass					};
3006f967856SSimon Glass
301*eb6f87ccSWenyou Yang					spi0_clk: spi0_clk@14 {
3026f967856SSimon Glass						#clock-cells = <0>;
3036f967856SSimon Glass						reg = <14>;
3046f967856SSimon Glass					};
3056f967856SSimon Glass
306*eb6f87ccSWenyou Yang					spi1_clk: spi1_clk@15 {
3076f967856SSimon Glass						#clock-cells = <0>;
3086f967856SSimon Glass						reg = <15>;
3096f967856SSimon Glass					};
3106f967856SSimon Glass
311*eb6f87ccSWenyou Yang					ssc0_clk: ssc0_clk@16 {
3126f967856SSimon Glass						#clock-cells = <0>;
3136f967856SSimon Glass						reg = <16>;
3146f967856SSimon Glass					};
3156f967856SSimon Glass
316*eb6f87ccSWenyou Yang					ssc1_clk: ssc1_clk@17 {
3176f967856SSimon Glass						#clock-cells = <0>;
3186f967856SSimon Glass						reg = <17>;
3196f967856SSimon Glass					};
3206f967856SSimon Glass
321*eb6f87ccSWenyou Yang					tcb0_clk: tcb0_clk@18 {
3226f967856SSimon Glass						#clock-cells = <0>;
3236f967856SSimon Glass						reg = <18>;
3246f967856SSimon Glass					};
3256f967856SSimon Glass
326*eb6f87ccSWenyou Yang					pwm_clk: pwm_clk@19 {
3276f967856SSimon Glass						#clock-cells = <0>;
3286f967856SSimon Glass						reg = <19>;
3296f967856SSimon Glass					};
3306f967856SSimon Glass
331*eb6f87ccSWenyou Yang					adc_clk: adc_clk@20 {
3326f967856SSimon Glass						#clock-cells = <0>;
3336f967856SSimon Glass						reg = <20>;
3346f967856SSimon Glass					};
3356f967856SSimon Glass
336*eb6f87ccSWenyou Yang					dma0_clk: dma0_clk@21 {
3376f967856SSimon Glass						#clock-cells = <0>;
3386f967856SSimon Glass						reg = <21>;
3396f967856SSimon Glass					};
3406f967856SSimon Glass
341*eb6f87ccSWenyou Yang					uhphs_clk: uhphs_clk@22 {
3426f967856SSimon Glass						#clock-cells = <0>;
3436f967856SSimon Glass						reg = <22>;
3446f967856SSimon Glass					};
3456f967856SSimon Glass
346*eb6f87ccSWenyou Yang					lcd_clk: lcd_clk@23 {
3476f967856SSimon Glass						#clock-cells = <0>;
3486f967856SSimon Glass						reg = <23>;
3496f967856SSimon Glass					};
3506f967856SSimon Glass
351*eb6f87ccSWenyou Yang					ac97_clk: ac97_clk@24 {
3526f967856SSimon Glass						#clock-cells = <0>;
3536f967856SSimon Glass						reg = <24>;
3546f967856SSimon Glass					};
3556f967856SSimon Glass
356*eb6f87ccSWenyou Yang					macb0_clk: macb0_clk@25 {
3576f967856SSimon Glass						#clock-cells = <0>;
3586f967856SSimon Glass						reg = <25>;
3596f967856SSimon Glass					};
3606f967856SSimon Glass
361*eb6f87ccSWenyou Yang					isi_clk: isi_clk@26 {
3626f967856SSimon Glass						#clock-cells = <0>;
3636f967856SSimon Glass						reg = <26>;
3646f967856SSimon Glass					};
3656f967856SSimon Glass
366*eb6f87ccSWenyou Yang					udphs_clk: udphs_clk@27 {
3676f967856SSimon Glass						#clock-cells = <0>;
3686f967856SSimon Glass						reg = <27>;
3696f967856SSimon Glass					};
3706f967856SSimon Glass
371*eb6f87ccSWenyou Yang					aestdessha_clk: aestdessha_clk@28 {
3726f967856SSimon Glass						#clock-cells = <0>;
3736f967856SSimon Glass						reg = <28>;
3746f967856SSimon Glass					};
3756f967856SSimon Glass
376*eb6f87ccSWenyou Yang					mci1_clk: mci1_clk@29 {
3776f967856SSimon Glass						#clock-cells = <0>;
3786f967856SSimon Glass						reg = <29>;
3796f967856SSimon Glass					};
3806f967856SSimon Glass
381*eb6f87ccSWenyou Yang					vdec_clk: vdec_clk@30 {
3826f967856SSimon Glass						#clock-cells = <0>;
3836f967856SSimon Glass						reg = <30>;
3846f967856SSimon Glass					};
3856f967856SSimon Glass				};
3866f967856SSimon Glass			};
3876f967856SSimon Glass
3886f967856SSimon Glass			rstc@fffffd00 {
3896f967856SSimon Glass				compatible = "atmel,at91sam9g45-rstc";
3906f967856SSimon Glass				reg = <0xfffffd00 0x10>;
3916f967856SSimon Glass				clocks = <&clk32k>;
3926f967856SSimon Glass			};
3936f967856SSimon Glass
3946f967856SSimon Glass			pit: timer@fffffd30 {
3956f967856SSimon Glass				compatible = "atmel,at91sam9260-pit";
3966f967856SSimon Glass				reg = <0xfffffd30 0xf>;
3976f967856SSimon Glass				interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
3986f967856SSimon Glass				clocks = <&mck>;
3996f967856SSimon Glass			};
4006f967856SSimon Glass
4016f967856SSimon Glass
4026f967856SSimon Glass			shdwc@fffffd10 {
4036f967856SSimon Glass				compatible = "atmel,at91sam9rl-shdwc";
4046f967856SSimon Glass				reg = <0xfffffd10 0x10>;
4056f967856SSimon Glass				clocks = <&clk32k>;
4066f967856SSimon Glass			};
4076f967856SSimon Glass
4086f967856SSimon Glass			tcb0: timer@fff7c000 {
4096f967856SSimon Glass				compatible = "atmel,at91rm9200-tcb";
4106f967856SSimon Glass				reg = <0xfff7c000 0x100>;
4116f967856SSimon Glass				interrupts = <18 IRQ_TYPE_LEVEL_HIGH 0>;
4126f967856SSimon Glass				clocks = <&tcb0_clk>, <&tcb0_clk>, <&tcb0_clk>, <&clk32k>;
4136f967856SSimon Glass				clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk";
4146f967856SSimon Glass			};
4156f967856SSimon Glass
4166f967856SSimon Glass			tcb1: timer@fffd4000 {
4176f967856SSimon Glass				compatible = "atmel,at91rm9200-tcb";
4186f967856SSimon Glass				reg = <0xfffd4000 0x100>;
4196f967856SSimon Glass				interrupts = <18 IRQ_TYPE_LEVEL_HIGH 0>;
4206f967856SSimon Glass				clocks = <&tcb0_clk>, <&tcb0_clk>, <&tcb0_clk>, <&clk32k>;
4216f967856SSimon Glass				clock-names = "t0_clk", "t1_clk", "t2_clk", "slow_clk";
4226f967856SSimon Glass			};
4236f967856SSimon Glass
4246f967856SSimon Glass			dma: dma-controller@ffffec00 {
4256f967856SSimon Glass				compatible = "atmel,at91sam9g45-dma";
4266f967856SSimon Glass				reg = <0xffffec00 0x200>;
4276f967856SSimon Glass				interrupts = <21 IRQ_TYPE_LEVEL_HIGH 0>;
4286f967856SSimon Glass				#dma-cells = <2>;
4296f967856SSimon Glass				clocks = <&dma0_clk>;
4306f967856SSimon Glass				clock-names = "dma_clk";
4316f967856SSimon Glass			};
4326f967856SSimon Glass
4336f967856SSimon Glass			pinctrl@fffff200 {
4346f967856SSimon Glass				#address-cells = <1>;
4356f967856SSimon Glass				#size-cells = <1>;
4366f967856SSimon Glass				compatible = "atmel,at91rm9200-pinctrl", "simple-bus";
4376f967856SSimon Glass				ranges = <0xfffff200 0xfffff200 0xa00>;
438*eb6f87ccSWenyou Yang				reg = <0xfffff200 0x200
439*eb6f87ccSWenyou Yang				       0xfffff400 0x200
440*eb6f87ccSWenyou Yang				       0xfffff600 0x200
441*eb6f87ccSWenyou Yang				       0xfffff800 0x200
442*eb6f87ccSWenyou Yang				       0xfffffa00 0x200
443*eb6f87ccSWenyou Yang				      >;
444*eb6f87ccSWenyou Yang				u-boot,dm-pre-reloc;
4456f967856SSimon Glass
4466f967856SSimon Glass				atmel,mux-mask = <
4476f967856SSimon Glass				      /*    A         B     */
4486f967856SSimon Glass				       0xffffffff 0xffc003ff  /* pioA */
4496f967856SSimon Glass				       0xffffffff 0x800f8f00  /* pioB */
4506f967856SSimon Glass				       0xffffffff 0x00000e00  /* pioC */
4516f967856SSimon Glass				       0xffffffff 0xff0c1381  /* pioD */
4526f967856SSimon Glass				       0xffffffff 0x81ffff81  /* pioE */
4536f967856SSimon Glass				      >;
4546f967856SSimon Glass
4556f967856SSimon Glass				/* shared pinctrl settings */
4566f967856SSimon Glass				adc0 {
4576f967856SSimon Glass					pinctrl_adc0_adtrg: adc0_adtrg {
4586f967856SSimon Glass						atmel,pins = <AT91_PIOD 28 AT91_PERIPH_A AT91_PINCTRL_NONE>;
4596f967856SSimon Glass					};
4606f967856SSimon Glass					pinctrl_adc0_ad0: adc0_ad0 {
4616f967856SSimon Glass						atmel,pins = <AT91_PIOD 20 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
4626f967856SSimon Glass					};
4636f967856SSimon Glass					pinctrl_adc0_ad1: adc0_ad1 {
4646f967856SSimon Glass						atmel,pins = <AT91_PIOD 21 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
4656f967856SSimon Glass					};
4666f967856SSimon Glass					pinctrl_adc0_ad2: adc0_ad2 {
4676f967856SSimon Glass						atmel,pins = <AT91_PIOD 22 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
4686f967856SSimon Glass					};
4696f967856SSimon Glass					pinctrl_adc0_ad3: adc0_ad3 {
4706f967856SSimon Glass						atmel,pins = <AT91_PIOD 23 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
4716f967856SSimon Glass					};
4726f967856SSimon Glass					pinctrl_adc0_ad4: adc0_ad4 {
4736f967856SSimon Glass						atmel,pins = <AT91_PIOD 24 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
4746f967856SSimon Glass					};
4756f967856SSimon Glass					pinctrl_adc0_ad5: adc0_ad5 {
4766f967856SSimon Glass						atmel,pins = <AT91_PIOD 25 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
4776f967856SSimon Glass					};
4786f967856SSimon Glass					pinctrl_adc0_ad6: adc0_ad6 {
4796f967856SSimon Glass						atmel,pins = <AT91_PIOD 26 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
4806f967856SSimon Glass					};
4816f967856SSimon Glass					pinctrl_adc0_ad7: adc0_ad7 {
4826f967856SSimon Glass						atmel,pins = <AT91_PIOD 27 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
4836f967856SSimon Glass					};
4846f967856SSimon Glass				};
4856f967856SSimon Glass
4866f967856SSimon Glass				dbgu {
487*eb6f87ccSWenyou Yang					u-boot,dm-pre-reloc;
4886f967856SSimon Glass					pinctrl_dbgu: dbgu-0 {
4896f967856SSimon Glass						atmel,pins =
490*eb6f87ccSWenyou Yang							<AT91_PIOB 12 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
491*eb6f87ccSWenyou Yang							 AT91_PIOB 13 AT91_PERIPH_A AT91_PINCTRL_NONE>;
4926f967856SSimon Glass					};
4936f967856SSimon Glass				};
4946f967856SSimon Glass
4956f967856SSimon Glass				i2c0 {
4966f967856SSimon Glass					pinctrl_i2c0: i2c0-0 {
4976f967856SSimon Glass						atmel,pins =
4986f967856SSimon Glass							<AT91_PIOA 21 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PA21 periph A TWCK0 */
4996f967856SSimon Glass							 AT91_PIOA 20 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PA20 periph A TWD0 */
5006f967856SSimon Glass					};
5016f967856SSimon Glass				};
5026f967856SSimon Glass
5036f967856SSimon Glass				i2c1 {
5046f967856SSimon Glass					pinctrl_i2c1: i2c1-0 {
5056f967856SSimon Glass						atmel,pins =
5066f967856SSimon Glass							<AT91_PIOB 11 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PB11 periph A TWCK1 */
5076f967856SSimon Glass							 AT91_PIOB 10 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PB10 periph A TWD1 */
5086f967856SSimon Glass					};
5096f967856SSimon Glass				};
5106f967856SSimon Glass
5116f967856SSimon Glass				isi {
5126f967856SSimon Glass					pinctrl_isi_data_0_7: isi-0-data-0-7 {
5136f967856SSimon Glass						atmel,pins =
5146f967856SSimon Glass							<AT91_PIOB 20 AT91_PERIPH_A AT91_PINCTRL_NONE /* D0 */
5156f967856SSimon Glass							AT91_PIOB 21 AT91_PERIPH_A AT91_PINCTRL_NONE /* D1 */
5166f967856SSimon Glass							AT91_PIOB 22 AT91_PERIPH_A AT91_PINCTRL_NONE /* D2 */
5176f967856SSimon Glass							AT91_PIOB 23 AT91_PERIPH_A AT91_PINCTRL_NONE /* D3 */
5186f967856SSimon Glass							AT91_PIOB 24 AT91_PERIPH_A AT91_PINCTRL_NONE /* D4 */
5196f967856SSimon Glass							AT91_PIOB 25 AT91_PERIPH_A AT91_PINCTRL_NONE /* D5 */
5206f967856SSimon Glass							AT91_PIOB 26 AT91_PERIPH_A AT91_PINCTRL_NONE /* D6 */
5216f967856SSimon Glass							AT91_PIOB 27 AT91_PERIPH_A AT91_PINCTRL_NONE /* D7 */
5226f967856SSimon Glass							AT91_PIOB 28 AT91_PERIPH_A AT91_PINCTRL_NONE /* PCK */
5236f967856SSimon Glass							AT91_PIOB 29 AT91_PERIPH_A AT91_PINCTRL_NONE /* VSYNC */
5246f967856SSimon Glass							AT91_PIOB 30 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* HSYNC */
5256f967856SSimon Glass					};
5266f967856SSimon Glass
5276f967856SSimon Glass					pinctrl_isi_data_8_9: isi-0-data-8-9 {
5286f967856SSimon Glass						atmel,pins =
5296f967856SSimon Glass							<AT91_PIOB 8 AT91_PERIPH_B AT91_PINCTRL_NONE /* D8 */
5306f967856SSimon Glass							AT91_PIOB 9 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* D9 */
5316f967856SSimon Glass					};
5326f967856SSimon Glass
5336f967856SSimon Glass					pinctrl_isi_data_10_11: isi-0-data-10-11 {
5346f967856SSimon Glass						atmel,pins =
5356f967856SSimon Glass							<AT91_PIOB 10 AT91_PERIPH_B AT91_PINCTRL_NONE /* D10 */
5366f967856SSimon Glass							AT91_PIOB 11 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* D11 */
5376f967856SSimon Glass					};
5386f967856SSimon Glass				};
5396f967856SSimon Glass
5406f967856SSimon Glass				usart0 {
5416f967856SSimon Glass					pinctrl_usart0: usart0-0 {
5426f967856SSimon Glass						atmel,pins =
5436f967856SSimon Glass							<AT91_PIOB 19 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PB19 periph A with pullup */
5446f967856SSimon Glass							 AT91_PIOB 18 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PB18 periph A */
5456f967856SSimon Glass					};
5466f967856SSimon Glass
5476f967856SSimon Glass					pinctrl_usart0_rts: usart0_rts-0 {
5486f967856SSimon Glass						atmel,pins =
5496f967856SSimon Glass							<AT91_PIOB 17 AT91_PERIPH_B AT91_PINCTRL_NONE>;	/* PB17 periph B */
5506f967856SSimon Glass					};
5516f967856SSimon Glass
5526f967856SSimon Glass					pinctrl_usart0_cts: usart0_cts-0 {
5536f967856SSimon Glass						atmel,pins =
5546f967856SSimon Glass							<AT91_PIOB 15 AT91_PERIPH_B AT91_PINCTRL_NONE>;	/* PB15 periph B */
5556f967856SSimon Glass					};
5566f967856SSimon Glass				};
5576f967856SSimon Glass
5586f967856SSimon Glass				uart1 {
5596f967856SSimon Glass					pinctrl_usart1: usart1-0 {
5606f967856SSimon Glass						atmel,pins =
5616f967856SSimon Glass							<AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PB4 periph A with pullup */
5626f967856SSimon Glass							 AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PB5 periph A */
5636f967856SSimon Glass					};
5646f967856SSimon Glass
5656f967856SSimon Glass					pinctrl_usart1_rts: usart1_rts-0 {
5666f967856SSimon Glass						atmel,pins =
5676f967856SSimon Glass							<AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PD16 periph A */
5686f967856SSimon Glass					};
5696f967856SSimon Glass
5706f967856SSimon Glass					pinctrl_usart1_cts: usart1_cts-0 {
5716f967856SSimon Glass						atmel,pins =
5726f967856SSimon Glass							<AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PD17 periph A */
5736f967856SSimon Glass					};
5746f967856SSimon Glass				};
5756f967856SSimon Glass
5766f967856SSimon Glass				usart2 {
5776f967856SSimon Glass					pinctrl_usart2: usart2-0 {
5786f967856SSimon Glass						atmel,pins =
5796f967856SSimon Glass							<AT91_PIOB 6 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PB6 periph A with pullup */
5806f967856SSimon Glass							 AT91_PIOB 7 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PB7 periph A */
5816f967856SSimon Glass					};
5826f967856SSimon Glass
5836f967856SSimon Glass					pinctrl_usart2_rts: usart2_rts-0 {
5846f967856SSimon Glass						atmel,pins =
5856f967856SSimon Glass							<AT91_PIOC 9 AT91_PERIPH_B AT91_PINCTRL_NONE>;	/* PC9 periph B */
5866f967856SSimon Glass					};
5876f967856SSimon Glass
5886f967856SSimon Glass					pinctrl_usart2_cts: usart2_cts-0 {
5896f967856SSimon Glass						atmel,pins =
5906f967856SSimon Glass							<AT91_PIOC 11 AT91_PERIPH_B AT91_PINCTRL_NONE>;	/* PC11 periph B */
5916f967856SSimon Glass					};
5926f967856SSimon Glass				};
5936f967856SSimon Glass
5946f967856SSimon Glass				usart3 {
5956f967856SSimon Glass					pinctrl_usart3: usart3-0 {
5966f967856SSimon Glass						atmel,pins =
5976f967856SSimon Glass							<AT91_PIOB 8 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PB9 periph A with pullup */
5986f967856SSimon Glass							 AT91_PIOB 9 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PB8 periph A */
5996f967856SSimon Glass					};
6006f967856SSimon Glass
6016f967856SSimon Glass					pinctrl_usart3_rts: usart3_rts-0 {
6026f967856SSimon Glass						atmel,pins =
6036f967856SSimon Glass							<AT91_PIOA 23 AT91_PERIPH_B AT91_PINCTRL_NONE>;	/* PA23 periph B */
6046f967856SSimon Glass					};
6056f967856SSimon Glass
6066f967856SSimon Glass					pinctrl_usart3_cts: usart3_cts-0 {
6076f967856SSimon Glass						atmel,pins =
6086f967856SSimon Glass							<AT91_PIOA 24 AT91_PERIPH_B AT91_PINCTRL_NONE>;	/* PA24 periph B */
6096f967856SSimon Glass					};
6106f967856SSimon Glass				};
6116f967856SSimon Glass
6126f967856SSimon Glass				nand {
6136f967856SSimon Glass					pinctrl_nand: nand-0 {
6146f967856SSimon Glass						atmel,pins =
6156f967856SSimon Glass							<AT91_PIOC 8 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP	/* PC8 gpio RDY pin pull_up*/
6166f967856SSimon Glass							 AT91_PIOC 14 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;	/* PC14 gpio enable pin pull_up */
6176f967856SSimon Glass					};
6186f967856SSimon Glass				};
6196f967856SSimon Glass
6206f967856SSimon Glass				macb {
6216f967856SSimon Glass					pinctrl_macb_rmii: macb_rmii-0 {
6226f967856SSimon Glass						atmel,pins =
6236f967856SSimon Glass							<AT91_PIOA 10 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PA10 periph A */
6246f967856SSimon Glass							 AT91_PIOA 11 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PA11 periph A */
6256f967856SSimon Glass							 AT91_PIOA 12 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PA12 periph A */
6266f967856SSimon Glass							 AT91_PIOA 13 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PA13 periph A */
6276f967856SSimon Glass							 AT91_PIOA 14 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PA14 periph A */
6286f967856SSimon Glass							 AT91_PIOA 15 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PA15 periph A */
6296f967856SSimon Glass							 AT91_PIOA 16 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PA16 periph A */
6306f967856SSimon Glass							 AT91_PIOA 17 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PA17 periph A */
6316f967856SSimon Glass							 AT91_PIOA 18 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PA18 periph A */
6326f967856SSimon Glass							 AT91_PIOA 19 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PA19 periph A */
6336f967856SSimon Glass					};
6346f967856SSimon Glass
6356f967856SSimon Glass					pinctrl_macb_rmii_mii: macb_rmii_mii-0 {
6366f967856SSimon Glass						atmel,pins =
6376f967856SSimon Glass							<AT91_PIOA 6 AT91_PERIPH_B AT91_PINCTRL_NONE	/* PA6 periph B */
6386f967856SSimon Glass							 AT91_PIOA 7 AT91_PERIPH_B AT91_PINCTRL_NONE	/* PA7 periph B */
6396f967856SSimon Glass							 AT91_PIOA 8 AT91_PERIPH_B AT91_PINCTRL_NONE	/* PA8 periph B */
6406f967856SSimon Glass							 AT91_PIOA 9 AT91_PERIPH_B AT91_PINCTRL_NONE	/* PA9 periph B */
6416f967856SSimon Glass							 AT91_PIOA 27 AT91_PERIPH_B AT91_PINCTRL_NONE	/* PA27 periph B */
6426f967856SSimon Glass							 AT91_PIOA 28 AT91_PERIPH_B AT91_PINCTRL_NONE	/* PA28 periph B */
6436f967856SSimon Glass							 AT91_PIOA 29 AT91_PERIPH_B AT91_PINCTRL_NONE	/* PA29 periph B */
6446f967856SSimon Glass							 AT91_PIOA 30 AT91_PERIPH_B AT91_PINCTRL_NONE>;	/* PA30 periph B */
6456f967856SSimon Glass					};
6466f967856SSimon Glass				};
6476f967856SSimon Glass
6486f967856SSimon Glass				mmc0 {
6496f967856SSimon Glass					pinctrl_mmc0_slot0_clk_cmd_dat0: mmc0_slot0_clk_cmd_dat0-0 {
6506f967856SSimon Glass						atmel,pins =
6516f967856SSimon Glass							<AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PA0 periph A */
6526f967856SSimon Glass							 AT91_PIOA 1 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PA1 periph A with pullup */
6536f967856SSimon Glass							 AT91_PIOA 2 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;	/* PA2 periph A with pullup */
6546f967856SSimon Glass					};
6556f967856SSimon Glass
6566f967856SSimon Glass					pinctrl_mmc0_slot0_dat1_3: mmc0_slot0_dat1_3-0 {
6576f967856SSimon Glass						atmel,pins =
6586f967856SSimon Glass							<AT91_PIOA 3 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PA3 periph A with pullup */
6596f967856SSimon Glass							 AT91_PIOA 4 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PA4 periph A with pullup */
6606f967856SSimon Glass							 AT91_PIOA 5 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;	/* PA5 periph A with pullup */
6616f967856SSimon Glass					};
6626f967856SSimon Glass
6636f967856SSimon Glass					pinctrl_mmc0_slot0_dat4_7: mmc0_slot0_dat4_7-0 {
6646f967856SSimon Glass						atmel,pins =
6656f967856SSimon Glass							<AT91_PIOA 6 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PA6 periph A with pullup */
6666f967856SSimon Glass							 AT91_PIOA 7 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PA7 periph A with pullup */
6676f967856SSimon Glass							 AT91_PIOA 8 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PA8 periph A with pullup */
6686f967856SSimon Glass							 AT91_PIOA 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;	/* PA9 periph A with pullup */
6696f967856SSimon Glass					};
6706f967856SSimon Glass				};
6716f967856SSimon Glass
6726f967856SSimon Glass				mmc1 {
6736f967856SSimon Glass					pinctrl_mmc1_slot0_clk_cmd_dat0: mmc1_slot0_clk_cmd_dat0-0 {
6746f967856SSimon Glass						atmel,pins =
6756f967856SSimon Glass							<AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PA31 periph A */
6766f967856SSimon Glass							 AT91_PIOA 22 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PA22 periph A with pullup */
6776f967856SSimon Glass							 AT91_PIOA 23 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;	/* PA23 periph A with pullup */
6786f967856SSimon Glass					};
6796f967856SSimon Glass
6806f967856SSimon Glass					pinctrl_mmc1_slot0_dat1_3: mmc1_slot0_dat1_3-0 {
6816f967856SSimon Glass						atmel,pins =
6826f967856SSimon Glass							<AT91_PIOA 24 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PA24 periph A with pullup */
6836f967856SSimon Glass							 AT91_PIOA 25 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PA25 periph A with pullup */
6846f967856SSimon Glass							 AT91_PIOA 26 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;	/* PA26 periph A with pullup */
6856f967856SSimon Glass					};
6866f967856SSimon Glass
6876f967856SSimon Glass					pinctrl_mmc1_slot0_dat4_7: mmc1_slot0_dat4_7-0 {
6886f967856SSimon Glass						atmel,pins =
6896f967856SSimon Glass							<AT91_PIOA 27 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PA27 periph A with pullup */
6906f967856SSimon Glass							 AT91_PIOA 28 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PA28 periph A with pullup */
6916f967856SSimon Glass							 AT91_PIOA 29 AT91_PERIPH_A AT91_PINCTRL_PULL_UP	/* PA29 periph A with pullup */
6926f967856SSimon Glass							 AT91_PIOA 20 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;	/* PA30 periph A with pullup */
6936f967856SSimon Glass					};
6946f967856SSimon Glass				};
6956f967856SSimon Glass
6966f967856SSimon Glass				ssc0 {
6976f967856SSimon Glass					pinctrl_ssc0_tx: ssc0_tx-0 {
6986f967856SSimon Glass						atmel,pins =
6996f967856SSimon Glass							<AT91_PIOD 0 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PD0 periph A */
7006f967856SSimon Glass							 AT91_PIOD 1 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PD1 periph A */
7016f967856SSimon Glass							 AT91_PIOD 2 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PD2 periph A */
7026f967856SSimon Glass					};
7036f967856SSimon Glass
7046f967856SSimon Glass					pinctrl_ssc0_rx: ssc0_rx-0 {
7056f967856SSimon Glass						atmel,pins =
7066f967856SSimon Glass							<AT91_PIOD 3 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PD3 periph A */
7076f967856SSimon Glass							 AT91_PIOD 4 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PD4 periph A */
7086f967856SSimon Glass							 AT91_PIOD 5 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PD5 periph A */
7096f967856SSimon Glass					};
7106f967856SSimon Glass				};
7116f967856SSimon Glass
7126f967856SSimon Glass				ssc1 {
7136f967856SSimon Glass					pinctrl_ssc1_tx: ssc1_tx-0 {
7146f967856SSimon Glass						atmel,pins =
7156f967856SSimon Glass							<AT91_PIOD 10 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PD10 periph A */
7166f967856SSimon Glass							 AT91_PIOD 11 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PD11 periph A */
7176f967856SSimon Glass							 AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PD12 periph A */
7186f967856SSimon Glass					};
7196f967856SSimon Glass
7206f967856SSimon Glass					pinctrl_ssc1_rx: ssc1_rx-0 {
7216f967856SSimon Glass						atmel,pins =
7226f967856SSimon Glass							<AT91_PIOD 13 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PD13 periph A */
7236f967856SSimon Glass							 AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PD14 periph A */
7246f967856SSimon Glass							 AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PD15 periph A */
7256f967856SSimon Glass					};
7266f967856SSimon Glass				};
7276f967856SSimon Glass
7286f967856SSimon Glass				spi0 {
7296f967856SSimon Glass					pinctrl_spi0: spi0-0 {
7306f967856SSimon Glass						atmel,pins =
7316f967856SSimon Glass							<AT91_PIOB 0 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PB0 periph A SPI0_MISO pin */
7326f967856SSimon Glass							 AT91_PIOB 1 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PB1 periph A SPI0_MOSI pin */
7336f967856SSimon Glass							 AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PB2 periph A SPI0_SPCK pin */
7346f967856SSimon Glass					};
7356f967856SSimon Glass				};
7366f967856SSimon Glass
7376f967856SSimon Glass				spi1 {
7386f967856SSimon Glass					pinctrl_spi1: spi1-0 {
7396f967856SSimon Glass						atmel,pins =
7406f967856SSimon Glass							<AT91_PIOB 14 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PB14 periph A SPI1_MISO pin */
7416f967856SSimon Glass							 AT91_PIOB 15 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PB15 periph A SPI1_MOSI pin */
7426f967856SSimon Glass							 AT91_PIOB 16 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PB16 periph A SPI1_SPCK pin */
7436f967856SSimon Glass					};
7446f967856SSimon Glass				};
7456f967856SSimon Glass
7466f967856SSimon Glass				tcb0 {
7476f967856SSimon Glass					pinctrl_tcb0_tclk0: tcb0_tclk0-0 {
7486f967856SSimon Glass						atmel,pins = <AT91_PIOD 23 AT91_PERIPH_A AT91_PINCTRL_NONE>;
7496f967856SSimon Glass					};
7506f967856SSimon Glass
7516f967856SSimon Glass					pinctrl_tcb0_tclk1: tcb0_tclk1-0 {
7526f967856SSimon Glass						atmel,pins = <AT91_PIOD 29 AT91_PERIPH_A AT91_PINCTRL_NONE>;
7536f967856SSimon Glass					};
7546f967856SSimon Glass
7556f967856SSimon Glass					pinctrl_tcb0_tclk2: tcb0_tclk2-0 {
7566f967856SSimon Glass						atmel,pins = <AT91_PIOC 10 AT91_PERIPH_B AT91_PINCTRL_NONE>;
7576f967856SSimon Glass					};
7586f967856SSimon Glass
7596f967856SSimon Glass					pinctrl_tcb0_tioa0: tcb0_tioa0-0 {
7606f967856SSimon Glass						atmel,pins = <AT91_PIOD 20 AT91_PERIPH_A AT91_PINCTRL_NONE>;
7616f967856SSimon Glass					};
7626f967856SSimon Glass
7636f967856SSimon Glass					pinctrl_tcb0_tioa1: tcb0_tioa1-0 {
7646f967856SSimon Glass						atmel,pins = <AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_NONE>;
7656f967856SSimon Glass					};
7666f967856SSimon Glass
7676f967856SSimon Glass					pinctrl_tcb0_tioa2: tcb0_tioa2-0 {
7686f967856SSimon Glass						atmel,pins = <AT91_PIOD 22 AT91_PERIPH_A AT91_PINCTRL_NONE>;
7696f967856SSimon Glass					};
7706f967856SSimon Glass
7716f967856SSimon Glass					pinctrl_tcb0_tiob0: tcb0_tiob0-0 {
7726f967856SSimon Glass						atmel,pins = <AT91_PIOD 30 AT91_PERIPH_A AT91_PINCTRL_NONE>;
7736f967856SSimon Glass					};
7746f967856SSimon Glass
7756f967856SSimon Glass					pinctrl_tcb0_tiob1: tcb0_tiob1-0 {
7766f967856SSimon Glass						atmel,pins = <AT91_PIOD 31 AT91_PERIPH_A AT91_PINCTRL_NONE>;
7776f967856SSimon Glass					};
7786f967856SSimon Glass
7796f967856SSimon Glass					pinctrl_tcb0_tiob2: tcb0_tiob2-0 {
7806f967856SSimon Glass						atmel,pins = <AT91_PIOA 26 AT91_PERIPH_B AT91_PINCTRL_NONE>;
7816f967856SSimon Glass					};
7826f967856SSimon Glass				};
7836f967856SSimon Glass
7846f967856SSimon Glass				tcb1 {
7856f967856SSimon Glass					pinctrl_tcb1_tclk0: tcb1_tclk0-0 {
7866f967856SSimon Glass						atmel,pins = <AT91_PIOA 0 AT91_PERIPH_B AT91_PINCTRL_NONE>;
7876f967856SSimon Glass					};
7886f967856SSimon Glass
7896f967856SSimon Glass					pinctrl_tcb1_tclk1: tcb1_tclk1-0 {
7906f967856SSimon Glass						atmel,pins = <AT91_PIOA 3 AT91_PERIPH_B AT91_PINCTRL_NONE>;
7916f967856SSimon Glass					};
7926f967856SSimon Glass
7936f967856SSimon Glass					pinctrl_tcb1_tclk2: tcb1_tclk2-0 {
7946f967856SSimon Glass						atmel,pins = <AT91_PIOD 9 AT91_PERIPH_B AT91_PINCTRL_NONE>;
7956f967856SSimon Glass					};
7966f967856SSimon Glass
7976f967856SSimon Glass					pinctrl_tcb1_tioa0: tcb1_tioa0-0 {
7986f967856SSimon Glass						atmel,pins = <AT91_PIOA 1 AT91_PERIPH_B AT91_PINCTRL_NONE>;
7996f967856SSimon Glass					};
8006f967856SSimon Glass
8016f967856SSimon Glass					pinctrl_tcb1_tioa1: tcb1_tioa1-0 {
8026f967856SSimon Glass						atmel,pins = <AT91_PIOA 4 AT91_PERIPH_B AT91_PINCTRL_NONE>;
8036f967856SSimon Glass					};
8046f967856SSimon Glass
8056f967856SSimon Glass					pinctrl_tcb1_tioa2: tcb1_tioa2-0 {
8066f967856SSimon Glass						atmel,pins = <AT91_PIOD 7 AT91_PERIPH_B AT91_PINCTRL_NONE>;
8076f967856SSimon Glass					};
8086f967856SSimon Glass
8096f967856SSimon Glass					pinctrl_tcb1_tiob0: tcb1_tiob0-0 {
8106f967856SSimon Glass						atmel,pins = <AT91_PIOA 2 AT91_PERIPH_B AT91_PINCTRL_NONE>;
8116f967856SSimon Glass					};
8126f967856SSimon Glass
8136f967856SSimon Glass					pinctrl_tcb1_tiob1: tcb1_tiob1-0 {
8146f967856SSimon Glass						atmel,pins = <AT91_PIOA 5 AT91_PERIPH_B AT91_PINCTRL_NONE>;
8156f967856SSimon Glass					};
8166f967856SSimon Glass
8176f967856SSimon Glass					pinctrl_tcb1_tiob2: tcb1_tiob2-0 {
8186f967856SSimon Glass						atmel,pins = <AT91_PIOD 8 AT91_PERIPH_B AT91_PINCTRL_NONE>;
8196f967856SSimon Glass					};
8206f967856SSimon Glass				};
8216f967856SSimon Glass
8226f967856SSimon Glass				fb {
8236f967856SSimon Glass					pinctrl_fb: fb-0 {
8246f967856SSimon Glass						atmel,pins =
8256f967856SSimon Glass							<AT91_PIOE 0 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE0 periph A */
8266f967856SSimon Glass							 AT91_PIOE 2 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE2 periph A */
8276f967856SSimon Glass							 AT91_PIOE 3 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE3 periph A */
8286f967856SSimon Glass							 AT91_PIOE 4 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE4 periph A */
8296f967856SSimon Glass							 AT91_PIOE 5 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE5 periph A */
8306f967856SSimon Glass							 AT91_PIOE 6 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE6 periph A */
8316f967856SSimon Glass							 AT91_PIOE 7 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE7 periph A */
8326f967856SSimon Glass							 AT91_PIOE 8 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE8 periph A */
8336f967856SSimon Glass							 AT91_PIOE 9 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE9 periph A */
8346f967856SSimon Glass							 AT91_PIOE 10 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE10 periph A */
8356f967856SSimon Glass							 AT91_PIOE 11 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE11 periph A */
8366f967856SSimon Glass							 AT91_PIOE 12 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE12 periph A */
8376f967856SSimon Glass							 AT91_PIOE 13 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE13 periph A */
8386f967856SSimon Glass							 AT91_PIOE 14 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE14 periph A */
8396f967856SSimon Glass							 AT91_PIOE 15 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE15 periph A */
8406f967856SSimon Glass							 AT91_PIOE 16 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE16 periph A */
8416f967856SSimon Glass							 AT91_PIOE 17 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE17 periph A */
8426f967856SSimon Glass							 AT91_PIOE 18 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE18 periph A */
8436f967856SSimon Glass							 AT91_PIOE 19 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE19 periph A */
8446f967856SSimon Glass							 AT91_PIOE 20 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE20 periph A */
8456f967856SSimon Glass							 AT91_PIOE 21 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE21 periph A */
8466f967856SSimon Glass							 AT91_PIOE 22 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE22 periph A */
8476f967856SSimon Glass							 AT91_PIOE 23 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE23 periph A */
8486f967856SSimon Glass							 AT91_PIOE 24 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE24 periph A */
8496f967856SSimon Glass							 AT91_PIOE 25 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE25 periph A */
8506f967856SSimon Glass							 AT91_PIOE 26 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE26 periph A */
8516f967856SSimon Glass							 AT91_PIOE 27 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE27 periph A */
8526f967856SSimon Glass							 AT91_PIOE 28 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE28 periph A */
8536f967856SSimon Glass							 AT91_PIOE 29 AT91_PERIPH_A AT91_PINCTRL_NONE	/* PE29 periph A */
8546f967856SSimon Glass							 AT91_PIOE 30 AT91_PERIPH_A AT91_PINCTRL_NONE>;	/* PE30 periph A */
8556f967856SSimon Glass					};
8566f967856SSimon Glass				};
857*eb6f87ccSWenyou Yang			};
8586f967856SSimon Glass
8596f967856SSimon Glass			pioA: gpio@fffff200 {
8606f967856SSimon Glass				compatible = "atmel,at91rm9200-gpio";
8616f967856SSimon Glass				reg = <0xfffff200 0x200>;
8626f967856SSimon Glass				interrupts = <2 IRQ_TYPE_LEVEL_HIGH 1>;
8636f967856SSimon Glass				#gpio-cells = <2>;
8646f967856SSimon Glass				gpio-controller;
8656f967856SSimon Glass				interrupt-controller;
8666f967856SSimon Glass				#interrupt-cells = <2>;
8676f967856SSimon Glass				clocks = <&pioA_clk>;
8686f967856SSimon Glass			};
8696f967856SSimon Glass
8706f967856SSimon Glass			pioB: gpio@fffff400 {
8716f967856SSimon Glass				compatible = "atmel,at91rm9200-gpio";
8726f967856SSimon Glass				reg = <0xfffff400 0x200>;
8736f967856SSimon Glass				interrupts = <3 IRQ_TYPE_LEVEL_HIGH 1>;
8746f967856SSimon Glass				#gpio-cells = <2>;
8756f967856SSimon Glass				gpio-controller;
8766f967856SSimon Glass				interrupt-controller;
8776f967856SSimon Glass				#interrupt-cells = <2>;
8786f967856SSimon Glass				clocks = <&pioB_clk>;
8796f967856SSimon Glass			};
8806f967856SSimon Glass
8816f967856SSimon Glass			pioC: gpio@fffff600 {
8826f967856SSimon Glass				compatible = "atmel,at91rm9200-gpio";
8836f967856SSimon Glass				reg = <0xfffff600 0x200>;
8846f967856SSimon Glass				interrupts = <4 IRQ_TYPE_LEVEL_HIGH 1>;
8856f967856SSimon Glass				#gpio-cells = <2>;
8866f967856SSimon Glass				gpio-controller;
8876f967856SSimon Glass				interrupt-controller;
8886f967856SSimon Glass				#interrupt-cells = <2>;
8896f967856SSimon Glass				clocks = <&pioC_clk>;
8906f967856SSimon Glass			};
8916f967856SSimon Glass
8926f967856SSimon Glass			pioD: gpio@fffff800 {
8936f967856SSimon Glass				compatible = "atmel,at91rm9200-gpio";
8946f967856SSimon Glass				reg = <0xfffff800 0x200>;
8956f967856SSimon Glass				interrupts = <5 IRQ_TYPE_LEVEL_HIGH 1>;
8966f967856SSimon Glass				#gpio-cells = <2>;
8976f967856SSimon Glass				gpio-controller;
8986f967856SSimon Glass				interrupt-controller;
8996f967856SSimon Glass				#interrupt-cells = <2>;
9006f967856SSimon Glass				clocks = <&pioDE_clk>;
9016f967856SSimon Glass			};
9026f967856SSimon Glass
9036f967856SSimon Glass			pioE: gpio@fffffa00 {
9046f967856SSimon Glass				compatible = "atmel,at91rm9200-gpio";
9056f967856SSimon Glass				reg = <0xfffffa00 0x200>;
9066f967856SSimon Glass				interrupts = <5 IRQ_TYPE_LEVEL_HIGH 1>;
9076f967856SSimon Glass				#gpio-cells = <2>;
9086f967856SSimon Glass				gpio-controller;
9096f967856SSimon Glass				interrupt-controller;
9106f967856SSimon Glass				#interrupt-cells = <2>;
9116f967856SSimon Glass				clocks = <&pioDE_clk>;
9126f967856SSimon Glass			};
9136f967856SSimon Glass
9146f967856SSimon Glass			dbgu: serial@ffffee00 {
9156f967856SSimon Glass				compatible = "atmel,at91sam9260-dbgu", "atmel,at91sam9260-usart";
9166f967856SSimon Glass				reg = <0xffffee00 0x200>;
9176f967856SSimon Glass				interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
9186f967856SSimon Glass				pinctrl-names = "default";
9196f967856SSimon Glass				pinctrl-0 = <&pinctrl_dbgu>;
9206f967856SSimon Glass				clocks = <&mck>;
9216f967856SSimon Glass				clock-names = "usart";
9226f967856SSimon Glass				status = "disabled";
9236f967856SSimon Glass			};
9246f967856SSimon Glass
9256f967856SSimon Glass			usart0: serial@fff8c000 {
9266f967856SSimon Glass				compatible = "atmel,at91sam9260-usart";
9276f967856SSimon Glass				reg = <0xfff8c000 0x200>;
9286f967856SSimon Glass				interrupts = <7 IRQ_TYPE_LEVEL_HIGH 5>;
9296f967856SSimon Glass				atmel,use-dma-rx;
9306f967856SSimon Glass				atmel,use-dma-tx;
9316f967856SSimon Glass				pinctrl-names = "default";
9326f967856SSimon Glass				pinctrl-0 = <&pinctrl_usart0>;
9336f967856SSimon Glass				clocks = <&usart0_clk>;
9346f967856SSimon Glass				clock-names = "usart";
9356f967856SSimon Glass				status = "disabled";
9366f967856SSimon Glass			};
9376f967856SSimon Glass
9386f967856SSimon Glass			usart1: serial@fff90000 {
9396f967856SSimon Glass				compatible = "atmel,at91sam9260-usart";
9406f967856SSimon Glass				reg = <0xfff90000 0x200>;
9416f967856SSimon Glass				interrupts = <8 IRQ_TYPE_LEVEL_HIGH 5>;
9426f967856SSimon Glass				atmel,use-dma-rx;
9436f967856SSimon Glass				atmel,use-dma-tx;
9446f967856SSimon Glass				pinctrl-names = "default";
9456f967856SSimon Glass				pinctrl-0 = <&pinctrl_usart1>;
9466f967856SSimon Glass				clocks = <&usart1_clk>;
9476f967856SSimon Glass				clock-names = "usart";
9486f967856SSimon Glass				status = "disabled";
9496f967856SSimon Glass			};
9506f967856SSimon Glass
9516f967856SSimon Glass			usart2: serial@fff94000 {
9526f967856SSimon Glass				compatible = "atmel,at91sam9260-usart";
9536f967856SSimon Glass				reg = <0xfff94000 0x200>;
9546f967856SSimon Glass				interrupts = <9 IRQ_TYPE_LEVEL_HIGH 5>;
9556f967856SSimon Glass				atmel,use-dma-rx;
9566f967856SSimon Glass				atmel,use-dma-tx;
9576f967856SSimon Glass				pinctrl-names = "default";
9586f967856SSimon Glass				pinctrl-0 = <&pinctrl_usart2>;
9596f967856SSimon Glass				clocks = <&usart2_clk>;
9606f967856SSimon Glass				clock-names = "usart";
9616f967856SSimon Glass				status = "disabled";
9626f967856SSimon Glass			};
9636f967856SSimon Glass
9646f967856SSimon Glass			usart3: serial@fff98000 {
9656f967856SSimon Glass				compatible = "atmel,at91sam9260-usart";
9666f967856SSimon Glass				reg = <0xfff98000 0x200>;
9676f967856SSimon Glass				interrupts = <10 IRQ_TYPE_LEVEL_HIGH 5>;
9686f967856SSimon Glass				atmel,use-dma-rx;
9696f967856SSimon Glass				atmel,use-dma-tx;
9706f967856SSimon Glass				pinctrl-names = "default";
9716f967856SSimon Glass				pinctrl-0 = <&pinctrl_usart3>;
9726f967856SSimon Glass				clocks = <&usart3_clk>;
9736f967856SSimon Glass				clock-names = "usart";
9746f967856SSimon Glass				status = "disabled";
9756f967856SSimon Glass			};
9766f967856SSimon Glass
9776f967856SSimon Glass			macb0: ethernet@fffbc000 {
9786f967856SSimon Glass				compatible = "cdns,at91sam9260-macb", "cdns,macb";
9796f967856SSimon Glass				reg = <0xfffbc000 0x100>;
9806f967856SSimon Glass				interrupts = <25 IRQ_TYPE_LEVEL_HIGH 3>;
9816f967856SSimon Glass				pinctrl-names = "default";
9826f967856SSimon Glass				pinctrl-0 = <&pinctrl_macb_rmii>;
9836f967856SSimon Glass				clocks = <&macb0_clk>, <&macb0_clk>;
9846f967856SSimon Glass				clock-names = "hclk", "pclk";
9856f967856SSimon Glass				status = "disabled";
9866f967856SSimon Glass			};
9876f967856SSimon Glass
9886f967856SSimon Glass			trng@fffcc000 {
9896f967856SSimon Glass				compatible = "atmel,at91sam9g45-trng";
990*eb6f87ccSWenyou Yang				reg = <0xfffcc000 0x100>;
9916f967856SSimon Glass				interrupts = <6 IRQ_TYPE_LEVEL_HIGH 0>;
9926f967856SSimon Glass				clocks = <&trng_clk>;
9936f967856SSimon Glass			};
9946f967856SSimon Glass
9956f967856SSimon Glass			i2c0: i2c@fff84000 {
9966f967856SSimon Glass				compatible = "atmel,at91sam9g10-i2c";
9976f967856SSimon Glass				reg = <0xfff84000 0x100>;
9986f967856SSimon Glass				interrupts = <12 IRQ_TYPE_LEVEL_HIGH 6>;
9996f967856SSimon Glass				pinctrl-names = "default";
10006f967856SSimon Glass				pinctrl-0 = <&pinctrl_i2c0>;
10016f967856SSimon Glass				#address-cells = <1>;
10026f967856SSimon Glass				#size-cells = <0>;
10036f967856SSimon Glass				clocks = <&twi0_clk>;
10046f967856SSimon Glass				status = "disabled";
10056f967856SSimon Glass			};
10066f967856SSimon Glass
10076f967856SSimon Glass			i2c1: i2c@fff88000 {
10086f967856SSimon Glass				compatible = "atmel,at91sam9g10-i2c";
10096f967856SSimon Glass				reg = <0xfff88000 0x100>;
10106f967856SSimon Glass				interrupts = <13 IRQ_TYPE_LEVEL_HIGH 6>;
10116f967856SSimon Glass				pinctrl-names = "default";
10126f967856SSimon Glass				pinctrl-0 = <&pinctrl_i2c1>;
10136f967856SSimon Glass				#address-cells = <1>;
10146f967856SSimon Glass				#size-cells = <0>;
10156f967856SSimon Glass				clocks = <&twi1_clk>;
10166f967856SSimon Glass				status = "disabled";
10176f967856SSimon Glass			};
10186f967856SSimon Glass
10196f967856SSimon Glass			ssc0: ssc@fff9c000 {
10206f967856SSimon Glass				compatible = "atmel,at91sam9g45-ssc";
10216f967856SSimon Glass				reg = <0xfff9c000 0x4000>;
10226f967856SSimon Glass				interrupts = <16 IRQ_TYPE_LEVEL_HIGH 5>;
10236f967856SSimon Glass				pinctrl-names = "default";
10246f967856SSimon Glass				pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>;
10256f967856SSimon Glass				clocks = <&ssc0_clk>;
10266f967856SSimon Glass				clock-names = "pclk";
10276f967856SSimon Glass				status = "disabled";
10286f967856SSimon Glass			};
10296f967856SSimon Glass
10306f967856SSimon Glass			ssc1: ssc@fffa0000 {
10316f967856SSimon Glass				compatible = "atmel,at91sam9g45-ssc";
10326f967856SSimon Glass				reg = <0xfffa0000 0x4000>;
10336f967856SSimon Glass				interrupts = <17 IRQ_TYPE_LEVEL_HIGH 5>;
10346f967856SSimon Glass				pinctrl-names = "default";
10356f967856SSimon Glass				pinctrl-0 = <&pinctrl_ssc1_tx &pinctrl_ssc1_rx>;
10366f967856SSimon Glass				clocks = <&ssc1_clk>;
10376f967856SSimon Glass				clock-names = "pclk";
10386f967856SSimon Glass				status = "disabled";
10396f967856SSimon Glass			};
10406f967856SSimon Glass
10416f967856SSimon Glass			adc0: adc@fffb0000 {
10426f967856SSimon Glass				compatible = "atmel,at91sam9g45-adc";
10436f967856SSimon Glass				reg = <0xfffb0000 0x100>;
10446f967856SSimon Glass				interrupts = <20 IRQ_TYPE_LEVEL_HIGH 0>;
10456f967856SSimon Glass				clocks = <&adc_clk>, <&adc_op_clk>;
10466f967856SSimon Glass				clock-names = "adc_clk", "adc_op_clk";
10476f967856SSimon Glass				atmel,adc-channels-used = <0xff>;
10486f967856SSimon Glass				atmel,adc-vref = <3300>;
10496f967856SSimon Glass				atmel,adc-startup-time = <40>;
10506f967856SSimon Glass				atmel,adc-res = <8 10>;
10516f967856SSimon Glass				atmel,adc-res-names = "lowres", "highres";
10526f967856SSimon Glass				atmel,adc-use-res = "highres";
10536f967856SSimon Glass
1054*eb6f87ccSWenyou Yang				trigger0 {
10556f967856SSimon Glass					trigger-name = "external-rising";
10566f967856SSimon Glass					trigger-value = <0x1>;
10576f967856SSimon Glass					trigger-external;
10586f967856SSimon Glass				};
1059*eb6f87ccSWenyou Yang				trigger1 {
10606f967856SSimon Glass					trigger-name = "external-falling";
10616f967856SSimon Glass					trigger-value = <0x2>;
10626f967856SSimon Glass					trigger-external;
10636f967856SSimon Glass				};
10646f967856SSimon Glass
1065*eb6f87ccSWenyou Yang				trigger2 {
10666f967856SSimon Glass					trigger-name = "external-any";
10676f967856SSimon Glass					trigger-value = <0x3>;
10686f967856SSimon Glass					trigger-external;
10696f967856SSimon Glass				};
10706f967856SSimon Glass
1071*eb6f87ccSWenyou Yang				trigger3 {
10726f967856SSimon Glass					trigger-name = "continuous";
10736f967856SSimon Glass					trigger-value = <0x6>;
10746f967856SSimon Glass				};
10756f967856SSimon Glass			};
10766f967856SSimon Glass
10776f967856SSimon Glass			isi@fffb4000 {
10786f967856SSimon Glass				compatible = "atmel,at91sam9g45-isi";
10796f967856SSimon Glass				reg = <0xfffb4000 0x4000>;
10806f967856SSimon Glass				interrupts = <26 IRQ_TYPE_LEVEL_HIGH 5>;
10816f967856SSimon Glass				clocks = <&isi_clk>;
10826f967856SSimon Glass				clock-names = "isi_clk";
10836f967856SSimon Glass				status = "disabled";
10846f967856SSimon Glass			};
10856f967856SSimon Glass
10866f967856SSimon Glass			pwm0: pwm@fffb8000 {
10876f967856SSimon Glass				compatible = "atmel,at91sam9rl-pwm";
10886f967856SSimon Glass				reg = <0xfffb8000 0x300>;
10896f967856SSimon Glass				interrupts = <19 IRQ_TYPE_LEVEL_HIGH 4>;
10906f967856SSimon Glass				#pwm-cells = <3>;
10916f967856SSimon Glass				clocks = <&pwm_clk>;
10926f967856SSimon Glass				status = "disabled";
10936f967856SSimon Glass			};
10946f967856SSimon Glass
10956f967856SSimon Glass			mmc0: mmc@fff80000 {
10966f967856SSimon Glass				compatible = "atmel,hsmci";
10976f967856SSimon Glass				reg = <0xfff80000 0x600>;
10986f967856SSimon Glass				interrupts = <11 IRQ_TYPE_LEVEL_HIGH 0>;
10996f967856SSimon Glass				pinctrl-names = "default";
11006f967856SSimon Glass				dmas = <&dma 1 AT91_DMA_CFG_PER_ID(0)>;
11016f967856SSimon Glass				dma-names = "rxtx";
11026f967856SSimon Glass				#address-cells = <1>;
11036f967856SSimon Glass				#size-cells = <0>;
11046f967856SSimon Glass				clocks = <&mci0_clk>;
11056f967856SSimon Glass				clock-names = "mci_clk";
11066f967856SSimon Glass				status = "disabled";
11076f967856SSimon Glass			};
11086f967856SSimon Glass
11096f967856SSimon Glass			mmc1: mmc@fffd0000 {
11106f967856SSimon Glass				compatible = "atmel,hsmci";
11116f967856SSimon Glass				reg = <0xfffd0000 0x600>;
11126f967856SSimon Glass				interrupts = <29 IRQ_TYPE_LEVEL_HIGH 0>;
11136f967856SSimon Glass				pinctrl-names = "default";
11146f967856SSimon Glass				dmas = <&dma 1 AT91_DMA_CFG_PER_ID(13)>;
11156f967856SSimon Glass				dma-names = "rxtx";
11166f967856SSimon Glass				#address-cells = <1>;
11176f967856SSimon Glass				#size-cells = <0>;
11186f967856SSimon Glass				clocks = <&mci1_clk>;
11196f967856SSimon Glass				clock-names = "mci_clk";
11206f967856SSimon Glass				status = "disabled";
11216f967856SSimon Glass			};
11226f967856SSimon Glass
11236f967856SSimon Glass			watchdog@fffffd40 {
11246f967856SSimon Glass				compatible = "atmel,at91sam9260-wdt";
11256f967856SSimon Glass				reg = <0xfffffd40 0x10>;
11266f967856SSimon Glass				interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
11276f967856SSimon Glass				clocks = <&clk32k>;
11286f967856SSimon Glass				atmel,watchdog-type = "hardware";
11296f967856SSimon Glass				atmel,reset-type = "all";
11306f967856SSimon Glass				atmel,dbg-halt;
11316f967856SSimon Glass				status = "disabled";
11326f967856SSimon Glass			};
11336f967856SSimon Glass
11346f967856SSimon Glass			spi0: spi@fffa4000 {
11356f967856SSimon Glass				#address-cells = <1>;
11366f967856SSimon Glass				#size-cells = <0>;
11376f967856SSimon Glass				compatible = "atmel,at91rm9200-spi";
11386f967856SSimon Glass				reg = <0xfffa4000 0x200>;
11396f967856SSimon Glass				interrupts = <14 4 3>;
11406f967856SSimon Glass				pinctrl-names = "default";
11416f967856SSimon Glass				pinctrl-0 = <&pinctrl_spi0>;
11426f967856SSimon Glass				clocks = <&spi0_clk>;
11436f967856SSimon Glass				clock-names = "spi_clk";
11446f967856SSimon Glass				status = "disabled";
11456f967856SSimon Glass			};
11466f967856SSimon Glass
11476f967856SSimon Glass			spi1: spi@fffa8000 {
11486f967856SSimon Glass				#address-cells = <1>;
11496f967856SSimon Glass				#size-cells = <0>;
11506f967856SSimon Glass				compatible = "atmel,at91rm9200-spi";
11516f967856SSimon Glass				reg = <0xfffa8000 0x200>;
11526f967856SSimon Glass				interrupts = <15 4 3>;
11536f967856SSimon Glass				pinctrl-names = "default";
11546f967856SSimon Glass				pinctrl-0 = <&pinctrl_spi1>;
11556f967856SSimon Glass				clocks = <&spi1_clk>;
11566f967856SSimon Glass				clock-names = "spi_clk";
11576f967856SSimon Glass				status = "disabled";
11586f967856SSimon Glass			};
11596f967856SSimon Glass
11606f967856SSimon Glass			usb2: gadget@fff78000 {
11616f967856SSimon Glass				#address-cells = <1>;
11626f967856SSimon Glass				#size-cells = <0>;
11636f967856SSimon Glass				compatible = "atmel,at91sam9g45-udc";
11646f967856SSimon Glass				reg = <0x00600000 0x80000
11656f967856SSimon Glass				       0xfff78000 0x400>;
11666f967856SSimon Glass				interrupts = <27 IRQ_TYPE_LEVEL_HIGH 0>;
11676f967856SSimon Glass				clocks = <&udphs_clk>, <&utmi>;
11686f967856SSimon Glass				clock-names = "pclk", "hclk";
11696f967856SSimon Glass				status = "disabled";
11706f967856SSimon Glass
1171*eb6f87ccSWenyou Yang				ep@0 {
11726f967856SSimon Glass					reg = <0>;
11736f967856SSimon Glass					atmel,fifo-size = <64>;
11746f967856SSimon Glass					atmel,nb-banks = <1>;
11756f967856SSimon Glass				};
11766f967856SSimon Glass
1177*eb6f87ccSWenyou Yang				ep@1 {
11786f967856SSimon Glass					reg = <1>;
11796f967856SSimon Glass					atmel,fifo-size = <1024>;
11806f967856SSimon Glass					atmel,nb-banks = <2>;
11816f967856SSimon Glass					atmel,can-dma;
11826f967856SSimon Glass					atmel,can-isoc;
11836f967856SSimon Glass				};
11846f967856SSimon Glass
1185*eb6f87ccSWenyou Yang				ep@2 {
11866f967856SSimon Glass					reg = <2>;
11876f967856SSimon Glass					atmel,fifo-size = <1024>;
11886f967856SSimon Glass					atmel,nb-banks = <2>;
11896f967856SSimon Glass					atmel,can-dma;
11906f967856SSimon Glass					atmel,can-isoc;
11916f967856SSimon Glass				};
11926f967856SSimon Glass
1193*eb6f87ccSWenyou Yang				ep@3 {
11946f967856SSimon Glass					reg = <3>;
11956f967856SSimon Glass					atmel,fifo-size = <1024>;
11966f967856SSimon Glass					atmel,nb-banks = <3>;
11976f967856SSimon Glass					atmel,can-dma;
11986f967856SSimon Glass				};
11996f967856SSimon Glass
1200*eb6f87ccSWenyou Yang				ep@4 {
12016f967856SSimon Glass					reg = <4>;
12026f967856SSimon Glass					atmel,fifo-size = <1024>;
12036f967856SSimon Glass					atmel,nb-banks = <3>;
12046f967856SSimon Glass					atmel,can-dma;
12056f967856SSimon Glass				};
12066f967856SSimon Glass
1207*eb6f87ccSWenyou Yang				ep@5 {
12086f967856SSimon Glass					reg = <5>;
12096f967856SSimon Glass					atmel,fifo-size = <1024>;
12106f967856SSimon Glass					atmel,nb-banks = <3>;
12116f967856SSimon Glass					atmel,can-dma;
12126f967856SSimon Glass					atmel,can-isoc;
12136f967856SSimon Glass				};
12146f967856SSimon Glass
1215*eb6f87ccSWenyou Yang				ep@6 {
12166f967856SSimon Glass					reg = <6>;
12176f967856SSimon Glass					atmel,fifo-size = <1024>;
12186f967856SSimon Glass					atmel,nb-banks = <3>;
12196f967856SSimon Glass					atmel,can-dma;
12206f967856SSimon Glass					atmel,can-isoc;
12216f967856SSimon Glass				};
12226f967856SSimon Glass			};
12236f967856SSimon Glass
12246f967856SSimon Glass			sckc@fffffd50 {
12256f967856SSimon Glass				compatible = "atmel,at91sam9x5-sckc";
12266f967856SSimon Glass				reg = <0xfffffd50 0x4>;
12276f967856SSimon Glass
12286f967856SSimon Glass				slow_osc: slow_osc {
12296f967856SSimon Glass					compatible = "atmel,at91sam9x5-clk-slow-osc";
12306f967856SSimon Glass					#clock-cells = <0>;
12316f967856SSimon Glass					atmel,startup-time-usec = <1200000>;
12326f967856SSimon Glass					clocks = <&slow_xtal>;
12336f967856SSimon Glass				};
12346f967856SSimon Glass
12356f967856SSimon Glass				slow_rc_osc: slow_rc_osc {
12366f967856SSimon Glass					compatible = "atmel,at91sam9x5-clk-slow-rc-osc";
12376f967856SSimon Glass					#clock-cells = <0>;
12386f967856SSimon Glass					atmel,startup-time-usec = <75>;
12396f967856SSimon Glass					clock-frequency = <32768>;
12406f967856SSimon Glass					clock-accuracy = <50000000>;
12416f967856SSimon Glass				};
12426f967856SSimon Glass
12436f967856SSimon Glass				clk32k: slck {
12446f967856SSimon Glass					compatible = "atmel,at91sam9x5-clk-slow";
12456f967856SSimon Glass					#clock-cells = <0>;
12466f967856SSimon Glass					clocks = <&slow_rc_osc &slow_osc>;
12476f967856SSimon Glass				};
12486f967856SSimon Glass			};
12496f967856SSimon Glass
12506f967856SSimon Glass			rtc@fffffd20 {
12516f967856SSimon Glass				compatible = "atmel,at91sam9260-rtt";
12526f967856SSimon Glass				reg = <0xfffffd20 0x10>;
12536f967856SSimon Glass				interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
12546f967856SSimon Glass				clocks = <&clk32k>;
12556f967856SSimon Glass				status = "disabled";
12566f967856SSimon Glass			};
12576f967856SSimon Glass
12586f967856SSimon Glass			rtc@fffffdb0 {
12596f967856SSimon Glass				compatible = "atmel,at91rm9200-rtc";
12606f967856SSimon Glass				reg = <0xfffffdb0 0x30>;
12616f967856SSimon Glass				interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
12626f967856SSimon Glass				clocks = <&clk32k>;
12636f967856SSimon Glass				status = "disabled";
12646f967856SSimon Glass			};
12656f967856SSimon Glass
12666f967856SSimon Glass			gpbr: syscon@fffffd60 {
12676f967856SSimon Glass				compatible = "atmel,at91sam9260-gpbr", "syscon";
12686f967856SSimon Glass				reg = <0xfffffd60 0x10>;
12696f967856SSimon Glass				status = "disabled";
12706f967856SSimon Glass			};
12716f967856SSimon Glass		};
12726f967856SSimon Glass
12736f967856SSimon Glass		fb0: fb@0x00500000 {
12746f967856SSimon Glass			compatible = "atmel,at91sam9g45-lcdc";
12756f967856SSimon Glass			reg = <0x00500000 0x1000>;
12766f967856SSimon Glass			interrupts = <23 IRQ_TYPE_LEVEL_HIGH 3>;
12776f967856SSimon Glass			pinctrl-names = "default";
12786f967856SSimon Glass			pinctrl-0 = <&pinctrl_fb>;
12796f967856SSimon Glass			clocks = <&lcd_clk>, <&lcd_clk>;
12806f967856SSimon Glass			clock-names = "hclk", "lcdc_clk";
12816f967856SSimon Glass			status = "disabled";
12826f967856SSimon Glass		};
12836f967856SSimon Glass
12846f967856SSimon Glass		nand0: nand@40000000 {
12856f967856SSimon Glass			compatible = "atmel,at91rm9200-nand";
12866f967856SSimon Glass			#address-cells = <1>;
12876f967856SSimon Glass			#size-cells = <1>;
12886f967856SSimon Glass			reg = <0x40000000 0x10000000
12896f967856SSimon Glass			       0xffffe200 0x200
12906f967856SSimon Glass			      >;
12916f967856SSimon Glass			atmel,nand-addr-offset = <21>;
12926f967856SSimon Glass			atmel,nand-cmd-offset = <22>;
12936f967856SSimon Glass			atmel,nand-has-dma;
12946f967856SSimon Glass			pinctrl-names = "default";
12956f967856SSimon Glass			pinctrl-0 = <&pinctrl_nand>;
12966f967856SSimon Glass			gpios = <&pioC 8 GPIO_ACTIVE_HIGH
12976f967856SSimon Glass				 &pioC 14 GPIO_ACTIVE_HIGH
12986f967856SSimon Glass				 0
12996f967856SSimon Glass				>;
13006f967856SSimon Glass			status = "disabled";
13016f967856SSimon Glass		};
13026f967856SSimon Glass
13036f967856SSimon Glass		usb0: ohci@00700000 {
13046f967856SSimon Glass			compatible = "atmel,at91rm9200-ohci", "usb-ohci";
13056f967856SSimon Glass			reg = <0x00700000 0x100000>;
13066f967856SSimon Glass			interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>;
13076f967856SSimon Glass			clocks = <&uhphs_clk>, <&uhphs_clk>, <&uhpck>;
13086f967856SSimon Glass			clock-names = "ohci_clk", "hclk", "uhpck";
13096f967856SSimon Glass			status = "disabled";
13106f967856SSimon Glass		};
13116f967856SSimon Glass
13126f967856SSimon Glass		usb1: ehci@00800000 {
13136f967856SSimon Glass			compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
13146f967856SSimon Glass			reg = <0x00800000 0x100000>;
13156f967856SSimon Glass			interrupts = <22 IRQ_TYPE_LEVEL_HIGH 2>;
13166f967856SSimon Glass			clocks = <&utmi>, <&uhphs_clk>;
13176f967856SSimon Glass			clock-names = "usb_clk", "ehci_clk";
13186f967856SSimon Glass			status = "disabled";
13196f967856SSimon Glass		};
13206f967856SSimon Glass	};
13216f967856SSimon Glass
1322*eb6f87ccSWenyou Yang	i2c-gpio-0 {
13236f967856SSimon Glass		compatible = "i2c-gpio";
13246f967856SSimon Glass		gpios = <&pioA 20 GPIO_ACTIVE_HIGH /* sda */
13256f967856SSimon Glass			 &pioA 21 GPIO_ACTIVE_HIGH /* scl */
13266f967856SSimon Glass			>;
13276f967856SSimon Glass		i2c-gpio,sda-open-drain;
13286f967856SSimon Glass		i2c-gpio,scl-open-drain;
13296f967856SSimon Glass		i2c-gpio,delay-us = <5>;	/* ~100 kHz */
13306f967856SSimon Glass		#address-cells = <1>;
13316f967856SSimon Glass		#size-cells = <0>;
13326f967856SSimon Glass		status = "disabled";
13336f967856SSimon Glass	};
13346f967856SSimon Glass};
1335