Commit | Line | Data |
---|---|---|
1e5f532c SSM |
1 | // SPDX-License-Identifier: (GPL-2.0+ OR MIT) |
2 | /* | |
3 | * at91-sam9x60ek.dts - Device Tree file for Microchip SAM9X60-EK board | |
4 | * | |
5 | * Copyright (C) 2019 Microchip Technology Inc. and its subsidiaries | |
6 | * | |
7 | * Author: Sandeep Sheriker M <sandeepsheriker.mallikarjun@microchip.com> | |
8 | */ | |
9 | /dts-v1/; | |
10 | #include "sam9x60.dtsi" | |
ca7a049a | 11 | #include <dt-bindings/input/input.h> |
1e5f532c SSM |
12 | |
13 | / { | |
14 | model = "Microchip SAM9X60-EK"; | |
15 | compatible = "microchip,sam9x60ek", "microchip,sam9x60", "atmel,at91sam9"; | |
16 | ||
17 | aliases { | |
18 | i2c0 = &i2c0; | |
19 | i2c1 = &i2c1; | |
20 | serial1 = &uart1; | |
21 | }; | |
22 | ||
23 | chosen { | |
24 | stdout-path = "serial0:115200n8"; | |
25 | }; | |
26 | ||
27 | clocks { | |
28 | slow_xtal { | |
29 | clock-frequency = <32768>; | |
30 | }; | |
31 | ||
32 | main_xtal { | |
33 | clock-frequency = <24000000>; | |
34 | }; | |
35 | }; | |
36 | ||
37 | regulators: regulators { | |
38 | compatible = "simple-bus"; | |
39 | #address-cells = <1>; | |
40 | #size-cells = <0>; | |
41 | ||
42 | vdd_1v8: fixed-regulator-vdd_1v8@0 { | |
43 | compatible = "regulator-fixed"; | |
44 | regulator-name = "VDD_1V8"; | |
45 | regulator-min-microvolt = <1800000>; | |
46 | regulator-max-microvolt = <1800000>; | |
47 | regulator-always-on; | |
48 | status = "okay"; | |
49 | }; | |
50 | ||
dd340570 | 51 | vdd_1v15: fixed-regulator-vdd_1v15@1 { |
1e5f532c | 52 | compatible = "regulator-fixed"; |
dd340570 MS |
53 | regulator-name = "VDD_1V15"; |
54 | regulator-min-microvolt = <1150000>; | |
55 | regulator-max-microvolt = <1150000>; | |
1e5f532c SSM |
56 | regulator-always-on; |
57 | status = "okay"; | |
58 | }; | |
59 | ||
60 | vdd1_3v3: fixed-regulator-vdd1_3v3@2 { | |
61 | compatible = "regulator-fixed"; | |
62 | regulator-name = "VDD1_3V3"; | |
63 | regulator-min-microvolt = <3300000>; | |
64 | regulator-max-microvolt = <3300000>; | |
65 | regulator-always-on; | |
66 | status = "okay"; | |
67 | }; | |
68 | ||
69 | vdd2_3v3: regulator-fixed-vdd2_3v3@3 { | |
70 | compatible = "regulator-fixed"; | |
71 | regulator-name = "VDD2_3V3"; | |
72 | regulator-min-microvolt = <3300000>; | |
73 | regulator-max-microvolt = <3300000>; | |
74 | regulator-always-on; | |
75 | status = "okay"; | |
76 | }; | |
77 | }; | |
78 | ||
79 | gpio_keys { | |
80 | compatible = "gpio-keys"; | |
81 | pinctrl-names = "default"; | |
82 | pinctrl-0 = <&pinctrl_key_gpio_default>; | |
83 | status = "okay"; | |
84 | ||
85 | sw1 { | |
86 | label = "SW1"; | |
87 | gpios = <&pioD 18 GPIO_ACTIVE_LOW>; | |
ca7a049a | 88 | linux,code=<KEY_PROG1>; |
1e5f532c SSM |
89 | wakeup-source; |
90 | }; | |
91 | }; | |
92 | ||
93 | leds { | |
94 | compatible = "gpio-leds"; | |
bf781869 CB |
95 | pinctrl-names = "default"; |
96 | pinctrl-0 = <&pinctrl_gpio_leds>; | |
1e5f532c SSM |
97 | status = "okay"; /* Conflict with pwm0. */ |
98 | ||
99 | red { | |
100 | label = "red"; | |
101 | gpios = <&pioB 11 GPIO_ACTIVE_HIGH>; | |
102 | }; | |
103 | ||
104 | green { | |
105 | label = "green"; | |
106 | gpios = <&pioB 12 GPIO_ACTIVE_HIGH>; | |
107 | }; | |
108 | ||
109 | blue { | |
110 | label = "blue"; | |
111 | gpios = <&pioB 13 GPIO_ACTIVE_HIGH>; | |
112 | linux,default-trigger = "heartbeat"; | |
113 | }; | |
114 | }; | |
115 | }; | |
116 | ||
117 | &adc { | |
118 | vddana-supply = <&vdd1_3v3>; | |
119 | vref-supply = <&vdd1_3v3>; | |
120 | pinctrl-names = "default"; | |
121 | pinctrl-0 = <&pinctrl_adc_default &pinctrl_adtrg_default>; | |
122 | status = "okay"; | |
123 | }; | |
124 | ||
125 | &can0 { | |
126 | pinctrl-names = "default"; | |
127 | pinctrl-0 = <&pinctrl_can0_rx_tx>; | |
128 | status = "disabled"; /* Conflict with dbgu. */ | |
129 | }; | |
130 | ||
131 | &can1 { | |
132 | pinctrl-names = "default"; | |
133 | pinctrl-0 = <&pinctrl_can1_rx_tx>; | |
134 | status = "okay"; | |
135 | }; | |
136 | ||
137 | &classd { | |
138 | pinctrl-names = "default"; | |
139 | pinctrl-0 = <&pinctrl_classd_default>; | |
140 | atmel,pwm-type = "diff"; | |
141 | atmel,non-overlap-time = <10>; | |
142 | status = "okay"; | |
143 | }; | |
144 | ||
145 | &dbgu { | |
146 | pinctrl-names = "default"; | |
147 | pinctrl-0 = <&pinctrl_dbgu>; | |
148 | status = "okay"; /* Conflict with can0. */ | |
149 | }; | |
150 | ||
151 | &ebi { | |
152 | pinctrl-names = "default"; | |
153 | pinctrl-0 = <&pinctrl_ebi_addr_nand &pinctrl_ebi_data_0_7>; | |
154 | status = "okay"; | |
155 | ||
156 | nand_controller: nand-controller { | |
157 | pinctrl-names = "default"; | |
158 | pinctrl-0 = <&pinctrl_nand_oe_we &pinctrl_nand_cs &pinctrl_nand_rb>; | |
159 | status = "okay"; | |
160 | ||
161 | nand@3 { | |
162 | reg = <0x3 0x0 0x800000>; | |
163 | rb-gpios = <&pioD 5 GPIO_ACTIVE_HIGH>; | |
164 | cs-gpios = <&pioD 4 GPIO_ACTIVE_HIGH>; | |
165 | nand-bus-width = <8>; | |
166 | nand-ecc-mode = "hw"; | |
167 | nand-ecc-strength = <8>; | |
168 | nand-ecc-step-size = <512>; | |
169 | nand-on-flash-bbt; | |
170 | label = "atmel_nand"; | |
171 | ||
172 | partitions { | |
173 | compatible = "fixed-partitions"; | |
174 | #address-cells = <1>; | |
175 | #size-cells = <1>; | |
176 | ||
177 | at91bootstrap@0 { | |
178 | label = "at91bootstrap"; | |
179 | reg = <0x0 0x40000>; | |
180 | }; | |
181 | ||
182 | uboot@40000 { | |
183 | label = "u-boot"; | |
184 | reg = <0x40000 0xc0000>; | |
185 | }; | |
186 | ||
187 | ubootenvred@100000 { | |
188 | label = "U-Boot Env Redundant"; | |
189 | reg = <0x100000 0x40000>; | |
190 | }; | |
191 | ||
192 | ubootenv@140000 { | |
193 | label = "U-Boot Env"; | |
194 | reg = <0x140000 0x40000>; | |
195 | }; | |
196 | ||
197 | dtb@180000 { | |
198 | label = "device tree"; | |
199 | reg = <0x180000 0x80000>; | |
200 | }; | |
201 | ||
202 | kernel@200000 { | |
203 | label = "kernel"; | |
204 | reg = <0x200000 0x600000>; | |
205 | }; | |
206 | ||
207 | rootfs@800000 { | |
208 | label = "rootfs"; | |
209 | reg = <0x800000 0x1f800000>; | |
210 | }; | |
211 | }; | |
212 | }; | |
213 | }; | |
214 | }; | |
215 | ||
216 | &flx0 { | |
217 | atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>; | |
218 | status = "okay"; | |
219 | ||
220 | i2c0: i2c@600 { | |
221 | compatible = "microchip,sam9x60-i2c"; | |
222 | reg = <0x600 0x200>; | |
223 | interrupts = <5 IRQ_TYPE_LEVEL_HIGH 7>; | |
224 | #address-cells = <1>; | |
225 | #size-cells = <0>; | |
226 | clocks = <&pmc PMC_TYPE_PERIPHERAL 5>; | |
227 | pinctrl-names = "default"; | |
228 | pinctrl-0 = <&pinctrl_flx0_default>; | |
229 | atmel,fifo-size = <16>; | |
230 | i2c-analog-filter; | |
231 | i2c-digital-filter; | |
232 | i2c-digital-filter-width-ns = <35>; | |
233 | status = "okay"; | |
234 | ||
235 | eeprom@53 { | |
f2cbbc3f | 236 | compatible = "atmel,24c02"; |
1e5f532c SSM |
237 | reg = <0x53>; |
238 | pagesize = <16>; | |
1e5f532c SSM |
239 | status = "okay"; |
240 | }; | |
241 | }; | |
242 | }; | |
243 | ||
244 | &flx4 { | |
245 | atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_SPI>; | |
246 | status = "disabled"; | |
247 | ||
248 | spi0: spi@400 { | |
249 | compatible = "microchip,sam9x60-spi", "atmel,at91rm9200-spi"; | |
250 | reg = <0x400 0x200>; | |
251 | interrupts = <13 IRQ_TYPE_LEVEL_HIGH 7>; | |
252 | clocks = <&pmc PMC_TYPE_PERIPHERAL 13>; | |
253 | clock-names = "spi_clk"; | |
254 | pinctrl-names = "default"; | |
255 | pinctrl-0 = <&pinctrl_flx4_default>; | |
256 | atmel,fifo-size = <16>; | |
257 | #address-cells = <1>; | |
258 | #size-cells = <0>; | |
259 | status = "disabled"; | |
260 | }; | |
261 | }; | |
262 | ||
263 | &flx5 { | |
264 | atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>; | |
265 | status = "okay"; | |
266 | ||
267 | uart1: serial@200 { | |
268 | compatible = "microchip,sam9x60-usart", "atmel,at91sam9260-usart"; | |
269 | reg = <0x200 0x200>; | |
270 | interrupts = <14 IRQ_TYPE_LEVEL_HIGH 7>; | |
271 | dmas = <&dma0 | |
272 | (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | | |
273 | AT91_XDMAC_DT_PERID(10))>, | |
274 | <&dma0 | |
275 | (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | | |
276 | AT91_XDMAC_DT_PERID(11))>; | |
277 | dma-names = "tx", "rx"; | |
278 | clocks = <&pmc PMC_TYPE_PERIPHERAL 14>; | |
279 | clock-names = "usart"; | |
280 | pinctrl-0 = <&pinctrl_flx5_default>; | |
281 | pinctrl-names = "default"; | |
282 | atmel,use-dma-rx; | |
283 | atmel,use-dma-tx; | |
284 | status = "okay"; | |
285 | }; | |
286 | }; | |
287 | ||
288 | &flx6 { | |
289 | atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>; | |
290 | status = "okay"; | |
291 | ||
292 | i2c1: i2c@600 { | |
293 | compatible = "microchip,sam9x60-i2c"; | |
294 | reg = <0x600 0x200>; | |
295 | interrupts = <9 IRQ_TYPE_LEVEL_HIGH 7>; | |
296 | #address-cells = <1>; | |
297 | #size-cells = <0>; | |
298 | clocks = <&pmc PMC_TYPE_PERIPHERAL 9>; | |
299 | pinctrl-names = "default"; | |
300 | pinctrl-0 = <&pinctrl_flx6_default>; | |
301 | atmel,fifo-size = <16>; | |
302 | i2c-analog-filter; | |
303 | i2c-digital-filter; | |
304 | i2c-digital-filter-width-ns = <35>; | |
305 | status = "okay"; | |
306 | ||
307 | gpio_exp: mcp23008@20 { | |
308 | compatible = "microchip,mcp23008"; | |
309 | reg = <0x20>; | |
310 | }; | |
311 | }; | |
312 | }; | |
313 | ||
5f6b33f4 CB |
314 | &gpbr { |
315 | status = "okay"; | |
316 | }; | |
317 | ||
1e5f532c SSM |
318 | &i2s { |
319 | pinctrl-names = "default"; | |
320 | pinctrl-0 = <&pinctrl_i2s_default>; | |
321 | #sound-dai-cells = <0>; | |
322 | status = "disabled"; /* Conflict with QSPI. */ | |
323 | }; | |
324 | ||
325 | &macb0 { | |
326 | phy-mode = "rmii"; | |
327 | #address-cells = <1>; | |
328 | #size-cells = <0>; | |
329 | pinctrl-names = "default"; | |
330 | pinctrl-0 = <&pinctrl_macb0_rmii>; | |
331 | status = "okay"; | |
332 | ||
333 | ethernet-phy@0 { | |
334 | reg = <0x0>; | |
335 | }; | |
336 | }; | |
337 | ||
338 | &pinctrl { | |
1e5f532c SSM |
339 | adc { |
340 | pinctrl_adc_default: adc_default { | |
341 | atmel,pins = <AT91_PIOB 15 AT91_PERIPH_A AT91_PINCTRL_NONE>; | |
342 | }; | |
343 | ||
344 | pinctrl_adtrg_default: adtrg_default { | |
345 | atmel,pins = <AT91_PIOB 18 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>; | |
346 | }; | |
347 | }; | |
348 | ||
349 | dbgu { | |
350 | pinctrl_dbgu: dbgu-0 { | |
351 | atmel,pins = <AT91_PIOA 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP | |
352 | AT91_PIOA 10 AT91_PERIPH_A AT91_PINCTRL_NONE>; | |
353 | }; | |
354 | }; | |
355 | ||
356 | i2s { | |
357 | pinctrl_i2s_default: i2s { | |
358 | atmel,pins = | |
359 | <AT91_PIOB 19 AT91_PERIPH_B AT91_PINCTRL_NONE /* I2SCK */ | |
360 | AT91_PIOB 20 AT91_PERIPH_B AT91_PINCTRL_NONE /* I2SWS */ | |
361 | AT91_PIOB 21 AT91_PERIPH_B AT91_PINCTRL_NONE /* I2SDIN */ | |
362 | AT91_PIOB 22 AT91_PERIPH_B AT91_PINCTRL_NONE /* I2SDOUT */ | |
363 | AT91_PIOB 23 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* I2SMCK */ | |
364 | }; | |
365 | }; | |
366 | ||
367 | qspi { | |
368 | pinctrl_qspi: qspi { | |
369 | atmel,pins = | |
370 | <AT91_PIOB 19 AT91_PERIPH_A AT91_PINCTRL_SLEWRATE_DIS | |
371 | AT91_PIOB 20 AT91_PERIPH_A AT91_PINCTRL_SLEWRATE_DIS | |
372 | AT91_PIOB 21 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS) | |
373 | AT91_PIOB 22 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS) | |
374 | AT91_PIOB 23 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS) | |
375 | AT91_PIOB 24 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS)>; | |
376 | }; | |
377 | }; | |
378 | ||
379 | nand { | |
380 | pinctrl_nand_oe_we: nand-oe-we-0 { | |
381 | atmel,pins = | |
382 | <AT91_PIOD 0 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) | |
383 | AT91_PIOD 1 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>; | |
384 | }; | |
385 | ||
386 | pinctrl_nand_rb: nand-rb-0 { | |
387 | atmel,pins = | |
388 | <AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; | |
389 | }; | |
390 | ||
391 | pinctrl_nand_cs: nand-cs-0 { | |
392 | atmel,pins = | |
393 | <AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>; | |
394 | }; | |
395 | }; | |
396 | ||
397 | ebi { | |
398 | pinctrl_ebi_data_0_7: ebi-data-lsb-0 { | |
399 | atmel,pins = | |
400 | <AT91_PIOD 6 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) | |
401 | AT91_PIOD 7 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) | |
402 | AT91_PIOD 8 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) | |
403 | AT91_PIOD 9 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) | |
404 | AT91_PIOD 10 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) | |
405 | AT91_PIOD 11 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) | |
406 | AT91_PIOD 12 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) | |
407 | AT91_PIOD 13 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>; | |
408 | }; | |
409 | ||
410 | pinctrl_ebi_data_0_15: ebi-data-msb-0 { | |
411 | atmel,pins = | |
412 | <AT91_PIOD 6 AT91_PERIPH_A AT91_PINCTRL_NONE | |
413 | AT91_PIOD 7 AT91_PERIPH_A AT91_PINCTRL_NONE | |
414 | AT91_PIOD 8 AT91_PERIPH_A AT91_PINCTRL_NONE | |
415 | AT91_PIOD 9 AT91_PERIPH_A AT91_PINCTRL_NONE | |
416 | AT91_PIOD 10 AT91_PERIPH_A AT91_PINCTRL_NONE | |
417 | AT91_PIOD 11 AT91_PERIPH_A AT91_PINCTRL_NONE | |
418 | AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_NONE | |
419 | AT91_PIOD 13 AT91_PERIPH_A AT91_PINCTRL_NONE | |
420 | AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_NONE | |
421 | AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE | |
422 | AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_NONE | |
423 | AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE | |
424 | AT91_PIOD 18 AT91_PERIPH_A AT91_PINCTRL_NONE | |
425 | AT91_PIOD 19 AT91_PERIPH_A AT91_PINCTRL_NONE | |
426 | AT91_PIOD 20 AT91_PERIPH_A AT91_PINCTRL_NONE | |
427 | AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_NONE>; | |
428 | }; | |
429 | ||
430 | pinctrl_ebi_addr_nand: ebi-addr-0 { | |
431 | atmel,pins = | |
432 | <AT91_PIOD 2 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS) | |
433 | AT91_PIOD 3 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>; | |
434 | }; | |
435 | }; | |
436 | ||
437 | flexcom { | |
438 | pinctrl_flx0_default: flx0_twi { | |
439 | atmel,pins = | |
440 | <AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_PULL_UP | |
441 | AT91_PIOA 1 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; | |
442 | }; | |
443 | ||
444 | pinctrl_flx4_default: flx4_spi { | |
445 | atmel,pins = | |
446 | <AT91_PIOA 11 AT91_PERIPH_A AT91_PINCTRL_NONE | |
447 | AT91_PIOA 12 AT91_PERIPH_A AT91_PINCTRL_NONE | |
448 | AT91_PIOA 13 AT91_PERIPH_A AT91_PINCTRL_NONE | |
449 | AT91_PIOA 14 AT91_PERIPH_A AT91_PINCTRL_NONE>; | |
450 | }; | |
451 | ||
452 | pinctrl_flx5_default: flx_uart { | |
453 | atmel,pins = | |
454 | <AT91_PIOA 7 AT91_PERIPH_C AT91_PINCTRL_NONE | |
455 | AT91_PIOA 8 AT91_PERIPH_B AT91_PINCTRL_NONE | |
456 | AT91_PIOA 21 AT91_PERIPH_B AT91_PINCTRL_NONE | |
457 | AT91_PIOA 22 AT91_PERIPH_B AT91_PINCTRL_NONE>; | |
458 | }; | |
459 | ||
460 | pinctrl_flx6_default: flx6_twi { | |
461 | atmel,pins = | |
462 | <AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_PULL_UP | |
463 | AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>; | |
464 | }; | |
465 | }; | |
466 | ||
467 | classd { | |
468 | pinctrl_classd_default: classd { | |
469 | atmel,pins = | |
470 | <AT91_PIOA 24 AT91_PERIPH_C AT91_PINCTRL_PULL_UP | |
008e6fad | 471 | AT91_PIOA 25 AT91_PERIPH_C AT91_PINCTRL_PULL_DOWN |
1e5f532c | 472 | AT91_PIOA 26 AT91_PERIPH_C AT91_PINCTRL_PULL_UP |
008e6fad | 473 | AT91_PIOA 27 AT91_PERIPH_C AT91_PINCTRL_PULL_DOWN>; |
1e5f532c SSM |
474 | }; |
475 | }; | |
476 | ||
477 | can0 { | |
478 | pinctrl_can0_rx_tx: can0_rx_tx { | |
479 | atmel,pins = | |
480 | <AT91_PIOA 9 AT91_PERIPH_B AT91_PINCTRL_NONE /* CANRX0 */ | |
481 | AT91_PIOA 10 AT91_PERIPH_B AT91_PINCTRL_NONE /* CANTX0 */ | |
482 | AT91_PIOD 20 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN /* Enable CAN0 mux */ | |
483 | AT91_PIOD 21 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN>; /* Enable CAN Transceivers */ | |
484 | }; | |
485 | }; | |
486 | ||
487 | can1 { | |
488 | pinctrl_can1_rx_tx: can1_rx_tx { | |
489 | atmel,pins = | |
490 | <AT91_PIOA 6 AT91_PERIPH_B AT91_PINCTRL_NONE /* CANRX1 RXD1 */ | |
491 | AT91_PIOA 5 AT91_PERIPH_B AT91_PINCTRL_NONE /* CANTX1 TXD1 */ | |
492 | AT91_PIOD 19 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN /* Enable CAN1 mux */ | |
493 | AT91_PIOD 21 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN>; /* Enable CAN Transceivers */ | |
494 | }; | |
495 | }; | |
496 | ||
497 | macb0 { | |
498 | pinctrl_macb0_rmii: macb0_rmii-0 { | |
499 | atmel,pins = | |
500 | <AT91_PIOB 0 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB0 periph A */ | |
501 | AT91_PIOB 1 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB1 periph A */ | |
502 | AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB2 periph A */ | |
503 | AT91_PIOB 3 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB3 periph A */ | |
504 | AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB4 periph A */ | |
505 | AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB5 periph A */ | |
506 | AT91_PIOB 6 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB6 periph A */ | |
507 | AT91_PIOB 7 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB7 periph A */ | |
508 | AT91_PIOB 9 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB9 periph A */ | |
509 | AT91_PIOB 10 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB10 periph A */ | |
510 | }; | |
511 | }; | |
512 | ||
513 | pwm0 { | |
514 | pinctrl_pwm0_0: pwm0_0 { | |
515 | atmel,pins = <AT91_PIOB 11 AT91_PERIPH_B AT91_PINCTRL_NONE>; | |
516 | }; | |
517 | ||
518 | pinctrl_pwm0_1: pwm0_1 { | |
519 | atmel,pins = <AT91_PIOB 12 AT91_PERIPH_B AT91_PINCTRL_NONE>; | |
520 | }; | |
521 | ||
522 | pinctrl_pwm0_2: pwm0_2 { | |
523 | atmel,pins = <AT91_PIOB 13 AT91_PERIPH_B AT91_PINCTRL_NONE>; | |
524 | }; | |
525 | ||
526 | pinctrl_pwm0_3: pwm0_3 { | |
527 | atmel,pins = <AT91_PIOB 14 AT91_PERIPH_B AT91_PINCTRL_NONE>; | |
528 | }; | |
529 | }; | |
530 | ||
531 | sdmmc0 { | |
532 | pinctrl_sdmmc0_default: sdmmc0 { | |
533 | atmel,pins = | |
534 | <AT91_PIOA 17 AT91_PERIPH_A (AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA17 CK periph A with pullup */ | |
535 | AT91_PIOA 16 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA16 CMD periph A with pullup */ | |
536 | AT91_PIOA 15 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA15 DAT0 periph A */ | |
537 | AT91_PIOA 18 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA18 DAT1 periph A with pullup */ | |
538 | AT91_PIOA 19 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA19 DAT2 periph A with pullup */ | |
539 | AT91_PIOA 20 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)>; /* PA20 DAT3 periph A with pullup */ | |
540 | }; | |
bf781869 CB |
541 | pinctrl_sdmmc0_cd: sdmmc0_cd { |
542 | atmel,pins = | |
543 | <AT91_PIOA 23 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; | |
544 | }; | |
1e5f532c SSM |
545 | }; |
546 | ||
0fd3a8f5 TA |
547 | sdmmc1 { |
548 | pinctrl_sdmmc1_default: sdmmc1 { | |
549 | atmel,pins = | |
550 | <AT91_PIOA 13 AT91_PERIPH_B (AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA13 CK periph B */ | |
551 | AT91_PIOA 12 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA12 CMD periph B with pullup */ | |
552 | AT91_PIOA 11 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA11 DAT0 periph B with pullup */ | |
553 | AT91_PIOA 2 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA2 DAT1 periph B with pullup */ | |
554 | AT91_PIOA 3 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA3 DAT2 periph B with pullup */ | |
555 | AT91_PIOA 4 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)>; /* PA4 DAT3 periph B with pullup */ | |
556 | }; | |
557 | }; | |
558 | ||
1e5f532c SSM |
559 | gpio_keys { |
560 | pinctrl_key_gpio_default: pinctrl_key_gpio { | |
561 | atmel,pins = <AT91_PIOD 18 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; | |
562 | }; | |
563 | }; | |
84b522e6 CB |
564 | |
565 | usb0 { | |
566 | pinctrl_usba_vbus: usba_vbus { | |
567 | atmel,pins = <AT91_PIOB 16 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; | |
568 | }; | |
569 | }; | |
5ba62910 CB |
570 | |
571 | usb1 { | |
572 | pinctrl_usb_default: usb_default { | |
573 | atmel,pins = <AT91_PIOD 15 AT91_PERIPH_GPIO AT91_PINCTRL_NONE | |
574 | AT91_PIOD 16 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; | |
575 | }; | |
576 | }; | |
bf781869 CB |
577 | |
578 | leds { | |
579 | pinctrl_gpio_leds: gpio_leds { | |
580 | atmel,pins = <AT91_PIOB 11 AT91_PERIPH_GPIO AT91_PINCTRL_NONE | |
581 | AT91_PIOB 12 AT91_PERIPH_GPIO AT91_PINCTRL_NONE | |
582 | AT91_PIOB 13 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>; | |
583 | }; | |
584 | }; | |
1e5f532c SSM |
585 | }; /* pinctrl */ |
586 | ||
1e5f532c SSM |
587 | &pwm0 { |
588 | pinctrl-names = "default"; | |
589 | pinctrl-0 = <&pinctrl_pwm0_0 &pinctrl_pwm0_1 &pinctrl_pwm0_2 &pinctrl_pwm0_3>; | |
590 | status = "disabled"; /* Conflict with leds. */ | |
591 | }; | |
592 | ||
593 | &sdmmc0 { | |
594 | bus-width = <4>; | |
595 | pinctrl-names = "default"; | |
bf781869 | 596 | pinctrl-0 = <&pinctrl_sdmmc0_default &pinctrl_sdmmc0_cd>; |
1e5f532c SSM |
597 | status = "okay"; |
598 | cd-gpios = <&pioA 23 GPIO_ACTIVE_LOW>; | |
599 | disable-wp; | |
600 | }; | |
601 | ||
0fd3a8f5 TA |
602 | &sdmmc1 { |
603 | bus-width = <4>; | |
604 | pinctrl-names = "default"; | |
605 | pinctrl-0 = <&pinctrl_sdmmc1_default>; | |
606 | no-1-8-v; | |
607 | non-removable; | |
608 | status = "disabled"; /* Conflict with flx4. */ | |
609 | }; | |
610 | ||
1e5f532c SSM |
611 | &qspi { |
612 | pinctrl-names = "default"; | |
613 | pinctrl-0 = <&pinctrl_qspi>; | |
614 | status = "okay"; /* Conflict with i2s. */ | |
615 | ||
616 | flash@0 { | |
617 | #address-cells = <1>; | |
618 | #size-cells = <1>; | |
619 | compatible = "jedec,spi-nor"; | |
620 | reg = <0>; | |
621 | spi-max-frequency = <80000000>; | |
c3781503 TA |
622 | spi-tx-bus-width = <4>; |
623 | spi-rx-bus-width = <4>; | |
1e5f532c SSM |
624 | m25p,fast-read; |
625 | ||
626 | at91bootstrap@0 { | |
627 | label = "qspi: at91bootstrap"; | |
628 | reg = <0x0 0x40000>; | |
629 | }; | |
630 | ||
631 | bootloader@40000 { | |
632 | label = "qspi: bootloader"; | |
633 | reg = <0x40000 0xc0000>; | |
634 | }; | |
635 | ||
636 | bootloaderenvred@100000 { | |
637 | label = "qspi: bootloader env redundant"; | |
638 | reg = <0x100000 0x40000>; | |
639 | }; | |
640 | ||
641 | bootloaderenv@140000 { | |
642 | label = "qspi: bootloader env"; | |
643 | reg = <0x140000 0x40000>; | |
644 | }; | |
645 | ||
646 | dtb@180000 { | |
647 | label = "qspi: device tree"; | |
648 | reg = <0x180000 0x80000>; | |
649 | }; | |
650 | ||
651 | kernel@200000 { | |
652 | label = "qspi: kernel"; | |
653 | reg = <0x200000 0x600000>; | |
654 | }; | |
655 | }; | |
656 | }; | |
657 | ||
5f6b33f4 CB |
658 | &rtt { |
659 | atmel,rtt-rtc-time-reg = <&gpbr 0x0>; | |
660 | status = "okay"; | |
661 | }; | |
662 | ||
1e5f532c | 663 | &shutdown_controller { |
818c4593 | 664 | debounce-delay-us = <976>; |
1e5f532c SSM |
665 | status = "okay"; |
666 | ||
667 | input@0 { | |
668 | reg = <0>; | |
669 | }; | |
670 | }; | |
671 | ||
672 | &tcb0 { | |
673 | timer0: timer@0 { | |
674 | compatible = "atmel,tcb-timer"; | |
675 | reg = <0>; | |
676 | }; | |
677 | ||
678 | timer1: timer@1 { | |
679 | compatible = "atmel,tcb-timer"; | |
680 | reg = <1>; | |
681 | }; | |
682 | }; | |
683 | ||
84b522e6 CB |
684 | &usb0 { |
685 | atmel,vbus-gpio = <&pioB 16 GPIO_ACTIVE_HIGH>; | |
686 | pinctrl-names = "default"; | |
687 | pinctrl-0 = <&pinctrl_usba_vbus>; | |
688 | status = "okay"; | |
689 | }; | |
690 | ||
1e5f532c SSM |
691 | &usb1 { |
692 | num-ports = <3>; | |
693 | atmel,vbus-gpio = <0 | |
694 | &pioD 15 GPIO_ACTIVE_HIGH | |
695 | &pioD 16 GPIO_ACTIVE_HIGH>; | |
5ba62910 CB |
696 | pinctrl-names = "default"; |
697 | pinctrl-0 = <&pinctrl_usb_default>; | |
1e5f532c SSM |
698 | status = "okay"; |
699 | }; | |
700 | ||
701 | &usb2 { | |
702 | status = "okay"; | |
703 | }; | |
4d8353bd EH |
704 | |
705 | &watchdog { | |
706 | status = "okay"; | |
707 | }; | |
708 |