at91sam9g20.dtsi 4.91 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/*
 * at91sam9g20.dtsi - Device Tree Include file for AT91SAM9G20 family SoC
 *
 *  Copyright (C) 2011 Atmel,
 *                2011 Nicolas Ferre <nicolas.ferre@atmel.com>,
 *                2011 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
 *
 * Licensed under GPLv2 or later.
 */

/include/ "skeleton.dtsi"

/ {
	model = "Atmel AT91SAM9G20 family SoC";
	compatible = "atmel,at91sam9g20";
	interrupt-parent = <&aic>;

	aliases {
		serial0 = &dbgu;
		serial1 = &usart0;
		serial2 = &usart1;
		serial3 = &usart2;
		serial4 = &usart3;
		serial5 = &usart4;
		serial6 = &usart5;
26
27
28
		gpio0 = &pioA;
		gpio1 = &pioB;
		gpio2 = &pioC;
29
30
		tcb0 = &tcb0;
		tcb1 = &tcb1;
31
32
33
34
35
36
37
	};
	cpus {
		cpu@0 {
			compatible = "arm,arm926ejs";
		};
	};

38
	memory {
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
		reg = <0x20000000 0x08000000>;
	};

	ahb {
		compatible = "simple-bus";
		#address-cells = <1>;
		#size-cells = <1>;
		ranges;

		apb {
			compatible = "simple-bus";
			#address-cells = <1>;
			#size-cells = <1>;
			ranges;

			aic: interrupt-controller@fffff000 {
55
				#interrupt-cells = <2>;
56
57
58
59
60
				compatible = "atmel,at91rm9200-aic";
				interrupt-controller;
				reg = <0xfffff000 0x200>;
			};

61
62
63
64
65
			ramc0: ramc@ffffea00 {
				compatible = "atmel,at91sam9260-sdramc";
				reg = <0xffffea00 0x200>;
			};

66
67
68
69
70
			pmc: pmc@fffffc00 {
				compatible = "atmel,at91rm9200-pmc";
				reg = <0xfffffc00 0x100>;
			};

71
72
73
74
75
			rstc@fffffd00 {
				compatible = "atmel,at91sam9260-rstc";
				reg = <0xfffffd00 0x10>;
			};

76
77
78
79
80
			shdwc@fffffd10 {
				compatible = "atmel,at91sam9260-shdwc";
				reg = <0xfffffd10 0x10>;
			};

81
82
83
84
85
86
			pit: timer@fffffd30 {
				compatible = "atmel,at91sam9260-pit";
				reg = <0xfffffd30 0xf>;
				interrupts = <1 4>;
			};

87
88
89
90
91
92
93
94
95
96
97
98
			tcb0: timer@fffa0000 {
				compatible = "atmel,at91rm9200-tcb";
				reg = <0xfffa0000 0x100>;
				interrupts = <17 4 18 4 19 4>;
			};

			tcb1: timer@fffdc000 {
				compatible = "atmel,at91rm9200-tcb";
				reg = <0xfffdc000 0x100>;
				interrupts = <26 4 27 4 28 4>;
			};

99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
			pioA: gpio@fffff400 {
				compatible = "atmel,at91rm9200-gpio";
				reg = <0xfffff400 0x100>;
				interrupts = <2 4>;
				#gpio-cells = <2>;
				gpio-controller;
				interrupt-controller;
			};

			pioB: gpio@fffff600 {
				compatible = "atmel,at91rm9200-gpio";
				reg = <0xfffff600 0x100>;
				interrupts = <3 4>;
				#gpio-cells = <2>;
				gpio-controller;
				interrupt-controller;
			};

			pioC: gpio@fffff800 {
				compatible = "atmel,at91rm9200-gpio";
				reg = <0xfffff800 0x100>;
				interrupts = <4 4>;
				#gpio-cells = <2>;
				gpio-controller;
				interrupt-controller;
			};

126
127
128
			dbgu: serial@fffff200 {
				compatible = "atmel,at91sam9260-usart";
				reg = <0xfffff200 0x200>;
129
				interrupts = <1 4>;
130
131
132
133
134
135
				status = "disabled";
			};

			usart0: serial@fffb0000 {
				compatible = "atmel,at91sam9260-usart";
				reg = <0xfffb0000 0x200>;
136
				interrupts = <6 4>;
137
138
139
140
141
142
143
144
				atmel,use-dma-rx;
				atmel,use-dma-tx;
				status = "disabled";
			};

			usart1: serial@fffb4000 {
				compatible = "atmel,at91sam9260-usart";
				reg = <0xfffb4000 0x200>;
145
				interrupts = <7 4>;
146
147
148
149
150
151
152
153
				atmel,use-dma-rx;
				atmel,use-dma-tx;
				status = "disabled";
			};

			usart2: serial@fffb8000 {
				compatible = "atmel,at91sam9260-usart";
				reg = <0xfffb8000 0x200>;
154
				interrupts = <8 4>;
155
156
157
158
159
160
161
162
				atmel,use-dma-rx;
				atmel,use-dma-tx;
				status = "disabled";
			};

			usart3: serial@fffd0000 {
				compatible = "atmel,at91sam9260-usart";
				reg = <0xfffd0000 0x200>;
163
				interrupts = <23 4>;
164
165
166
167
168
169
170
171
				atmel,use-dma-rx;
				atmel,use-dma-tx;
				status = "disabled";
			};

			usart4: serial@fffd4000 {
				compatible = "atmel,at91sam9260-usart";
				reg = <0xfffd4000 0x200>;
172
				interrupts = <24 4>;
173
174
175
176
177
178
179
180
				atmel,use-dma-rx;
				atmel,use-dma-tx;
				status = "disabled";
			};

			usart5: serial@fffd8000 {
				compatible = "atmel,at91sam9260-usart";
				reg = <0xfffd8000 0x200>;
181
				interrupts = <25 4>;
182
183
184
185
				atmel,use-dma-rx;
				atmel,use-dma-tx;
				status = "disabled";
			};
186
187
188
189

			macb0: ethernet@fffc4000 {
				compatible = "cdns,at32ap7000-macb", "cdns,macb";
				reg = <0xfffc4000 0x100>;
190
				interrupts = <21 4>;
191
192
				status = "disabled";
			};
193
194
195
196
197
198
199

			usb1: gadget@fffa4000 {
				compatible = "atmel,at91rm9200-udc";
				reg = <0xfffa4000 0x4000>;
				interrupts = <10 4>;
				status = "disabled";
			};
200
		};
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216

		nand0: nand@40000000 {
			compatible = "atmel,at91rm9200-nand";
			#address-cells = <1>;
			#size-cells = <1>;
			reg = <0x40000000 0x10000000
			       0xffffe800 0x200
			      >;
			atmel,nand-addr-offset = <21>;
			atmel,nand-cmd-offset = <22>;
			gpios = <&pioC 13 0
				 &pioC 14 0
				 0
				>;
			status = "disabled";
		};
217
218
219
220
221
222
223

		usb0: ohci@00500000 {
			compatible = "atmel,at91rm9200-ohci", "usb-ohci";
			reg = <0x00500000 0x100000>;
			interrupts = <20 4>;
			status = "disabled";
		};
224
	};
225
226
227
228
229
230
231
232
233
234
235
236
237

	i2c@0 {
		compatible = "i2c-gpio";
		gpios = <&pioA 23 0 /* sda */
			 &pioA 24 0 /* scl */
			>;
		i2c-gpio,sda-open-drain;
		i2c-gpio,scl-open-drain;
		i2c-gpio,delay-us = <2>;	/* ~100 kHz */
		#address-cells = <1>;
		#size-cells = <0>;
		status = "disabled";
	};
238
};