bcad6e7dcccedefbe0fabd83a0372c394b2eda7f
[firefly-linux-kernel-4.4.55.git] / arch / arm / boot / dts / at91sam9g20.dtsi
1 /*
2  * at91sam9g20.dtsi - Device Tree Include file for AT91SAM9G20 family SoC
3  *
4  *  Copyright (C) 2011 Atmel,
5  *                2011 Nicolas Ferre <nicolas.ferre@atmel.com>,
6  *                2011 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
7  *
8  * Licensed under GPLv2 or later.
9  */
10
11 /include/ "skeleton.dtsi"
12
13 / {
14         model = "Atmel AT91SAM9G20 family SoC";
15         compatible = "atmel,at91sam9g20";
16         interrupt-parent = <&aic>;
17
18         aliases {
19                 serial0 = &dbgu;
20                 serial1 = &usart0;
21                 serial2 = &usart1;
22                 serial3 = &usart2;
23                 serial4 = &usart3;
24                 serial5 = &usart4;
25                 serial6 = &usart5;
26                 gpio0 = &pioA;
27                 gpio1 = &pioB;
28                 gpio2 = &pioC;
29                 tcb0 = &tcb0;
30                 tcb1 = &tcb1;
31         };
32         cpus {
33                 cpu@0 {
34                         compatible = "arm,arm926ejs";
35                 };
36         };
37
38         memory@20000000 {
39                 reg = <0x20000000 0x08000000>;
40         };
41
42         ahb {
43                 compatible = "simple-bus";
44                 #address-cells = <1>;
45                 #size-cells = <1>;
46                 ranges;
47
48                 apb {
49                         compatible = "simple-bus";
50                         #address-cells = <1>;
51                         #size-cells = <1>;
52                         ranges;
53
54                         aic: interrupt-controller@fffff000 {
55                                 #interrupt-cells = <2>;
56                                 compatible = "atmel,at91rm9200-aic";
57                                 interrupt-controller;
58                                 interrupt-parent;
59                                 reg = <0xfffff000 0x200>;
60                         };
61
62                         pmc: pmc@fffffc00 {
63                                 compatible = "atmel,at91rm9200-pmc";
64                                 reg = <0xfffffc00 0x100>;
65                         };
66
67                         rstc@fffffd00 {
68                                 compatible = "atmel,at91sam9260-rstc";
69                                 reg = <0xfffffd00 0x10>;
70                         };
71
72                         pit: timer@fffffd30 {
73                                 compatible = "atmel,at91sam9260-pit";
74                                 reg = <0xfffffd30 0xf>;
75                                 interrupts = <1 4>;
76                         };
77
78                         tcb0: timer@fffa0000 {
79                                 compatible = "atmel,at91rm9200-tcb";
80                                 reg = <0xfffa0000 0x100>;
81                                 interrupts = <17 4 18 4 19 4>;
82                         };
83
84                         tcb1: timer@fffdc000 {
85                                 compatible = "atmel,at91rm9200-tcb";
86                                 reg = <0xfffdc000 0x100>;
87                                 interrupts = <26 4 27 4 28 4>;
88                         };
89
90                         pioA: gpio@fffff400 {
91                                 compatible = "atmel,at91rm9200-gpio";
92                                 reg = <0xfffff400 0x100>;
93                                 interrupts = <2 4>;
94                                 #gpio-cells = <2>;
95                                 gpio-controller;
96                                 interrupt-controller;
97                         };
98
99                         pioB: gpio@fffff600 {
100                                 compatible = "atmel,at91rm9200-gpio";
101                                 reg = <0xfffff600 0x100>;
102                                 interrupts = <3 4>;
103                                 #gpio-cells = <2>;
104                                 gpio-controller;
105                                 interrupt-controller;
106                         };
107
108                         pioC: gpio@fffff800 {
109                                 compatible = "atmel,at91rm9200-gpio";
110                                 reg = <0xfffff800 0x100>;
111                                 interrupts = <4 4>;
112                                 #gpio-cells = <2>;
113                                 gpio-controller;
114                                 interrupt-controller;
115                         };
116
117                         dbgu: serial@fffff200 {
118                                 compatible = "atmel,at91sam9260-usart";
119                                 reg = <0xfffff200 0x200>;
120                                 interrupts = <1 4>;
121                                 status = "disabled";
122                         };
123
124                         usart0: serial@fffb0000 {
125                                 compatible = "atmel,at91sam9260-usart";
126                                 reg = <0xfffb0000 0x200>;
127                                 interrupts = <6 4>;
128                                 atmel,use-dma-rx;
129                                 atmel,use-dma-tx;
130                                 status = "disabled";
131                         };
132
133                         usart1: serial@fffb4000 {
134                                 compatible = "atmel,at91sam9260-usart";
135                                 reg = <0xfffb4000 0x200>;
136                                 interrupts = <7 4>;
137                                 atmel,use-dma-rx;
138                                 atmel,use-dma-tx;
139                                 status = "disabled";
140                         };
141
142                         usart2: serial@fffb8000 {
143                                 compatible = "atmel,at91sam9260-usart";
144                                 reg = <0xfffb8000 0x200>;
145                                 interrupts = <8 4>;
146                                 atmel,use-dma-rx;
147                                 atmel,use-dma-tx;
148                                 status = "disabled";
149                         };
150
151                         usart3: serial@fffd0000 {
152                                 compatible = "atmel,at91sam9260-usart";
153                                 reg = <0xfffd0000 0x200>;
154                                 interrupts = <23 4>;
155                                 atmel,use-dma-rx;
156                                 atmel,use-dma-tx;
157                                 status = "disabled";
158                         };
159
160                         usart4: serial@fffd4000 {
161                                 compatible = "atmel,at91sam9260-usart";
162                                 reg = <0xfffd4000 0x200>;
163                                 interrupts = <24 4>;
164                                 atmel,use-dma-rx;
165                                 atmel,use-dma-tx;
166                                 status = "disabled";
167                         };
168
169                         usart5: serial@fffd8000 {
170                                 compatible = "atmel,at91sam9260-usart";
171                                 reg = <0xfffd8000 0x200>;
172                                 interrupts = <25 4>;
173                                 atmel,use-dma-rx;
174                                 atmel,use-dma-tx;
175                                 status = "disabled";
176                         };
177
178                         macb0: ethernet@fffc4000 {
179                                 compatible = "cdns,at32ap7000-macb", "cdns,macb";
180                                 reg = <0xfffc4000 0x100>;
181                                 interrupts = <21 4>;
182                                 status = "disabled";
183                         };
184                 };
185
186                 nand0: nand@40000000 {
187                         compatible = "atmel,at91rm9200-nand";
188                         #address-cells = <1>;
189                         #size-cells = <1>;
190                         reg = <0x40000000 0x10000000
191                                0xffffe800 0x200
192                               >;
193                         atmel,nand-addr-offset = <21>;
194                         atmel,nand-cmd-offset = <22>;
195                         gpios = <&pioC 13 0
196                                  &pioC 14 0
197                                  0
198                                 >;
199                         status = "disabled";
200                 };
201         };
202
203         i2c@0 {
204                 compatible = "i2c-gpio";
205                 gpios = <&pioA 23 0 /* sda */
206                          &pioA 24 0 /* scl */
207                         >;
208                 i2c-gpio,sda-open-drain;
209                 i2c-gpio,scl-open-drain;
210                 i2c-gpio,delay-us = <2>;        /* ~100 kHz */
211                 #address-cells = <1>;
212                 #size-cells = <0>;
213                 status = "disabled";
214         };
215 };