Commit | Line | Data |
---|---|---|
b7c2b615 NF |
1 | /* |
2 | * at91-sama5d3_xplained.dts - Device Tree file for the SAMA5D3 Xplained board | |
3 | * | |
4 | * Copyright (C) 2014 Atmel, | |
5 | * 2014 Nicolas Ferre <nicolas.ferre@atmel.com> | |
6 | * | |
7 | * Licensed under GPLv2 or later. | |
8 | */ | |
9 | /dts-v1/; | |
10 | #include "sama5d36.dtsi" | |
11 | ||
12 | / { | |
13 | model = "SAMA5D3 Xplained"; | |
14 | compatible = "atmel,sama5d3-xplained", "atmel,sama5d3", "atmel,sama5"; | |
15 | ||
16 | chosen { | |
17 | bootargs = "console=ttyS0,115200"; | |
18 | }; | |
19 | ||
20 | memory { | |
21 | reg = <0x20000000 0x10000000>; | |
22 | }; | |
23 | ||
58a5c3d8 BB |
24 | slow_xtal { |
25 | clock-frequency = <32768>; | |
26 | }; | |
27 | ||
28 | main_xtal { | |
29 | clock-frequency = <12000000>; | |
30 | }; | |
31 | ||
b7c2b615 NF |
32 | ahb { |
33 | apb { | |
34 | mmc0: mmc@f0000000 { | |
35 | pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_dat4_7 &pinctrl_mmc0_cd>; | |
36 | status = "okay"; | |
37 | slot@0 { | |
38 | reg = <0>; | |
39 | bus-width = <8>; | |
40 | cd-gpios = <&pioE 0 GPIO_ACTIVE_LOW>; | |
41 | }; | |
42 | }; | |
43 | ||
44 | spi0: spi@f0004000 { | |
d44db494 | 45 | cs-gpios = <&pioD 13 0>, <0>, <0>, <&pioD 16 0>; |
b7c2b615 NF |
46 | status = "okay"; |
47 | }; | |
48 | ||
49 | can0: can@f000c000 { | |
50 | status = "okay"; | |
51 | }; | |
52 | ||
53 | i2c0: i2c@f0014000 { | |
a3b8a7c7 | 54 | pinctrl-0 = <&pinctrl_i2c0_pu>; |
b7c2b615 NF |
55 | status = "okay"; |
56 | }; | |
57 | ||
58 | i2c1: i2c@f0018000 { | |
59 | status = "okay"; | |
a93f9c88 WY |
60 | |
61 | pmic: act8865@5b { | |
62 | compatible = "active-semi,act8865"; | |
63 | reg = <0x5b>; | |
64 | status = "okay"; | |
65 | ||
66 | regulators { | |
67 | vcc_1v8_reg: DCDC_REG1 { | |
68 | regulator-name = "VCC_1V8"; | |
69 | regulator-min-microvolt = <1800000>; | |
70 | regulator-max-microvolt = <1800000>; | |
71 | regulator-always-on; | |
72 | }; | |
73 | ||
74 | vcc_1v2_reg: DCDC_REG2 { | |
75 | regulator-name = "VCC_1V2"; | |
76 | regulator-min-microvolt = <1200000>; | |
77 | regulator-max-microvolt = <1200000>; | |
78 | regulator-always-on; | |
79 | }; | |
80 | ||
81 | vcc_3v3_reg: DCDC_REG3 { | |
82 | regulator-name = "VCC_3V3"; | |
83 | regulator-min-microvolt = <3300000>; | |
84 | regulator-max-microvolt = <3300000>; | |
85 | regulator-always-on; | |
86 | }; | |
87 | ||
88 | vddfuse_reg: LDO_REG1 { | |
89 | regulator-name = "FUSE_2V5"; | |
90 | regulator-min-microvolt = <2500000>; | |
91 | regulator-max-microvolt = <2500000>; | |
92 | }; | |
93 | ||
94 | vddana_reg: LDO_REG2 { | |
95 | regulator-name = "VDDANA"; | |
96 | regulator-min-microvolt = <3300000>; | |
97 | regulator-max-microvolt = <3300000>; | |
98 | regulator-always-on; | |
99 | }; | |
100 | }; | |
101 | }; | |
b7c2b615 NF |
102 | }; |
103 | ||
104 | macb0: ethernet@f0028000 { | |
105 | phy-mode = "rgmii"; | |
106 | status = "okay"; | |
107 | }; | |
108 | ||
0da40f3d NF |
109 | pwm0: pwm@f002c000 { |
110 | pinctrl-names = "default"; | |
111 | pinctrl-0 = <&pinctrl_pwm0_pwmh0_0 &pinctrl_pwm0_pwmh1_0>; | |
112 | status = "okay"; | |
113 | }; | |
114 | ||
b7c2b615 NF |
115 | usart0: serial@f001c000 { |
116 | status = "okay"; | |
117 | }; | |
118 | ||
119 | usart1: serial@f0020000 { | |
120 | pinctrl-0 = <&pinctrl_usart1 &pinctrl_usart1_rts_cts>; | |
121 | status = "okay"; | |
122 | }; | |
123 | ||
124 | uart0: serial@f0024000 { | |
125 | status = "okay"; | |
126 | }; | |
127 | ||
128 | mmc1: mmc@f8000000 { | |
129 | pinctrl-0 = <&pinctrl_mmc1_clk_cmd_dat0 &pinctrl_mmc1_dat1_3 &pinctrl_mmc1_cd>; | |
130 | status = "okay"; | |
131 | slot@0 { | |
132 | reg = <0>; | |
133 | bus-width = <4>; | |
134 | cd-gpios = <&pioE 1 GPIO_ACTIVE_HIGH>; | |
135 | }; | |
136 | }; | |
137 | ||
138 | spi1: spi@f8008000 { | |
d44db494 | 139 | cs-gpios = <&pioC 25 0>; |
b7c2b615 NF |
140 | status = "okay"; |
141 | }; | |
142 | ||
143 | adc0: adc@f8018000 { | |
144 | pinctrl-0 = < | |
145 | &pinctrl_adc0_adtrg | |
146 | &pinctrl_adc0_ad0 | |
147 | &pinctrl_adc0_ad1 | |
148 | &pinctrl_adc0_ad2 | |
149 | &pinctrl_adc0_ad3 | |
150 | &pinctrl_adc0_ad4 | |
151 | &pinctrl_adc0_ad5 | |
152 | &pinctrl_adc0_ad6 | |
153 | &pinctrl_adc0_ad7 | |
154 | &pinctrl_adc0_ad8 | |
155 | &pinctrl_adc0_ad9 | |
156 | >; | |
157 | status = "okay"; | |
158 | }; | |
159 | ||
160 | i2c2: i2c@f801c000 { | |
161 | dmas = <0>, <0>; /* Do not use DMA for i2c2 */ | |
a3b8a7c7 | 162 | pinctrl-0 = <&pinctrl_i2c2_pu>; |
b7c2b615 NF |
163 | status = "okay"; |
164 | }; | |
165 | ||
166 | macb1: ethernet@f802c000 { | |
167 | phy-mode = "rmii"; | |
168 | status = "okay"; | |
169 | }; | |
170 | ||
171 | dbgu: serial@ffffee00 { | |
172 | status = "okay"; | |
173 | }; | |
174 | ||
175 | pinctrl@fffff200 { | |
176 | board { | |
a3b8a7c7 NF |
177 | pinctrl_i2c0_pu: i2c0_pu { |
178 | atmel,pins = | |
179 | <AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>, | |
180 | <AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; | |
181 | }; | |
182 | ||
183 | pinctrl_i2c2_pu: i2c2_pu { | |
184 | atmel,pins = | |
185 | <AT91_PIOA 18 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>, | |
186 | <AT91_PIOA 19 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>; | |
187 | }; | |
188 | ||
b7c2b615 NF |
189 | pinctrl_mmc0_cd: mmc0_cd { |
190 | atmel,pins = | |
191 | <AT91_PIOE 0 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; | |
192 | }; | |
193 | ||
194 | pinctrl_mmc1_cd: mmc1_cd { | |
195 | atmel,pins = | |
196 | <AT91_PIOE 1 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; | |
197 | }; | |
198 | ||
199 | pinctrl_usba_vbus: usba_vbus { | |
200 | atmel,pins = | |
201 | <AT91_PIOE 9 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>; /* PE9, conflicts with A9 */ | |
202 | }; | |
203 | }; | |
204 | }; | |
205 | ||
206 | pmc: pmc@fffffc00 { | |
207 | main: mainck { | |
208 | clock-frequency = <12000000>; | |
209 | }; | |
210 | }; | |
211 | }; | |
212 | ||
213 | nand0: nand@60000000 { | |
214 | nand-bus-width = <8>; | |
215 | nand-ecc-mode = "hw"; | |
216 | atmel,has-pmecc; | |
217 | atmel,pmecc-cap = <4>; | |
218 | atmel,pmecc-sector-size = <512>; | |
219 | nand-on-flash-bbt; | |
220 | status = "okay"; | |
221 | ||
222 | at91bootstrap@0 { | |
223 | label = "at91bootstrap"; | |
224 | reg = <0x0 0x40000>; | |
225 | }; | |
226 | ||
227 | bootloader@40000 { | |
228 | label = "bootloader"; | |
229 | reg = <0x40000 0x80000>; | |
230 | }; | |
231 | ||
232 | bootloaderenv@c0000 { | |
233 | label = "bootloader env"; | |
234 | reg = <0xc0000 0xc0000>; | |
235 | }; | |
236 | ||
237 | dtb@180000 { | |
238 | label = "device tree"; | |
239 | reg = <0x180000 0x80000>; | |
240 | }; | |
241 | ||
242 | kernel@200000 { | |
243 | label = "kernel"; | |
244 | reg = <0x200000 0x600000>; | |
245 | }; | |
246 | ||
247 | rootfs@800000 { | |
248 | label = "rootfs"; | |
249 | reg = <0x800000 0x0f800000>; | |
250 | }; | |
251 | }; | |
252 | ||
253 | usb0: gadget@00500000 { | |
254 | atmel,vbus-gpio = <&pioE 9 GPIO_ACTIVE_HIGH>; /* PE9, conflicts with A9 */ | |
255 | pinctrl-names = "default"; | |
256 | pinctrl-0 = <&pinctrl_usba_vbus>; | |
257 | status = "okay"; | |
258 | }; | |
259 | ||
260 | usb1: ohci@00600000 { | |
261 | num-ports = <3>; | |
262 | atmel,vbus-gpio = <0 | |
263 | &pioE 3 GPIO_ACTIVE_LOW | |
264 | &pioE 4 GPIO_ACTIVE_LOW | |
265 | >; | |
266 | status = "okay"; | |
267 | }; | |
268 | ||
269 | usb2: ehci@00700000 { | |
270 | status = "okay"; | |
271 | }; | |
272 | }; | |
273 | ||
274 | gpio_keys { | |
275 | compatible = "gpio-keys"; | |
276 | ||
277 | bp3 { | |
278 | label = "PB_USER"; | |
279 | gpios = <&pioE 29 GPIO_ACTIVE_LOW>; | |
280 | linux,code = <0x104>; | |
281 | gpio-key,wakeup; | |
282 | }; | |
283 | }; | |
284 | ||
285 | leds { | |
286 | compatible = "gpio-leds"; | |
287 | ||
288 | d2 { | |
289 | label = "d2"; | |
290 | gpios = <&pioE 23 GPIO_ACTIVE_LOW>; /* PE23, conflicts with A23, CTS2 */ | |
291 | linux,default-trigger = "heartbeat"; | |
292 | }; | |
293 | ||
294 | d3 { | |
295 | label = "d3"; | |
296 | gpios = <&pioE 24 GPIO_ACTIVE_HIGH>; | |
297 | }; | |
298 | }; | |
299 | }; |