blob: e8ecb03772cef6883a960682516e93b15a2c1040 [file] [log] [blame]
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +08001/*
2 * at91sam9263.dtsi - Device Tree Include file for AT91SAM9263 family SoC
3 *
4 * Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
5 *
6 * Licensed under GPLv2 only.
7 */
8
Jean-Christophe PLAGNIOL-VILLARD6db64d22013-05-15 01:21:50 +08009#include "skeleton.dtsi"
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +080010#include <dt-bindings/pinctrl/at91.h>
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +080011#include <dt-bindings/interrupt-controller/irq.h>
Jean-Christophe PLAGNIOL-VILLARD92f86292013-04-24 08:34:25 +080012#include <dt-bindings/gpio/gpio.h>
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +080013
14/ {
15 model = "Atmel AT91SAM9263 family SoC";
16 compatible = "atmel,at91sam9263";
17 interrupt-parent = <&aic>;
18
19 aliases {
20 serial0 = &dbgu;
21 serial1 = &usart0;
22 serial2 = &usart1;
23 serial3 = &usart2;
24 gpio0 = &pioA;
25 gpio1 = &pioB;
26 gpio2 = &pioC;
27 gpio3 = &pioD;
28 gpio4 = &pioE;
29 tcb0 = &tcb0;
Ludovic Desroches05dcd362012-09-12 08:42:16 +020030 i2c0 = &i2c0;
Bo Shen099343c2012-11-07 11:41:41 +080031 ssc0 = &ssc0;
32 ssc1 = &ssc1;
Bo Shenf3ab0522013-12-19 11:59:17 +080033 pwm0 = &pwm0;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +080034 };
35 cpus {
Lorenzo Pieralisie757a6e2013-04-18 18:31:35 +010036 #address-cells = <0>;
37 #size-cells = <0>;
38
39 cpu {
40 compatible = "arm,arm926ej-s";
41 device_type = "cpu";
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +080042 };
43 };
44
45 memory {
46 reg = <0x20000000 0x08000000>;
47 };
48
49 ahb {
50 compatible = "simple-bus";
51 #address-cells = <1>;
52 #size-cells = <1>;
53 ranges;
54
55 apb {
56 compatible = "simple-bus";
57 #address-cells = <1>;
58 #size-cells = <1>;
59 ranges;
60
61 aic: interrupt-controller@fffff000 {
Ludovic Desrochesf8a073e2012-06-20 16:13:30 +020062 #interrupt-cells = <3>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +080063 compatible = "atmel,at91rm9200-aic";
64 interrupt-controller;
65 reg = <0xfffff000 0x200>;
Jean-Christophe PLAGNIOL-VILLARDc6573942012-04-09 19:36:36 +080066 atmel,external-irqs = <30 31>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +080067 };
68
69 pmc: pmc@fffffc00 {
70 compatible = "atmel,at91rm9200-pmc";
71 reg = <0xfffffc00 0x100>;
72 };
73
Maxime Ripard1e165a72014-07-03 12:01:29 +020074 ramc0: ramc@ffffe200 {
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +080075 compatible = "atmel,at91sam9260-sdramc";
Maxime Ripard1e165a72014-07-03 12:01:29 +020076 reg = <0xffffe200 0x200>;
77 };
78
79 ramc1: ramc@ffffe800 {
80 compatible = "atmel,at91sam9260-sdramc";
81 reg = <0xffffe800 0x200>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +080082 };
83
84 pit: timer@fffffd30 {
85 compatible = "atmel,at91sam9260-pit";
86 reg = <0xfffffd30 0xf>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +080087 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +080088 };
89
90 tcb0: timer@fff7c000 {
91 compatible = "atmel,at91rm9200-tcb";
92 reg = <0xfff7c000 0x100>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +080093 interrupts = <19 IRQ_TYPE_LEVEL_HIGH 0>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +080094 };
95
96 rstc@fffffd00 {
97 compatible = "atmel,at91sam9260-rstc";
98 reg = <0xfffffd00 0x10>;
99 };
100
101 shdwc@fffffd10 {
102 compatible = "atmel,at91sam9260-shdwc";
103 reg = <0xfffffd10 0x10>;
104 };
105
Jean-Christophe PLAGNIOL-VILLARDe4541ff2012-07-04 17:20:46 +0800106 pinctrl@fffff200 {
107 #address-cells = <1>;
108 #size-cells = <1>;
109 compatible = "atmel,at91rm9200-pinctrl", "simple-bus";
110 ranges = <0xfffff200 0xfffff200 0xa00>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800111
Jean-Christophe PLAGNIOL-VILLARD5314ec82012-07-05 16:56:09 +0800112 atmel,mux-mask = <
113 /* A B */
114 0xfffffffb 0xffffe07f /* pioA */
115 0x0007ffff 0x39072fff /* pioB */
116 0xffffffff 0x3ffffff8 /* pioC */
117 0xfffffbff 0xffffffff /* pioD */
118 0xffe00fff 0xfbfcff00 /* pioE */
119 >;
120
121 /* shared pinctrl settings */
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800122 dbgu {
123 pinctrl_dbgu: dbgu-0 {
124 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800125 <AT91_PIOC 30 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC30 periph A */
126 AT91_PIOC 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PC31 periph with pullup */
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800127 };
128 };
129
Jean-Christophe PLAGNIOL-VILLARD9e3129e2012-11-19 06:40:01 +0800130 usart0 {
131 pinctrl_usart0: usart0-0 {
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800132 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800133 <AT91_PIOA 26 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA26 periph A with pullup */
134 AT91_PIOA 27 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA27 periph A */
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800135 };
136
Jean-Christophe PLAGNIOL-VILLARDc58c0c52012-11-19 07:30:01 +0800137 pinctrl_usart0_rts: usart0_rts-0 {
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800138 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800139 <AT91_PIOA 28 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA28 periph A */
Jean-Christophe PLAGNIOL-VILLARDc58c0c52012-11-19 07:30:01 +0800140 };
141
142 pinctrl_usart0_cts: usart0_cts-0 {
143 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800144 <AT91_PIOA 29 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA29 periph A */
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800145 };
146 };
147
Jean-Christophe PLAGNIOL-VILLARD9e3129e2012-11-19 06:40:01 +0800148 usart1 {
149 pinctrl_usart1: usart1-0 {
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800150 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800151 <AT91_PIOD 0 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD0 periph A with pullup */
152 AT91_PIOD 1 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD1 periph A */
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800153 };
154
Jean-Christophe PLAGNIOL-VILLARDc58c0c52012-11-19 07:30:01 +0800155 pinctrl_usart1_rts: usart1_rts-0 {
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800156 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800157 <AT91_PIOD 7 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PD7 periph B */
Jean-Christophe PLAGNIOL-VILLARDc58c0c52012-11-19 07:30:01 +0800158 };
159
160 pinctrl_usart1_cts: usart1_cts-0 {
161 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800162 <AT91_PIOD 8 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PD8 periph B */
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800163 };
164 };
165
Jean-Christophe PLAGNIOL-VILLARD9e3129e2012-11-19 06:40:01 +0800166 usart2 {
167 pinctrl_usart2: usart2-0 {
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800168 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800169 <AT91_PIOD 2 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PD2 periph A with pullup */
170 AT91_PIOD 3 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PD3 periph A */
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800171 };
172
Jean-Christophe PLAGNIOL-VILLARDc58c0c52012-11-19 07:30:01 +0800173 pinctrl_usart2_rts: usart2_rts-0 {
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800174 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800175 <AT91_PIOD 5 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PD5 periph B */
Jean-Christophe PLAGNIOL-VILLARDc58c0c52012-11-19 07:30:01 +0800176 };
177
178 pinctrl_usart2_cts: usart2_cts-0 {
179 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800180 <AT91_PIOD 6 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PD6 periph B */
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800181 };
182 };
Jean-Christophe PLAGNIOL-VILLARD5314ec82012-07-05 16:56:09 +0800183
Jean-Christophe PLAGNIOL-VILLARD7a38d452012-07-12 23:36:52 +0800184 nand {
185 pinctrl_nand: nand-0 {
186 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800187 <AT91_PIOA 22 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP /* PA22 gpio RDY pin pull_up*/
188 AT91_PIOD 15 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; /* PD15 gpio enable pin pull_up */
Jean-Christophe PLAGNIOL-VILLARD7a38d452012-07-12 23:36:52 +0800189 };
190 };
191
Jean-Christophe PLAGNIOL-VILLARDd9b4fe82012-10-23 10:19:11 +0800192 macb {
193 pinctrl_macb_rmii: macb_rmii-0 {
194 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800195 <AT91_PIOC 25 AT91_PERIPH_B AT91_PINCTRL_NONE /* PC25 periph B */
196 AT91_PIOE 21 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE21 periph A */
197 AT91_PIOE 23 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE23 periph A */
198 AT91_PIOE 24 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE24 periph A */
199 AT91_PIOE 25 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE25 periph A */
200 AT91_PIOE 26 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE26 periph A */
201 AT91_PIOE 27 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE27 periph A */
202 AT91_PIOE 28 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE28 periph A */
203 AT91_PIOE 29 AT91_PERIPH_A AT91_PINCTRL_NONE /* PE29 periph A */
204 AT91_PIOE 30 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PE30 periph A */
Jean-Christophe PLAGNIOL-VILLARDd9b4fe82012-10-23 10:19:11 +0800205 };
206
207 pinctrl_macb_rmii_mii: macb_rmii_mii-0 {
208 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800209 <AT91_PIOC 20 AT91_PERIPH_B AT91_PINCTRL_NONE /* PC20 periph B */
210 AT91_PIOC 21 AT91_PERIPH_B AT91_PINCTRL_NONE /* PC21 periph B */
211 AT91_PIOC 22 AT91_PERIPH_B AT91_PINCTRL_NONE /* PC22 periph B */
212 AT91_PIOC 23 AT91_PERIPH_B AT91_PINCTRL_NONE /* PC23 periph B */
213 AT91_PIOC 24 AT91_PERIPH_B AT91_PINCTRL_NONE /* PC24 periph B */
214 AT91_PIOC 25 AT91_PERIPH_B AT91_PINCTRL_NONE /* PC25 periph B */
215 AT91_PIOC 27 AT91_PERIPH_B AT91_PINCTRL_NONE /* PC27 periph B */
216 AT91_PIOE 22 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PE22 periph B */
Jean-Christophe PLAGNIOL-VILLARDd9b4fe82012-10-23 10:19:11 +0800217 };
218 };
219
Jean-Christophe PLAGNIOL-VILLARDd4fe9ac2012-11-16 08:24:17 +0800220 mmc0 {
221 pinctrl_mmc0_clk: mmc0_clk-0 {
222 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800223 <AT91_PIOA 12 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA12 periph A */
Jean-Christophe PLAGNIOL-VILLARDd4fe9ac2012-11-16 08:24:17 +0800224 };
225
226 pinctrl_mmc0_slot0_cmd_dat0: mmc0_slot0_cmd_dat0-0 {
227 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800228 <AT91_PIOA 1 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA1 periph A with pullup */
229 AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA0 periph A with pullup */
Jean-Christophe PLAGNIOL-VILLARDd4fe9ac2012-11-16 08:24:17 +0800230 };
231
232 pinctrl_mmc0_slot0_dat1_3: mmc0_slot0_dat1_3-0 {
233 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800234 <AT91_PIOA 3 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA3 periph A with pullup */
235 AT91_PIOA 4 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA4 periph A with pullup */
236 AT91_PIOA 5 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA5 periph A with pullup */
Jean-Christophe PLAGNIOL-VILLARDd4fe9ac2012-11-16 08:24:17 +0800237 };
238
239 pinctrl_mmc0_slot1_cmd_dat0: mmc0_slot1_cmd_dat0-0 {
240 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800241 <AT91_PIOA 16 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA16 periph A with pullup */
242 AT91_PIOA 17 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA17 periph A with pullup */
Jean-Christophe PLAGNIOL-VILLARDd4fe9ac2012-11-16 08:24:17 +0800243 };
244
245 pinctrl_mmc0_slot1_dat1_3: mmc0_slot1_dat1_3-0 {
246 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800247 <AT91_PIOA 18 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA18 periph A with pullup */
248 AT91_PIOA 19 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA19 periph A with pullup */
249 AT91_PIOA 20 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA20 periph A with pullup */
Jean-Christophe PLAGNIOL-VILLARDd4fe9ac2012-11-16 08:24:17 +0800250 };
251 };
252
253 mmc1 {
254 pinctrl_mmc1_clk: mmc1_clk-0 {
255 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800256 <AT91_PIOA 6 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PA6 periph A */
Jean-Christophe PLAGNIOL-VILLARDd4fe9ac2012-11-16 08:24:17 +0800257 };
258
259 pinctrl_mmc1_slot0_cmd_dat0: mmc1_slot0_cmd_dat0-0 {
260 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800261 <AT91_PIOA 7 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA7 periph A with pullup */
262 AT91_PIOA 8 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA8 periph A with pullup */
Jean-Christophe PLAGNIOL-VILLARDd4fe9ac2012-11-16 08:24:17 +0800263 };
264
265 pinctrl_mmc1_slot0_dat1_3: mmc1_slot0_dat1_3-0 {
266 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800267 <AT91_PIOA 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA9 periph A with pullup */
268 AT91_PIOA 10 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA10 periph A with pullup */
269 AT91_PIOA 11 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA11 periph A with pullup */
Jean-Christophe PLAGNIOL-VILLARDd4fe9ac2012-11-16 08:24:17 +0800270 };
271
272 pinctrl_mmc1_slot1_cmd_dat0: mmc1_slot1_cmd_dat0-0 {
273 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800274 <AT91_PIOA 21 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA21 periph A with pullup */
275 AT91_PIOA 22 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA22 periph A with pullup */
Jean-Christophe PLAGNIOL-VILLARDd4fe9ac2012-11-16 08:24:17 +0800276 };
277
278 pinctrl_mmc1_slot1_dat1_3: mmc1_slot1_dat1_3-0 {
279 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800280 <AT91_PIOA 23 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA23 periph A with pullup */
281 AT91_PIOA 24 AT91_PERIPH_A AT91_PINCTRL_PULL_UP /* PA24 periph A with pullup */
282 AT91_PIOA 25 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; /* PA25 periph A with pullup */
Jean-Christophe PLAGNIOL-VILLARDd4fe9ac2012-11-16 08:24:17 +0800283 };
284 };
285
Bo Shen544ae6b2013-01-11 15:08:30 +0100286 ssc0 {
287 pinctrl_ssc0_tx: ssc0_tx-0 {
288 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800289 <AT91_PIOB 0 AT91_PERIPH_B AT91_PINCTRL_NONE /* PB0 periph B */
290 AT91_PIOB 1 AT91_PERIPH_B AT91_PINCTRL_NONE /* PB1 periph B */
291 AT91_PIOB 2 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PB2 periph B */
Bo Shen544ae6b2013-01-11 15:08:30 +0100292 };
293
294 pinctrl_ssc0_rx: ssc0_rx-0 {
295 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800296 <AT91_PIOB 3 AT91_PERIPH_B AT91_PINCTRL_NONE /* PB3 periph B */
297 AT91_PIOB 4 AT91_PERIPH_B AT91_PINCTRL_NONE /* PB4 periph B */
298 AT91_PIOB 5 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PB5 periph B */
Bo Shen544ae6b2013-01-11 15:08:30 +0100299 };
300 };
301
302 ssc1 {
303 pinctrl_ssc1_tx: ssc1_tx-0 {
304 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800305 <AT91_PIOB 6 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB6 periph A */
306 AT91_PIOB 7 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB7 periph A */
307 AT91_PIOB 8 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB8 periph A */
Bo Shen544ae6b2013-01-11 15:08:30 +0100308 };
309
310 pinctrl_ssc1_rx: ssc1_rx-0 {
311 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800312 <AT91_PIOB 9 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB9 periph A */
313 AT91_PIOB 10 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB10 periph A */
314 AT91_PIOB 11 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB11 periph A */
Bo Shen544ae6b2013-01-11 15:08:30 +0100315 };
316 };
317
Wenyou Yanga68b7282013-04-03 14:03:52 +0800318 spi0 {
319 pinctrl_spi0: spi0-0 {
320 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800321 <AT91_PIOA 0 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA0 periph B SPI0_MISO pin */
322 AT91_PIOA 1 AT91_PERIPH_B AT91_PINCTRL_NONE /* PA1 periph B SPI0_MOSI pin */
323 AT91_PIOA 2 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PA2 periph B SPI0_SPCK pin */
Wenyou Yanga68b7282013-04-03 14:03:52 +0800324 };
325 };
326
327 spi1 {
328 pinctrl_spi1: spi1-0 {
329 atmel,pins =
Jean-Christophe PLAGNIOL-VILLARDc9d0f312013-04-24 08:34:25 +0800330 <AT91_PIOB 12 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB12 periph A SPI1_MISO pin */
331 AT91_PIOB 13 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB13 periph A SPI1_MOSI pin */
332 AT91_PIOB 14 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB14 periph A SPI1_SPCK pin */
Wenyou Yanga68b7282013-04-03 14:03:52 +0800333 };
334 };
335
Boris BREZILLON028633c2013-05-24 10:05:56 +0000336 tcb0 {
337 pinctrl_tcb0_tclk0: tcb0_tclk0-0 {
338 atmel,pins = <AT91_PIOB 28 AT91_PERIPH_B AT91_PINCTRL_NONE>;
339 };
340
341 pinctrl_tcb0_tclk1: tcb0_tclk1-0 {
342 atmel,pins = <AT91_PIOC 28 AT91_PERIPH_B AT91_PINCTRL_NONE>;
343 };
344
345 pinctrl_tcb0_tclk2: tcb0_tclk2-0 {
346 atmel,pins = <AT91_PIOA 15 AT91_PERIPH_A AT91_PINCTRL_NONE>;
347 };
348
349 pinctrl_tcb0_tioa0: tcb0_tioa0-0 {
350 atmel,pins = <AT91_PIOE 18 AT91_PERIPH_B AT91_PINCTRL_NONE>;
351 };
352
353 pinctrl_tcb0_tioa1: tcb0_tioa1-0 {
354 atmel,pins = <AT91_PIOE 8 AT91_PERIPH_B AT91_PINCTRL_NONE>;
355 };
356
357 pinctrl_tcb0_tioa2: tcb0_tioa2-0 {
358 atmel,pins = <AT91_PIOB 17 AT91_PERIPH_B AT91_PINCTRL_NONE>;
359 };
360
361 pinctrl_tcb0_tiob0: tcb0_tiob0-0 {
362 atmel,pins = <AT91_PIOE 19 AT91_PERIPH_B AT91_PINCTRL_NONE>;
363 };
364
365 pinctrl_tcb0_tiob1: tcb0_tiob1-0 {
366 atmel,pins = <AT91_PIOE 9 AT91_PERIPH_B AT91_PINCTRL_NONE>;
367 };
368
369 pinctrl_tcb0_tiob2: tcb0_tiob2-0 {
370 atmel,pins = <AT91_PIOB 18 AT91_PERIPH_B AT91_PINCTRL_NONE>;
371 };
372 };
373
Jean-Christophe PLAGNIOL-VILLARDf8a0d792013-03-29 04:50:46 +0800374 fb {
375 pinctrl_fb: fb-0 {
376 atmel,pins =
377 <AT91_PIOC 1 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC1 periph A */
378 AT91_PIOC 2 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC2 periph A */
379 AT91_PIOC 3 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC3 periph A */
380 AT91_PIOB 9 AT91_PERIPH_B AT91_PINCTRL_NONE /* PB9 periph B */
381 AT91_PIOC 6 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC6 periph A */
382 AT91_PIOC 7 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC7 periph A */
383 AT91_PIOC 8 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC8 periph A */
384 AT91_PIOC 9 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC9 periph A */
385 AT91_PIOC 10 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC10 periph A */
386 AT91_PIOC 11 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC11 periph A */
387 AT91_PIOC 14 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC14 periph A */
388 AT91_PIOC 15 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC15 periph A */
389 AT91_PIOC 16 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC16 periph A */
390 AT91_PIOC 12 AT91_PERIPH_B AT91_PINCTRL_NONE /* PC12 periph B */
391 AT91_PIOC 18 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC18 periph A */
392 AT91_PIOC 19 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC19 periph A */
393 AT91_PIOC 22 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC22 periph A */
394 AT91_PIOC 23 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC23 periph A */
395 AT91_PIOC 24 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC24 periph A */
396 AT91_PIOC 17 AT91_PERIPH_B AT91_PINCTRL_NONE /* PC17 periph B */
397 AT91_PIOC 26 AT91_PERIPH_A AT91_PINCTRL_NONE /* PC26 periph A */
398 AT91_PIOC 27 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PC27 periph A */
399 };
400 };
401
Jean-Christophe PLAGNIOL-VILLARDe4541ff2012-07-04 17:20:46 +0800402 pioA: gpio@fffff200 {
403 compatible = "atmel,at91rm9200-gpio";
404 reg = <0xfffff200 0x200>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800405 interrupts = <2 IRQ_TYPE_LEVEL_HIGH 1>;
Jean-Christophe PLAGNIOL-VILLARDe4541ff2012-07-04 17:20:46 +0800406 #gpio-cells = <2>;
407 gpio-controller;
408 interrupt-controller;
409 #interrupt-cells = <2>;
410 };
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800411
Jean-Christophe PLAGNIOL-VILLARDe4541ff2012-07-04 17:20:46 +0800412 pioB: gpio@fffff400 {
413 compatible = "atmel,at91rm9200-gpio";
414 reg = <0xfffff400 0x200>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800415 interrupts = <3 IRQ_TYPE_LEVEL_HIGH 1>;
Jean-Christophe PLAGNIOL-VILLARDe4541ff2012-07-04 17:20:46 +0800416 #gpio-cells = <2>;
417 gpio-controller;
418 interrupt-controller;
419 #interrupt-cells = <2>;
420 };
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800421
Jean-Christophe PLAGNIOL-VILLARDe4541ff2012-07-04 17:20:46 +0800422 pioC: gpio@fffff600 {
423 compatible = "atmel,at91rm9200-gpio";
424 reg = <0xfffff600 0x200>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800425 interrupts = <4 IRQ_TYPE_LEVEL_HIGH 1>;
Jean-Christophe PLAGNIOL-VILLARDe4541ff2012-07-04 17:20:46 +0800426 #gpio-cells = <2>;
427 gpio-controller;
428 interrupt-controller;
429 #interrupt-cells = <2>;
430 };
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800431
Jean-Christophe PLAGNIOL-VILLARDe4541ff2012-07-04 17:20:46 +0800432 pioD: gpio@fffff800 {
433 compatible = "atmel,at91rm9200-gpio";
434 reg = <0xfffff800 0x200>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800435 interrupts = <4 IRQ_TYPE_LEVEL_HIGH 1>;
Jean-Christophe PLAGNIOL-VILLARDe4541ff2012-07-04 17:20:46 +0800436 #gpio-cells = <2>;
437 gpio-controller;
438 interrupt-controller;
439 #interrupt-cells = <2>;
440 };
441
442 pioE: gpio@fffffa00 {
443 compatible = "atmel,at91rm9200-gpio";
444 reg = <0xfffffa00 0x200>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800445 interrupts = <4 IRQ_TYPE_LEVEL_HIGH 1>;
Jean-Christophe PLAGNIOL-VILLARDe4541ff2012-07-04 17:20:46 +0800446 #gpio-cells = <2>;
447 gpio-controller;
448 interrupt-controller;
449 #interrupt-cells = <2>;
Jean-Christophe PLAGNIOL-VILLARD5314ec82012-07-05 16:56:09 +0800450 };
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800451 };
452
453 dbgu: serial@ffffee00 {
454 compatible = "atmel,at91sam9260-usart";
455 reg = <0xffffee00 0x200>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800456 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800457 pinctrl-names = "default";
458 pinctrl-0 = <&pinctrl_dbgu>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800459 status = "disabled";
460 };
461
462 usart0: serial@fff8c000 {
463 compatible = "atmel,at91sam9260-usart";
464 reg = <0xfff8c000 0x200>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800465 interrupts = <7 IRQ_TYPE_LEVEL_HIGH 5>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800466 atmel,use-dma-rx;
467 atmel,use-dma-tx;
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800468 pinctrl-names = "default";
Jean-Christophe PLAGNIOL-VILLARD9e3129e2012-11-19 06:40:01 +0800469 pinctrl-0 = <&pinctrl_usart0>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800470 status = "disabled";
471 };
472
473 usart1: serial@fff90000 {
474 compatible = "atmel,at91sam9260-usart";
475 reg = <0xfff90000 0x200>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800476 interrupts = <8 IRQ_TYPE_LEVEL_HIGH 5>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800477 atmel,use-dma-rx;
478 atmel,use-dma-tx;
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800479 pinctrl-names = "default";
Jean-Christophe PLAGNIOL-VILLARD9e3129e2012-11-19 06:40:01 +0800480 pinctrl-0 = <&pinctrl_usart1>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800481 status = "disabled";
482 };
483
484 usart2: serial@fff94000 {
485 compatible = "atmel,at91sam9260-usart";
486 reg = <0xfff94000 0x200>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800487 interrupts = <9 IRQ_TYPE_LEVEL_HIGH 5>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800488 atmel,use-dma-rx;
489 atmel,use-dma-tx;
Jean-Christophe PLAGNIOL-VILLARDec6754a2012-07-05 16:56:09 +0800490 pinctrl-names = "default";
Jean-Christophe PLAGNIOL-VILLARD9e3129e2012-11-19 06:40:01 +0800491 pinctrl-0 = <&pinctrl_usart2>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800492 status = "disabled";
493 };
494
Bo Shen099343c2012-11-07 11:41:41 +0800495 ssc0: ssc@fff98000 {
496 compatible = "atmel,at91rm9200-ssc";
497 reg = <0xfff98000 0x4000>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800498 interrupts = <16 IRQ_TYPE_LEVEL_HIGH 5>;
Bo Shen544ae6b2013-01-11 15:08:30 +0100499 pinctrl-names = "default";
500 pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>;
Bo Shen315656b2012-12-13 10:05:07 +0800501 status = "disabled";
Bo Shen099343c2012-11-07 11:41:41 +0800502 };
503
504 ssc1: ssc@fff9c000 {
505 compatible = "atmel,at91rm9200-ssc";
506 reg = <0xfff9c000 0x4000>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800507 interrupts = <17 IRQ_TYPE_LEVEL_HIGH 5>;
Bo Shen544ae6b2013-01-11 15:08:30 +0100508 pinctrl-names = "default";
509 pinctrl-0 = <&pinctrl_ssc1_tx &pinctrl_ssc1_rx>;
Bo Shen315656b2012-12-13 10:05:07 +0800510 status = "disabled";
Bo Shen099343c2012-11-07 11:41:41 +0800511 };
512
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800513 macb0: ethernet@fffbc000 {
514 compatible = "cdns,at32ap7000-macb", "cdns,macb";
515 reg = <0xfffbc000 0x100>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800516 interrupts = <21 IRQ_TYPE_LEVEL_HIGH 3>;
Jean-Christophe PLAGNIOL-VILLARDd9b4fe82012-10-23 10:19:11 +0800517 pinctrl-names = "default";
518 pinctrl-0 = <&pinctrl_macb_rmii>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800519 status = "disabled";
520 };
521
522 usb1: gadget@fff78000 {
523 compatible = "atmel,at91rm9200-udc";
524 reg = <0xfff78000 0x4000>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800525 interrupts = <24 IRQ_TYPE_LEVEL_HIGH 2>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800526 status = "disabled";
527 };
Ludovic Desroches05dcd362012-09-12 08:42:16 +0200528
529 i2c0: i2c@fff88000 {
Jean-Jacques Hiblot821003b2014-01-15 11:24:46 +0100530 compatible = "atmel,at91sam9260-i2c";
Ludovic Desroches05dcd362012-09-12 08:42:16 +0200531 reg = <0xfff88000 0x100>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800532 interrupts = <13 IRQ_TYPE_LEVEL_HIGH 6>;
Ludovic Desroches05dcd362012-09-12 08:42:16 +0200533 #address-cells = <1>;
534 #size-cells = <0>;
535 status = "disabled";
536 };
Ludovic Desroches98731372012-11-19 12:23:36 +0100537
538 mmc0: mmc@fff80000 {
539 compatible = "atmel,hsmci";
540 reg = <0xfff80000 0x600>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800541 interrupts = <10 IRQ_TYPE_LEVEL_HIGH 0>;
Ludovic Desroches98731372012-11-19 12:23:36 +0100542 #address-cells = <1>;
543 #size-cells = <0>;
544 status = "disabled";
545 };
546
547 mmc1: mmc@fff84000 {
548 compatible = "atmel,hsmci";
549 reg = <0xfff84000 0x600>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800550 interrupts = <11 IRQ_TYPE_LEVEL_HIGH 0>;
Ludovic Desroches98731372012-11-19 12:23:36 +0100551 #address-cells = <1>;
552 #size-cells = <0>;
553 status = "disabled";
554 };
Linus Torvaldsdb5b0ae2012-12-13 10:39:26 -0800555
Fabio Porcedda7492e7c2012-11-12 09:37:26 +0100556 watchdog@fffffd40 {
557 compatible = "atmel,at91sam9260-wdt";
558 reg = <0xfffffd40 0x10>;
Boris BREZILLONfe46aa62013-10-04 09:24:14 +0200559 interrupts = <1 IRQ_TYPE_LEVEL_HIGH 7>;
560 atmel,watchdog-type = "hardware";
561 atmel,reset-type = "all";
562 atmel,dbg-halt;
563 atmel,idle-halt;
Fabio Porcedda7492e7c2012-11-12 09:37:26 +0100564 status = "disabled";
565 };
Richard Genoudd50f88a2013-04-03 14:02:18 +0800566
567 spi0: spi@fffa4000 {
568 #address-cells = <1>;
569 #size-cells = <0>;
570 compatible = "atmel,at91rm9200-spi";
571 reg = <0xfffa4000 0x200>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800572 interrupts = <14 IRQ_TYPE_LEVEL_HIGH 3>;
Wenyou Yanga68b7282013-04-03 14:03:52 +0800573 pinctrl-names = "default";
574 pinctrl-0 = <&pinctrl_spi0>;
Richard Genoudd50f88a2013-04-03 14:02:18 +0800575 status = "disabled";
576 };
577
578 spi1: spi@fffa8000 {
579 #address-cells = <1>;
580 #size-cells = <0>;
581 compatible = "atmel,at91rm9200-spi";
582 reg = <0xfffa8000 0x200>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800583 interrupts = <15 IRQ_TYPE_LEVEL_HIGH 3>;
Wenyou Yanga68b7282013-04-03 14:03:52 +0800584 pinctrl-names = "default";
585 pinctrl-0 = <&pinctrl_spi1>;
Richard Genoudd50f88a2013-04-03 14:02:18 +0800586 status = "disabled";
587 };
Bo Shenf3ab0522013-12-19 11:59:17 +0800588
589 pwm0: pwm@fffb8000 {
590 compatible = "atmel,at91sam9rl-pwm";
591 reg = <0xfffb8000 0x300>;
592 interrupts = <20 IRQ_TYPE_LEVEL_HIGH 4>;
593 #pwm-cells = <3>;
594 status = "disabled";
595 };
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800596 };
597
Jean-Christophe PLAGNIOL-VILLARDf8a0d792013-03-29 04:50:46 +0800598 fb0: fb@0x00700000 {
599 compatible = "atmel,at91sam9263-lcdc";
600 reg = <0x00700000 0x1000>;
601 interrupts = <26 IRQ_TYPE_LEVEL_HIGH 3>;
602 pinctrl-names = "default";
603 pinctrl-0 = <&pinctrl_fb>;
604 status = "disabled";
605 };
606
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800607 nand0: nand@40000000 {
608 compatible = "atmel,at91rm9200-nand";
609 #address-cells = <1>;
610 #size-cells = <1>;
611 reg = <0x40000000 0x10000000
612 0xffffe000 0x200
613 >;
614 atmel,nand-addr-offset = <21>;
615 atmel,nand-cmd-offset = <22>;
Jean-Christophe PLAGNIOL-VILLARD7a38d452012-07-12 23:36:52 +0800616 pinctrl-names = "default";
617 pinctrl-0 = <&pinctrl_nand>;
Jean-Christophe PLAGNIOL-VILLARD92f86292013-04-24 08:34:25 +0800618 gpios = <&pioA 22 GPIO_ACTIVE_HIGH
619 &pioD 15 GPIO_ACTIVE_HIGH
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800620 0
621 >;
622 status = "disabled";
623 };
624
625 usb0: ohci@00a00000 {
626 compatible = "atmel,at91rm9200-ohci", "usb-ohci";
627 reg = <0x00a00000 0x100000>;
Jean-Christophe PLAGNIOL-VILLARD5e8b3bc2013-04-24 08:34:25 +0800628 interrupts = <29 IRQ_TYPE_LEVEL_HIGH 2>;
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800629 status = "disabled";
630 };
631 };
632
633 i2c@0 {
634 compatible = "i2c-gpio";
Jean-Christophe PLAGNIOL-VILLARD92f86292013-04-24 08:34:25 +0800635 gpios = <&pioB 4 GPIO_ACTIVE_HIGH /* sda */
636 &pioB 5 GPIO_ACTIVE_HIGH /* scl */
Jean-Christophe PLAGNIOL-VILLARD4abb3672012-02-26 19:12:43 +0800637 >;
638 i2c-gpio,sda-open-drain;
639 i2c-gpio,scl-open-drain;
640 i2c-gpio,delay-us = <2>; /* ~100 kHz */
641 #address-cells = <1>;
642 #size-cells = <0>;
643 status = "disabled";
644 };
645};