xref: /OK3568_Linux_fs/u-boot/arch/arm/dts/sama5d2.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun#include "skeleton.dtsi"
2*4882a593Smuzhiyun
3*4882a593Smuzhiyun/ {
4*4882a593Smuzhiyun	model = "Atmel SAMA5D2 family SoC";
5*4882a593Smuzhiyun	compatible = "atmel,sama5d2";
6*4882a593Smuzhiyun
7*4882a593Smuzhiyun	aliases {
8*4882a593Smuzhiyun		spi0 = &spi0;
9*4882a593Smuzhiyun		spi1 = &qspi0;
10*4882a593Smuzhiyun		i2c0 = &i2c0;
11*4882a593Smuzhiyun		i2c1 = &i2c1;
12*4882a593Smuzhiyun	};
13*4882a593Smuzhiyun
14*4882a593Smuzhiyun	clocks {
15*4882a593Smuzhiyun		slow_xtal: slow_xtal {
16*4882a593Smuzhiyun			compatible = "fixed-clock";
17*4882a593Smuzhiyun			#clock-cells = <0>;
18*4882a593Smuzhiyun			clock-frequency = <0>;
19*4882a593Smuzhiyun		};
20*4882a593Smuzhiyun
21*4882a593Smuzhiyun		main_xtal: main_xtal {
22*4882a593Smuzhiyun			compatible = "fixed-clock";
23*4882a593Smuzhiyun			#clock-cells = <0>;
24*4882a593Smuzhiyun			clock-frequency = <0>;
25*4882a593Smuzhiyun		};
26*4882a593Smuzhiyun	};
27*4882a593Smuzhiyun
28*4882a593Smuzhiyun	ahb {
29*4882a593Smuzhiyun		compatible = "simple-bus";
30*4882a593Smuzhiyun		#address-cells = <1>;
31*4882a593Smuzhiyun		#size-cells = <1>;
32*4882a593Smuzhiyun		u-boot,dm-pre-reloc;
33*4882a593Smuzhiyun
34*4882a593Smuzhiyun		usb1: ohci@00400000 {
35*4882a593Smuzhiyun			compatible = "atmel,at91rm9200-ohci", "usb-ohci";
36*4882a593Smuzhiyun			reg = <0x00400000 0x100000>;
37*4882a593Smuzhiyun			clocks = <&uhphs_clk>, <&uhphs_clk>, <&uhpck>;
38*4882a593Smuzhiyun			clock-names = "ohci_clk", "hclk", "uhpck";
39*4882a593Smuzhiyun			status = "disabled";
40*4882a593Smuzhiyun		};
41*4882a593Smuzhiyun
42*4882a593Smuzhiyun		usb2: ehci@00500000 {
43*4882a593Smuzhiyun			compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
44*4882a593Smuzhiyun			reg = <0x00500000 0x100000>;
45*4882a593Smuzhiyun			clocks = <&utmi>, <&uhphs_clk>;
46*4882a593Smuzhiyun			clock-names = "usb_clk", "ehci_clk";
47*4882a593Smuzhiyun			status = "disabled";
48*4882a593Smuzhiyun		};
49*4882a593Smuzhiyun
50*4882a593Smuzhiyun		sdmmc0: sdio-host@a0000000 {
51*4882a593Smuzhiyun			compatible = "atmel,sama5d2-sdhci";
52*4882a593Smuzhiyun			reg = <0xa0000000 0x300>;
53*4882a593Smuzhiyun			clocks = <&sdmmc0_hclk>, <&sdmmc0_gclk>, <&main>;
54*4882a593Smuzhiyun			clock-names = "hclock", "multclk", "baseclk";
55*4882a593Smuzhiyun			status = "disabled";
56*4882a593Smuzhiyun		};
57*4882a593Smuzhiyun
58*4882a593Smuzhiyun		sdmmc1: sdio-host@b0000000 {
59*4882a593Smuzhiyun			compatible = "atmel,sama5d2-sdhci";
60*4882a593Smuzhiyun			reg = <0xb0000000 0x300>;
61*4882a593Smuzhiyun			clocks = <&sdmmc1_hclk>, <&sdmmc1_gclk>, <&main>;
62*4882a593Smuzhiyun			clock-names = "hclock", "multclk", "baseclk";
63*4882a593Smuzhiyun			status = "disabled";
64*4882a593Smuzhiyun		};
65*4882a593Smuzhiyun
66*4882a593Smuzhiyun		apb {
67*4882a593Smuzhiyun			compatible = "simple-bus";
68*4882a593Smuzhiyun			#address-cells = <1>;
69*4882a593Smuzhiyun			#size-cells = <1>;
70*4882a593Smuzhiyun			u-boot,dm-pre-reloc;
71*4882a593Smuzhiyun
72*4882a593Smuzhiyun			pmc: pmc@f0014000 {
73*4882a593Smuzhiyun				compatible = "atmel,sama5d2-pmc", "syscon";
74*4882a593Smuzhiyun				reg = <0xf0014000 0x160>;
75*4882a593Smuzhiyun				#address-cells = <1>;
76*4882a593Smuzhiyun				#size-cells = <0>;
77*4882a593Smuzhiyun				#interrupt-cells = <1>;
78*4882a593Smuzhiyun				u-boot,dm-pre-reloc;
79*4882a593Smuzhiyun
80*4882a593Smuzhiyun				main: mainck {
81*4882a593Smuzhiyun					compatible = "atmel,at91sam9x5-clk-main";
82*4882a593Smuzhiyun					#clock-cells = <0>;
83*4882a593Smuzhiyun					u-boot,dm-pre-reloc;
84*4882a593Smuzhiyun				};
85*4882a593Smuzhiyun
86*4882a593Smuzhiyun				plla: pllack@0 {
87*4882a593Smuzhiyun					compatible = "atmel,sama5d3-clk-pll";
88*4882a593Smuzhiyun					#clock-cells = <0>;
89*4882a593Smuzhiyun					clocks = <&main>;
90*4882a593Smuzhiyun					reg = <0>;
91*4882a593Smuzhiyun					atmel,clk-input-range = <12000000 12000000>;
92*4882a593Smuzhiyun					#atmel,pll-clk-output-range-cells = <4>;
93*4882a593Smuzhiyun					atmel,pll-clk-output-ranges = <600000000 1200000000 0 0>;
94*4882a593Smuzhiyun					u-boot,dm-pre-reloc;
95*4882a593Smuzhiyun				};
96*4882a593Smuzhiyun
97*4882a593Smuzhiyun				plladiv: plladivck {
98*4882a593Smuzhiyun					compatible = "atmel,at91sam9x5-clk-plldiv";
99*4882a593Smuzhiyun					#clock-cells = <0>;
100*4882a593Smuzhiyun					clocks = <&plla>;
101*4882a593Smuzhiyun				};
102*4882a593Smuzhiyun
103*4882a593Smuzhiyun				audio_pll_frac: audiopll_fracck {
104*4882a593Smuzhiyun					compatible = "atmel,sama5d2-clk-audio-pll-frac";
105*4882a593Smuzhiyun					#clock-cells = <0>;
106*4882a593Smuzhiyun					clocks = <&main>;
107*4882a593Smuzhiyun				};
108*4882a593Smuzhiyun
109*4882a593Smuzhiyun				audio_pll_pad: audiopll_padck {
110*4882a593Smuzhiyun					compatible = "atmel,sama5d2-clk-audio-pll-pad";
111*4882a593Smuzhiyun					#clock-cells = <0>;
112*4882a593Smuzhiyun					clocks = <&audio_pll_frac>;
113*4882a593Smuzhiyun				};
114*4882a593Smuzhiyun
115*4882a593Smuzhiyun				audio_pll_pmc: audiopll_pmcck {
116*4882a593Smuzhiyun					compatible = "atmel,sama5d2-clk-audio-pll-pmc";
117*4882a593Smuzhiyun					#clock-cells = <0>;
118*4882a593Smuzhiyun					clocks = <&audio_pll_frac>;
119*4882a593Smuzhiyun				};
120*4882a593Smuzhiyun
121*4882a593Smuzhiyun				utmi: utmick {
122*4882a593Smuzhiyun					compatible = "atmel,at91sam9x5-clk-utmi";
123*4882a593Smuzhiyun					#clock-cells = <0>;
124*4882a593Smuzhiyun					clocks = <&main>;
125*4882a593Smuzhiyun					u-boot,dm-pre-reloc;
126*4882a593Smuzhiyun				};
127*4882a593Smuzhiyun
128*4882a593Smuzhiyun				mck: masterck {
129*4882a593Smuzhiyun					compatible = "atmel,at91sam9x5-clk-master";
130*4882a593Smuzhiyun					#clock-cells = <0>;
131*4882a593Smuzhiyun					clocks = <&main>, <&plladiv>, <&utmi>;
132*4882a593Smuzhiyun					atmel,clk-output-range = <124000000 166000000>;
133*4882a593Smuzhiyun					atmel,clk-divisors = <1 2 4 3>;
134*4882a593Smuzhiyun					u-boot,dm-pre-reloc;
135*4882a593Smuzhiyun				};
136*4882a593Smuzhiyun
137*4882a593Smuzhiyun				h32ck: h32mxck {
138*4882a593Smuzhiyun					#clock-cells = <0>;
139*4882a593Smuzhiyun					compatible = "atmel,sama5d4-clk-h32mx";
140*4882a593Smuzhiyun					clocks = <&mck>;
141*4882a593Smuzhiyun					u-boot,dm-pre-reloc;
142*4882a593Smuzhiyun				};
143*4882a593Smuzhiyun
144*4882a593Smuzhiyun				usb: usbck {
145*4882a593Smuzhiyun					compatible = "atmel,at91sam9x5-clk-usb";
146*4882a593Smuzhiyun					#clock-cells = <0>;
147*4882a593Smuzhiyun					clocks = <&plladiv>, <&utmi>;
148*4882a593Smuzhiyun				};
149*4882a593Smuzhiyun
150*4882a593Smuzhiyun				prog: progck {
151*4882a593Smuzhiyun					compatible = "atmel,at91sam9x5-clk-programmable";
152*4882a593Smuzhiyun					#address-cells = <1>;
153*4882a593Smuzhiyun					#size-cells = <0>;
154*4882a593Smuzhiyun					interrupt-parent = <&pmc>;
155*4882a593Smuzhiyun					clocks = <&main>, <&plladiv>, <&utmi>, <&mck>;
156*4882a593Smuzhiyun
157*4882a593Smuzhiyun					prog0: prog@0 {
158*4882a593Smuzhiyun						#clock-cells = <0>;
159*4882a593Smuzhiyun						reg = <0>;
160*4882a593Smuzhiyun					};
161*4882a593Smuzhiyun
162*4882a593Smuzhiyun					prog1: prog@1 {
163*4882a593Smuzhiyun						#clock-cells = <0>;
164*4882a593Smuzhiyun						reg = <1>;
165*4882a593Smuzhiyun					};
166*4882a593Smuzhiyun
167*4882a593Smuzhiyun					prog2: prog@2 {
168*4882a593Smuzhiyun						#clock-cells = <0>;
169*4882a593Smuzhiyun						reg = <2>;
170*4882a593Smuzhiyun					};
171*4882a593Smuzhiyun				};
172*4882a593Smuzhiyun
173*4882a593Smuzhiyun				systemck {
174*4882a593Smuzhiyun					compatible = "atmel,at91rm9200-clk-system";
175*4882a593Smuzhiyun					#address-cells = <1>;
176*4882a593Smuzhiyun					#size-cells = <0>;
177*4882a593Smuzhiyun
178*4882a593Smuzhiyun					ddrck: ddrck@2 {
179*4882a593Smuzhiyun						#clock-cells = <0>;
180*4882a593Smuzhiyun						reg = <2>;
181*4882a593Smuzhiyun						clocks = <&mck>;
182*4882a593Smuzhiyun					};
183*4882a593Smuzhiyun
184*4882a593Smuzhiyun					lcdck: lcdck@3 {
185*4882a593Smuzhiyun						#clock-cells = <0>;
186*4882a593Smuzhiyun						reg = <3>;
187*4882a593Smuzhiyun						clocks = <&mck>;
188*4882a593Smuzhiyun					};
189*4882a593Smuzhiyun
190*4882a593Smuzhiyun					uhpck: uhpck@6 {
191*4882a593Smuzhiyun						#clock-cells = <0>;
192*4882a593Smuzhiyun						reg = <6>;
193*4882a593Smuzhiyun						clocks = <&usb>;
194*4882a593Smuzhiyun					};
195*4882a593Smuzhiyun
196*4882a593Smuzhiyun					udpck: udpck@7 {
197*4882a593Smuzhiyun						#clock-cells = <0>;
198*4882a593Smuzhiyun						reg = <7>;
199*4882a593Smuzhiyun						clocks = <&usb>;
200*4882a593Smuzhiyun					};
201*4882a593Smuzhiyun
202*4882a593Smuzhiyun					pck0: pck0@8 {
203*4882a593Smuzhiyun						#clock-cells = <0>;
204*4882a593Smuzhiyun						reg = <8>;
205*4882a593Smuzhiyun						clocks = <&prog0>;
206*4882a593Smuzhiyun					};
207*4882a593Smuzhiyun
208*4882a593Smuzhiyun					pck1: pck1@9 {
209*4882a593Smuzhiyun						#clock-cells = <0>;
210*4882a593Smuzhiyun						reg = <9>;
211*4882a593Smuzhiyun						clocks = <&prog1>;
212*4882a593Smuzhiyun					};
213*4882a593Smuzhiyun
214*4882a593Smuzhiyun					pck2: pck2@10 {
215*4882a593Smuzhiyun						#clock-cells = <0>;
216*4882a593Smuzhiyun						reg = <10>;
217*4882a593Smuzhiyun						clocks = <&prog2>;
218*4882a593Smuzhiyun					};
219*4882a593Smuzhiyun
220*4882a593Smuzhiyun					iscck: iscck@18 {
221*4882a593Smuzhiyun						#clock-cells = <0>;
222*4882a593Smuzhiyun						reg = <18>;
223*4882a593Smuzhiyun						clocks = <&mck>;
224*4882a593Smuzhiyun					};
225*4882a593Smuzhiyun				};
226*4882a593Smuzhiyun
227*4882a593Smuzhiyun				periph32ck {
228*4882a593Smuzhiyun					compatible = "atmel,at91sam9x5-clk-peripheral";
229*4882a593Smuzhiyun					#address-cells = <1>;
230*4882a593Smuzhiyun					#size-cells = <0>;
231*4882a593Smuzhiyun					clocks = <&h32ck>;
232*4882a593Smuzhiyun					u-boot,dm-pre-reloc;
233*4882a593Smuzhiyun
234*4882a593Smuzhiyun					macb0_clk: macb0_clk@5 {
235*4882a593Smuzhiyun						#clock-cells = <0>;
236*4882a593Smuzhiyun						reg = <5>;
237*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
238*4882a593Smuzhiyun					};
239*4882a593Smuzhiyun
240*4882a593Smuzhiyun					tdes_clk: tdes_clk@11 {
241*4882a593Smuzhiyun						#clock-cells = <0>;
242*4882a593Smuzhiyun						reg = <11>;
243*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
244*4882a593Smuzhiyun					};
245*4882a593Smuzhiyun
246*4882a593Smuzhiyun					matrix1_clk: matrix1_clk@14 {
247*4882a593Smuzhiyun						#clock-cells = <0>;
248*4882a593Smuzhiyun						reg = <14>;
249*4882a593Smuzhiyun					};
250*4882a593Smuzhiyun
251*4882a593Smuzhiyun					hsmc_clk: hsmc_clk@17 {
252*4882a593Smuzhiyun						#clock-cells = <0>;
253*4882a593Smuzhiyun						reg = <17>;
254*4882a593Smuzhiyun					};
255*4882a593Smuzhiyun
256*4882a593Smuzhiyun					pioA_clk: pioA_clk@18 {
257*4882a593Smuzhiyun						#clock-cells = <0>;
258*4882a593Smuzhiyun						reg = <18>;
259*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
260*4882a593Smuzhiyun						u-boot,dm-pre-reloc;
261*4882a593Smuzhiyun					};
262*4882a593Smuzhiyun
263*4882a593Smuzhiyun					flx0_clk: flx0_clk@19 {
264*4882a593Smuzhiyun						#clock-cells = <0>;
265*4882a593Smuzhiyun						reg = <19>;
266*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
267*4882a593Smuzhiyun					};
268*4882a593Smuzhiyun
269*4882a593Smuzhiyun					flx1_clk: flx1_clk@20 {
270*4882a593Smuzhiyun						#clock-cells = <0>;
271*4882a593Smuzhiyun						reg = <20>;
272*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
273*4882a593Smuzhiyun					};
274*4882a593Smuzhiyun
275*4882a593Smuzhiyun					flx2_clk: flx2_clk@21 {
276*4882a593Smuzhiyun						#clock-cells = <0>;
277*4882a593Smuzhiyun						reg = <21>;
278*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
279*4882a593Smuzhiyun					};
280*4882a593Smuzhiyun
281*4882a593Smuzhiyun					flx3_clk: flx3_clk@22 {
282*4882a593Smuzhiyun						#clock-cells = <0>;
283*4882a593Smuzhiyun						reg = <22>;
284*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
285*4882a593Smuzhiyun					};
286*4882a593Smuzhiyun
287*4882a593Smuzhiyun					flx4_clk: flx4_clk@23 {
288*4882a593Smuzhiyun						#clock-cells = <0>;
289*4882a593Smuzhiyun						reg = <23>;
290*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
291*4882a593Smuzhiyun					};
292*4882a593Smuzhiyun
293*4882a593Smuzhiyun					uart0_clk: uart0_clk@24 {
294*4882a593Smuzhiyun						#clock-cells = <0>;
295*4882a593Smuzhiyun						reg = <24>;
296*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
297*4882a593Smuzhiyun					};
298*4882a593Smuzhiyun
299*4882a593Smuzhiyun					uart1_clk: uart1_clk@25 {
300*4882a593Smuzhiyun						#clock-cells = <0>;
301*4882a593Smuzhiyun						reg = <25>;
302*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
303*4882a593Smuzhiyun						u-boot,dm-pre-reloc;
304*4882a593Smuzhiyun					};
305*4882a593Smuzhiyun
306*4882a593Smuzhiyun					uart2_clk: uart2_clk@26 {
307*4882a593Smuzhiyun						#clock-cells = <0>;
308*4882a593Smuzhiyun						reg = <26>;
309*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
310*4882a593Smuzhiyun					};
311*4882a593Smuzhiyun
312*4882a593Smuzhiyun					uart3_clk: uart3_clk@27 {
313*4882a593Smuzhiyun						#clock-cells = <0>;
314*4882a593Smuzhiyun						reg = <27>;
315*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
316*4882a593Smuzhiyun					};
317*4882a593Smuzhiyun
318*4882a593Smuzhiyun					uart4_clk: uart4_clk@28 {
319*4882a593Smuzhiyun						#clock-cells = <0>;
320*4882a593Smuzhiyun						reg = <28>;
321*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
322*4882a593Smuzhiyun					};
323*4882a593Smuzhiyun
324*4882a593Smuzhiyun					twi0_clk: twi0_clk@29 {
325*4882a593Smuzhiyun						reg = <29>;
326*4882a593Smuzhiyun						#clock-cells = <0>;
327*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
328*4882a593Smuzhiyun					};
329*4882a593Smuzhiyun
330*4882a593Smuzhiyun					twi1_clk: twi1_clk@30 {
331*4882a593Smuzhiyun						#clock-cells = <0>;
332*4882a593Smuzhiyun						reg = <30>;
333*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
334*4882a593Smuzhiyun					};
335*4882a593Smuzhiyun
336*4882a593Smuzhiyun					spi0_clk: spi0_clk@33 {
337*4882a593Smuzhiyun						#clock-cells = <0>;
338*4882a593Smuzhiyun						reg = <33>;
339*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
340*4882a593Smuzhiyun						u-boot,dm-pre-reloc;
341*4882a593Smuzhiyun					};
342*4882a593Smuzhiyun
343*4882a593Smuzhiyun					spi1_clk: spi1_clk@34 {
344*4882a593Smuzhiyun						#clock-cells = <0>;
345*4882a593Smuzhiyun						reg = <34>;
346*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
347*4882a593Smuzhiyun					};
348*4882a593Smuzhiyun
349*4882a593Smuzhiyun					tcb0_clk: tcb0_clk@35 {
350*4882a593Smuzhiyun						#clock-cells = <0>;
351*4882a593Smuzhiyun						reg = <35>;
352*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
353*4882a593Smuzhiyun					};
354*4882a593Smuzhiyun
355*4882a593Smuzhiyun					tcb1_clk: tcb1_clk@36 {
356*4882a593Smuzhiyun						#clock-cells = <0>;
357*4882a593Smuzhiyun						reg = <36>;
358*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
359*4882a593Smuzhiyun					};
360*4882a593Smuzhiyun
361*4882a593Smuzhiyun					pwm_clk: pwm_clk@38 {
362*4882a593Smuzhiyun						#clock-cells = <0>;
363*4882a593Smuzhiyun						reg = <38>;
364*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
365*4882a593Smuzhiyun					};
366*4882a593Smuzhiyun
367*4882a593Smuzhiyun					adc_clk: adc_clk@40 {
368*4882a593Smuzhiyun						#clock-cells = <0>;
369*4882a593Smuzhiyun						reg = <40>;
370*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
371*4882a593Smuzhiyun					};
372*4882a593Smuzhiyun
373*4882a593Smuzhiyun					uhphs_clk: uhphs_clk@41 {
374*4882a593Smuzhiyun						#clock-cells = <0>;
375*4882a593Smuzhiyun						reg = <41>;
376*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
377*4882a593Smuzhiyun					};
378*4882a593Smuzhiyun
379*4882a593Smuzhiyun					udphs_clk: udphs_clk@42 {
380*4882a593Smuzhiyun						#clock-cells = <0>;
381*4882a593Smuzhiyun						reg = <42>;
382*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
383*4882a593Smuzhiyun					};
384*4882a593Smuzhiyun
385*4882a593Smuzhiyun					ssc0_clk: ssc0_clk@43 {
386*4882a593Smuzhiyun						#clock-cells = <0>;
387*4882a593Smuzhiyun						reg = <43>;
388*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
389*4882a593Smuzhiyun					};
390*4882a593Smuzhiyun
391*4882a593Smuzhiyun					ssc1_clk: ssc1_clk@44 {
392*4882a593Smuzhiyun						#clock-cells = <0>;
393*4882a593Smuzhiyun						reg = <44>;
394*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
395*4882a593Smuzhiyun					};
396*4882a593Smuzhiyun
397*4882a593Smuzhiyun					trng_clk: trng_clk@47 {
398*4882a593Smuzhiyun						#clock-cells = <0>;
399*4882a593Smuzhiyun						reg = <47>;
400*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
401*4882a593Smuzhiyun					};
402*4882a593Smuzhiyun
403*4882a593Smuzhiyun					pdmic_clk: pdmic_clk@48 {
404*4882a593Smuzhiyun						#clock-cells = <0>;
405*4882a593Smuzhiyun						reg = <48>;
406*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
407*4882a593Smuzhiyun					};
408*4882a593Smuzhiyun
409*4882a593Smuzhiyun					i2s0_clk: i2s0_clk@54 {
410*4882a593Smuzhiyun						#clock-cells = <0>;
411*4882a593Smuzhiyun						reg = <54>;
412*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
413*4882a593Smuzhiyun					};
414*4882a593Smuzhiyun
415*4882a593Smuzhiyun					i2s1_clk: i2s1_clk@55 {
416*4882a593Smuzhiyun						#clock-cells = <0>;
417*4882a593Smuzhiyun						reg = <55>;
418*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
419*4882a593Smuzhiyun					};
420*4882a593Smuzhiyun
421*4882a593Smuzhiyun					can0_clk: can0_clk@56 {
422*4882a593Smuzhiyun						#clock-cells = <0>;
423*4882a593Smuzhiyun						reg = <56>;
424*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
425*4882a593Smuzhiyun					};
426*4882a593Smuzhiyun
427*4882a593Smuzhiyun					can1_clk: can1_clk@57 {
428*4882a593Smuzhiyun						#clock-cells = <0>;
429*4882a593Smuzhiyun						reg = <57>;
430*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
431*4882a593Smuzhiyun					};
432*4882a593Smuzhiyun
433*4882a593Smuzhiyun					classd_clk: classd_clk@59 {
434*4882a593Smuzhiyun						#clock-cells = <0>;
435*4882a593Smuzhiyun						reg = <59>;
436*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
437*4882a593Smuzhiyun					};
438*4882a593Smuzhiyun				};
439*4882a593Smuzhiyun
440*4882a593Smuzhiyun				periph64ck {
441*4882a593Smuzhiyun					compatible = "atmel,at91sam9x5-clk-peripheral";
442*4882a593Smuzhiyun					#address-cells = <1>;
443*4882a593Smuzhiyun					#size-cells = <0>;
444*4882a593Smuzhiyun					clocks = <&mck>;
445*4882a593Smuzhiyun					u-boot,dm-pre-reloc;
446*4882a593Smuzhiyun
447*4882a593Smuzhiyun					dma0_clk: dma0_clk@6 {
448*4882a593Smuzhiyun						#clock-cells = <0>;
449*4882a593Smuzhiyun						reg = <6>;
450*4882a593Smuzhiyun					};
451*4882a593Smuzhiyun
452*4882a593Smuzhiyun					dma1_clk: dma1_clk@7 {
453*4882a593Smuzhiyun						#clock-cells = <0>;
454*4882a593Smuzhiyun						reg = <7>;
455*4882a593Smuzhiyun					};
456*4882a593Smuzhiyun
457*4882a593Smuzhiyun					aes_clk: aes_clk@9 {
458*4882a593Smuzhiyun						#clock-cells = <0>;
459*4882a593Smuzhiyun						reg = <9>;
460*4882a593Smuzhiyun					};
461*4882a593Smuzhiyun
462*4882a593Smuzhiyun					aesb_clk: aesb_clk@10 {
463*4882a593Smuzhiyun						#clock-cells = <0>;
464*4882a593Smuzhiyun						reg = <10>;
465*4882a593Smuzhiyun					};
466*4882a593Smuzhiyun
467*4882a593Smuzhiyun					sha_clk: sha_clk@12 {
468*4882a593Smuzhiyun						#clock-cells = <0>;
469*4882a593Smuzhiyun						reg = <12>;
470*4882a593Smuzhiyun					};
471*4882a593Smuzhiyun
472*4882a593Smuzhiyun					mpddr_clk: mpddr_clk@13 {
473*4882a593Smuzhiyun						#clock-cells = <0>;
474*4882a593Smuzhiyun						reg = <13>;
475*4882a593Smuzhiyun					};
476*4882a593Smuzhiyun
477*4882a593Smuzhiyun					matrix0_clk: matrix0_clk@15 {
478*4882a593Smuzhiyun						#clock-cells = <0>;
479*4882a593Smuzhiyun						reg = <15>;
480*4882a593Smuzhiyun					};
481*4882a593Smuzhiyun
482*4882a593Smuzhiyun					sdmmc0_hclk: sdmmc0_hclk@31 {
483*4882a593Smuzhiyun						#clock-cells = <0>;
484*4882a593Smuzhiyun						reg = <31>;
485*4882a593Smuzhiyun						u-boot,dm-pre-reloc;
486*4882a593Smuzhiyun					};
487*4882a593Smuzhiyun
488*4882a593Smuzhiyun					sdmmc1_hclk: sdmmc1_hclk@32 {
489*4882a593Smuzhiyun						#clock-cells = <0>;
490*4882a593Smuzhiyun						reg = <32>;
491*4882a593Smuzhiyun						u-boot,dm-pre-reloc;
492*4882a593Smuzhiyun					};
493*4882a593Smuzhiyun
494*4882a593Smuzhiyun					lcdc_clk: lcdc_clk@45 {
495*4882a593Smuzhiyun						#clock-cells = <0>;
496*4882a593Smuzhiyun						reg = <45>;
497*4882a593Smuzhiyun					};
498*4882a593Smuzhiyun
499*4882a593Smuzhiyun					isc_clk: isc_clk@46 {
500*4882a593Smuzhiyun						#clock-cells = <0>;
501*4882a593Smuzhiyun						reg = <46>;
502*4882a593Smuzhiyun					};
503*4882a593Smuzhiyun
504*4882a593Smuzhiyun					qspi0_clk: qspi0_clk@52 {
505*4882a593Smuzhiyun						#clock-cells = <0>;
506*4882a593Smuzhiyun						reg = <52>;
507*4882a593Smuzhiyun					};
508*4882a593Smuzhiyun
509*4882a593Smuzhiyun					qspi1_clk: qspi1_clk@53 {
510*4882a593Smuzhiyun						#clock-cells = <0>;
511*4882a593Smuzhiyun						reg = <53>;
512*4882a593Smuzhiyun					};
513*4882a593Smuzhiyun				};
514*4882a593Smuzhiyun
515*4882a593Smuzhiyun				gck {
516*4882a593Smuzhiyun					compatible = "atmel,sama5d2-clk-generated";
517*4882a593Smuzhiyun					#address-cells = <1>;
518*4882a593Smuzhiyun					#size-cells = <0>;
519*4882a593Smuzhiyun					interrupt-parent = <&pmc>;
520*4882a593Smuzhiyun					clocks = <&main>, <&plla>, <&utmi>, <&mck>;
521*4882a593Smuzhiyun					u-boot,dm-pre-reloc;
522*4882a593Smuzhiyun
523*4882a593Smuzhiyun					sdmmc0_gclk: sdmmc0_gclk@31 {
524*4882a593Smuzhiyun						#clock-cells = <0>;
525*4882a593Smuzhiyun						reg = <31>;
526*4882a593Smuzhiyun						u-boot,dm-pre-reloc;
527*4882a593Smuzhiyun					};
528*4882a593Smuzhiyun
529*4882a593Smuzhiyun					sdmmc1_gclk: sdmmc1_gclk@32 {
530*4882a593Smuzhiyun						#clock-cells = <0>;
531*4882a593Smuzhiyun						reg = <32>;
532*4882a593Smuzhiyun						u-boot,dm-pre-reloc;
533*4882a593Smuzhiyun					};
534*4882a593Smuzhiyun
535*4882a593Smuzhiyun					tcb0_gclk: tcb0_gclk@35 {
536*4882a593Smuzhiyun						#clock-cells = <0>;
537*4882a593Smuzhiyun						reg = <35>;
538*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
539*4882a593Smuzhiyun					};
540*4882a593Smuzhiyun
541*4882a593Smuzhiyun					tcb1_gclk: tcb1_gclk@36 {
542*4882a593Smuzhiyun						#clock-cells = <0>;
543*4882a593Smuzhiyun						reg = <36>;
544*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
545*4882a593Smuzhiyun					};
546*4882a593Smuzhiyun
547*4882a593Smuzhiyun					pwm_gclk: pwm_gclk@38 {
548*4882a593Smuzhiyun						#clock-cells = <0>;
549*4882a593Smuzhiyun						reg = <38>;
550*4882a593Smuzhiyun						atmel,clk-output-range = <0 83000000>;
551*4882a593Smuzhiyun					};
552*4882a593Smuzhiyun
553*4882a593Smuzhiyun					pdmic_gclk: pdmic_gclk@48 {
554*4882a593Smuzhiyun						#clock-cells = <0>;
555*4882a593Smuzhiyun						reg = <48>;
556*4882a593Smuzhiyun					};
557*4882a593Smuzhiyun
558*4882a593Smuzhiyun					i2s0_gclk: i2s0_gclk@54 {
559*4882a593Smuzhiyun						#clock-cells = <0>;
560*4882a593Smuzhiyun						reg = <54>;
561*4882a593Smuzhiyun					};
562*4882a593Smuzhiyun
563*4882a593Smuzhiyun					i2s1_gclk: i2s1_gclk@55 {
564*4882a593Smuzhiyun						#clock-cells = <0>;
565*4882a593Smuzhiyun						reg = <55>;
566*4882a593Smuzhiyun					};
567*4882a593Smuzhiyun
568*4882a593Smuzhiyun					can0_gclk: can0_gclk@56 {
569*4882a593Smuzhiyun						#clock-cells = <0>;
570*4882a593Smuzhiyun						reg = <56>;
571*4882a593Smuzhiyun						atmel,clk-output-range = <0 80000000>;
572*4882a593Smuzhiyun					};
573*4882a593Smuzhiyun
574*4882a593Smuzhiyun					can1_gclk: can1_gclk@57 {
575*4882a593Smuzhiyun						#clock-cells = <0>;
576*4882a593Smuzhiyun						reg = <57>;
577*4882a593Smuzhiyun						atmel,clk-output-range = <0 80000000>;
578*4882a593Smuzhiyun					};
579*4882a593Smuzhiyun
580*4882a593Smuzhiyun					classd_gclk: classd_gclk@59 {
581*4882a593Smuzhiyun						#clock-cells = <0>;
582*4882a593Smuzhiyun						reg = <59>;
583*4882a593Smuzhiyun						atmel,clk-output-range = <0 100000000>;
584*4882a593Smuzhiyun					};
585*4882a593Smuzhiyun				};
586*4882a593Smuzhiyun			};
587*4882a593Smuzhiyun
588*4882a593Smuzhiyun			qspi0: spi@f0020000 {
589*4882a593Smuzhiyun				compatible = "atmel,sama5d2-qspi";
590*4882a593Smuzhiyun				reg = <0xf0020000 0x100>, <0xd0000000 0x08000000>;
591*4882a593Smuzhiyun				reg-names = "qspi_base", "qspi_mmap";
592*4882a593Smuzhiyun				#address-cells = <1>;
593*4882a593Smuzhiyun				#size-cells = <0>;
594*4882a593Smuzhiyun				clocks = <&qspi0_clk>;
595*4882a593Smuzhiyun				status = "disabled";
596*4882a593Smuzhiyun			};
597*4882a593Smuzhiyun
598*4882a593Smuzhiyun			spi0: spi@f8000000 {
599*4882a593Smuzhiyun				compatible = "atmel,at91rm9200-spi";
600*4882a593Smuzhiyun				reg = <0xf8000000 0x100>;
601*4882a593Smuzhiyun				clocks = <&spi0_clk>;
602*4882a593Smuzhiyun				clock-names = "spi_clk";
603*4882a593Smuzhiyun				#address-cells = <1>;
604*4882a593Smuzhiyun				#size-cells = <0>;
605*4882a593Smuzhiyun				status = "disabled";
606*4882a593Smuzhiyun			};
607*4882a593Smuzhiyun
608*4882a593Smuzhiyun			macb0: ethernet@f8008000 {
609*4882a593Smuzhiyun				compatible = "cdns,macb";
610*4882a593Smuzhiyun				reg = <0xf8008000 0x1000>;
611*4882a593Smuzhiyun				#address-cells = <1>;
612*4882a593Smuzhiyun				#size-cells = <0>;
613*4882a593Smuzhiyun				clocks = <&macb0_clk>, <&macb0_clk>;
614*4882a593Smuzhiyun				clock-names = "hclk", "pclk";
615*4882a593Smuzhiyun				status = "disabled";
616*4882a593Smuzhiyun			};
617*4882a593Smuzhiyun
618*4882a593Smuzhiyun			uart1: serial@f8020000 {
619*4882a593Smuzhiyun				compatible = "atmel,at91sam9260-usart";
620*4882a593Smuzhiyun				reg = <0xf8020000 0x100>;
621*4882a593Smuzhiyun				clocks = <&uart1_clk>;
622*4882a593Smuzhiyun				clock-names = "usart";
623*4882a593Smuzhiyun				status = "disabled";
624*4882a593Smuzhiyun			};
625*4882a593Smuzhiyun
626*4882a593Smuzhiyun			i2c0: i2c@f8028000 {
627*4882a593Smuzhiyun				compatible = "atmel,sama5d2-i2c";
628*4882a593Smuzhiyun				reg = <0xf8028000 0x100>;
629*4882a593Smuzhiyun				#address-cells = <1>;
630*4882a593Smuzhiyun				#size-cells = <0>;
631*4882a593Smuzhiyun				clocks = <&twi0_clk>;
632*4882a593Smuzhiyun				status = "disabled";
633*4882a593Smuzhiyun			};
634*4882a593Smuzhiyun
635*4882a593Smuzhiyun			rstc@f8048000 {
636*4882a593Smuzhiyun				compatible = "atmel,sama5d3-rstc";
637*4882a593Smuzhiyun				reg = <0xf8048000 0x10>;
638*4882a593Smuzhiyun				clocks = <&clk32k>;
639*4882a593Smuzhiyun			};
640*4882a593Smuzhiyun
641*4882a593Smuzhiyun			shdwc@f8048010 {
642*4882a593Smuzhiyun				compatible = "atmel,sama5d2-shdwc";
643*4882a593Smuzhiyun				reg = <0xf8048010 0x10>;
644*4882a593Smuzhiyun				clocks = <&clk32k>;
645*4882a593Smuzhiyun				#address-cells = <1>;
646*4882a593Smuzhiyun				#size-cells = <0>;
647*4882a593Smuzhiyun				atmel,wakeup-rtc-timer;
648*4882a593Smuzhiyun			};
649*4882a593Smuzhiyun
650*4882a593Smuzhiyun			pit: timer@f8048030 {
651*4882a593Smuzhiyun				compatible = "atmel,at91sam9260-pit";
652*4882a593Smuzhiyun				reg = <0xf8048030 0x10>;
653*4882a593Smuzhiyun				clocks = <&h32ck>;
654*4882a593Smuzhiyun			};
655*4882a593Smuzhiyun
656*4882a593Smuzhiyun			watchdog@f8048040 {
657*4882a593Smuzhiyun				compatible = "atmel,sama5d4-wdt";
658*4882a593Smuzhiyun				reg = <0xf8048040 0x10>;
659*4882a593Smuzhiyun				clocks = <&clk32k>;
660*4882a593Smuzhiyun				status = "disabled";
661*4882a593Smuzhiyun			};
662*4882a593Smuzhiyun
663*4882a593Smuzhiyun			sckc@f8048050 {
664*4882a593Smuzhiyun				compatible = "atmel,at91sam9x5-sckc";
665*4882a593Smuzhiyun				reg = <0xf8048050 0x4>;
666*4882a593Smuzhiyun
667*4882a593Smuzhiyun				slow_rc_osc: slow_rc_osc {
668*4882a593Smuzhiyun					compatible = "atmel,at91sam9x5-clk-slow-rc-osc";
669*4882a593Smuzhiyun					#clock-cells = <0>;
670*4882a593Smuzhiyun					clock-frequency = <32768>;
671*4882a593Smuzhiyun					clock-accuracy = <250000000>;
672*4882a593Smuzhiyun					atmel,startup-time-usec = <75>;
673*4882a593Smuzhiyun				};
674*4882a593Smuzhiyun
675*4882a593Smuzhiyun				slow_osc: slow_osc {
676*4882a593Smuzhiyun					compatible = "atmel,at91sam9x5-clk-slow-osc";
677*4882a593Smuzhiyun					#clock-cells = <0>;
678*4882a593Smuzhiyun					clocks = <&slow_xtal>;
679*4882a593Smuzhiyun					atmel,startup-time-usec = <1200000>;
680*4882a593Smuzhiyun				};
681*4882a593Smuzhiyun
682*4882a593Smuzhiyun				clk32k: slowck {
683*4882a593Smuzhiyun					compatible = "atmel,at91sam9x5-clk-slow";
684*4882a593Smuzhiyun					#clock-cells = <0>;
685*4882a593Smuzhiyun					clocks = <&slow_rc_osc &slow_osc>;
686*4882a593Smuzhiyun				};
687*4882a593Smuzhiyun			};
688*4882a593Smuzhiyun
689*4882a593Smuzhiyun			spi1: spi@fc000000 {
690*4882a593Smuzhiyun				compatible = "atmel,at91rm9200-spi";
691*4882a593Smuzhiyun				reg = <0xfc000000 0x100>;
692*4882a593Smuzhiyun				#address-cells = <1>;
693*4882a593Smuzhiyun				#size-cells = <0>;
694*4882a593Smuzhiyun				status = "disabled";
695*4882a593Smuzhiyun			};
696*4882a593Smuzhiyun
697*4882a593Smuzhiyun			i2c1: i2c@fc028000 {
698*4882a593Smuzhiyun				compatible = "atmel,sama5d2-i2c";
699*4882a593Smuzhiyun				reg = <0xfc028000 0x100>;
700*4882a593Smuzhiyun				#address-cells = <1>;
701*4882a593Smuzhiyun				#size-cells = <0>;
702*4882a593Smuzhiyun				clocks = <&twi1_clk>;
703*4882a593Smuzhiyun				status = "disabled";
704*4882a593Smuzhiyun			};
705*4882a593Smuzhiyun
706*4882a593Smuzhiyun			pioA: gpio@fc038000 {
707*4882a593Smuzhiyun				compatible = "atmel,sama5d2-gpio";
708*4882a593Smuzhiyun				reg = <0xfc038000 0x600>;
709*4882a593Smuzhiyun				clocks = <&pioA_clk>;
710*4882a593Smuzhiyun				gpio-controller;
711*4882a593Smuzhiyun				#gpio-cells = <2>;
712*4882a593Smuzhiyun				u-boot,dm-pre-reloc;
713*4882a593Smuzhiyun
714*4882a593Smuzhiyun				pinctrl {
715*4882a593Smuzhiyun					compatible = "atmel,sama5d2-pinctrl";
716*4882a593Smuzhiyun					u-boot,dm-pre-reloc;
717*4882a593Smuzhiyun				};
718*4882a593Smuzhiyun			};
719*4882a593Smuzhiyun		};
720*4882a593Smuzhiyun	};
721*4882a593Smuzhiyun};
722