Loading...
Note: File does not exist in v4.17.
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"
11#include <dt-bindings/input/input.h>
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
51 vdd_1v5: fixed-regulator-vdd_1v5@1 {
52 compatible = "regulator-fixed";
53 regulator-name = "VDD_1V5";
54 regulator-min-microvolt = <1500000>;
55 regulator-max-microvolt = <1500000>;
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>;
88 linux,code=<KEY_PROG1>;
89 wakeup-source;
90 };
91 };
92
93 leds {
94 compatible = "gpio-leds";
95 pinctrl-names = "default";
96 pinctrl-0 = <&pinctrl_gpio_leds>;
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 {
236 compatible = "atmel,24c32";
237 reg = <0x53>;
238 pagesize = <16>;
239 size = <128>;
240 status = "okay";
241 };
242 };
243};
244
245&flx4 {
246 atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_SPI>;
247 status = "disabled";
248
249 spi0: spi@400 {
250 compatible = "microchip,sam9x60-spi", "atmel,at91rm9200-spi";
251 reg = <0x400 0x200>;
252 interrupts = <13 IRQ_TYPE_LEVEL_HIGH 7>;
253 clocks = <&pmc PMC_TYPE_PERIPHERAL 13>;
254 clock-names = "spi_clk";
255 pinctrl-names = "default";
256 pinctrl-0 = <&pinctrl_flx4_default>;
257 atmel,fifo-size = <16>;
258 #address-cells = <1>;
259 #size-cells = <0>;
260 status = "disabled";
261 };
262};
263
264&flx5 {
265 atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>;
266 status = "okay";
267
268 uart1: serial@200 {
269 compatible = "microchip,sam9x60-usart", "atmel,at91sam9260-usart";
270 reg = <0x200 0x200>;
271 interrupts = <14 IRQ_TYPE_LEVEL_HIGH 7>;
272 dmas = <&dma0
273 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
274 AT91_XDMAC_DT_PERID(10))>,
275 <&dma0
276 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
277 AT91_XDMAC_DT_PERID(11))>;
278 dma-names = "tx", "rx";
279 clocks = <&pmc PMC_TYPE_PERIPHERAL 14>;
280 clock-names = "usart";
281 pinctrl-0 = <&pinctrl_flx5_default>;
282 pinctrl-names = "default";
283 atmel,use-dma-rx;
284 atmel,use-dma-tx;
285 status = "okay";
286 };
287};
288
289&flx6 {
290 atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>;
291 status = "okay";
292
293 i2c1: i2c@600 {
294 compatible = "microchip,sam9x60-i2c";
295 reg = <0x600 0x200>;
296 interrupts = <9 IRQ_TYPE_LEVEL_HIGH 7>;
297 #address-cells = <1>;
298 #size-cells = <0>;
299 clocks = <&pmc PMC_TYPE_PERIPHERAL 9>;
300 pinctrl-names = "default";
301 pinctrl-0 = <&pinctrl_flx6_default>;
302 atmel,fifo-size = <16>;
303 i2c-analog-filter;
304 i2c-digital-filter;
305 i2c-digital-filter-width-ns = <35>;
306 status = "okay";
307
308 gpio_exp: mcp23008@20 {
309 compatible = "microchip,mcp23008";
310 reg = <0x20>;
311 };
312 };
313};
314
315&gpbr {
316 status = "okay";
317};
318
319&i2s {
320 pinctrl-names = "default";
321 pinctrl-0 = <&pinctrl_i2s_default>;
322 #sound-dai-cells = <0>;
323 status = "disabled"; /* Conflict with QSPI. */
324};
325
326&macb0 {
327 phy-mode = "rmii";
328 #address-cells = <1>;
329 #size-cells = <0>;
330 pinctrl-names = "default";
331 pinctrl-0 = <&pinctrl_macb0_rmii>;
332 status = "okay";
333
334 ethernet-phy@0 {
335 reg = <0x0>;
336 };
337};
338
339&pinctrl {
340 adc {
341 pinctrl_adc_default: adc_default {
342 atmel,pins = <AT91_PIOB 15 AT91_PERIPH_A AT91_PINCTRL_NONE>;
343 };
344
345 pinctrl_adtrg_default: adtrg_default {
346 atmel,pins = <AT91_PIOB 18 AT91_PERIPH_B AT91_PINCTRL_PULL_UP>;
347 };
348 };
349
350 dbgu {
351 pinctrl_dbgu: dbgu-0 {
352 atmel,pins = <AT91_PIOA 9 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
353 AT91_PIOA 10 AT91_PERIPH_A AT91_PINCTRL_NONE>;
354 };
355 };
356
357 i2s {
358 pinctrl_i2s_default: i2s {
359 atmel,pins =
360 <AT91_PIOB 19 AT91_PERIPH_B AT91_PINCTRL_NONE /* I2SCK */
361 AT91_PIOB 20 AT91_PERIPH_B AT91_PINCTRL_NONE /* I2SWS */
362 AT91_PIOB 21 AT91_PERIPH_B AT91_PINCTRL_NONE /* I2SDIN */
363 AT91_PIOB 22 AT91_PERIPH_B AT91_PINCTRL_NONE /* I2SDOUT */
364 AT91_PIOB 23 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* I2SMCK */
365 };
366 };
367
368 qspi {
369 pinctrl_qspi: qspi {
370 atmel,pins =
371 <AT91_PIOB 19 AT91_PERIPH_A AT91_PINCTRL_SLEWRATE_DIS
372 AT91_PIOB 20 AT91_PERIPH_A AT91_PINCTRL_SLEWRATE_DIS
373 AT91_PIOB 21 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS)
374 AT91_PIOB 22 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS)
375 AT91_PIOB 23 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS)
376 AT91_PIOB 24 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_SLEWRATE_DIS)>;
377 };
378 };
379
380 nand {
381 pinctrl_nand_oe_we: nand-oe-we-0 {
382 atmel,pins =
383 <AT91_PIOD 0 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
384 AT91_PIOD 1 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>;
385 };
386
387 pinctrl_nand_rb: nand-rb-0 {
388 atmel,pins =
389 <AT91_PIOD 5 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
390 };
391
392 pinctrl_nand_cs: nand-cs-0 {
393 atmel,pins =
394 <AT91_PIOD 4 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP>;
395 };
396 };
397
398 ebi {
399 pinctrl_ebi_data_0_7: ebi-data-lsb-0 {
400 atmel,pins =
401 <AT91_PIOD 6 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
402 AT91_PIOD 7 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
403 AT91_PIOD 8 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
404 AT91_PIOD 9 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
405 AT91_PIOD 10 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
406 AT91_PIOD 11 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
407 AT91_PIOD 12 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
408 AT91_PIOD 13 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>;
409 };
410
411 pinctrl_ebi_data_0_15: ebi-data-msb-0 {
412 atmel,pins =
413 <AT91_PIOD 6 AT91_PERIPH_A AT91_PINCTRL_NONE
414 AT91_PIOD 7 AT91_PERIPH_A AT91_PINCTRL_NONE
415 AT91_PIOD 8 AT91_PERIPH_A AT91_PINCTRL_NONE
416 AT91_PIOD 9 AT91_PERIPH_A AT91_PINCTRL_NONE
417 AT91_PIOD 10 AT91_PERIPH_A AT91_PINCTRL_NONE
418 AT91_PIOD 11 AT91_PERIPH_A AT91_PINCTRL_NONE
419 AT91_PIOD 12 AT91_PERIPH_A AT91_PINCTRL_NONE
420 AT91_PIOD 13 AT91_PERIPH_A AT91_PINCTRL_NONE
421 AT91_PIOD 14 AT91_PERIPH_A AT91_PINCTRL_NONE
422 AT91_PIOD 15 AT91_PERIPH_A AT91_PINCTRL_NONE
423 AT91_PIOD 16 AT91_PERIPH_A AT91_PINCTRL_NONE
424 AT91_PIOD 17 AT91_PERIPH_A AT91_PINCTRL_NONE
425 AT91_PIOD 18 AT91_PERIPH_A AT91_PINCTRL_NONE
426 AT91_PIOD 19 AT91_PERIPH_A AT91_PINCTRL_NONE
427 AT91_PIOD 20 AT91_PERIPH_A AT91_PINCTRL_NONE
428 AT91_PIOD 21 AT91_PERIPH_A AT91_PINCTRL_NONE>;
429 };
430
431 pinctrl_ebi_addr_nand: ebi-addr-0 {
432 atmel,pins =
433 <AT91_PIOD 2 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)
434 AT91_PIOD 3 AT91_PERIPH_A (AT91_PINCTRL_NONE | AT91_PINCTRL_SLEWRATE_DIS)>;
435 };
436 };
437
438 flexcom {
439 pinctrl_flx0_default: flx0_twi {
440 atmel,pins =
441 <AT91_PIOA 0 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
442 AT91_PIOA 1 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
443 };
444
445 pinctrl_flx4_default: flx4_spi {
446 atmel,pins =
447 <AT91_PIOA 11 AT91_PERIPH_A AT91_PINCTRL_NONE
448 AT91_PIOA 12 AT91_PERIPH_A AT91_PINCTRL_NONE
449 AT91_PIOA 13 AT91_PERIPH_A AT91_PINCTRL_NONE
450 AT91_PIOA 14 AT91_PERIPH_A AT91_PINCTRL_NONE>;
451 };
452
453 pinctrl_flx5_default: flx_uart {
454 atmel,pins =
455 <AT91_PIOA 7 AT91_PERIPH_C AT91_PINCTRL_NONE
456 AT91_PIOA 8 AT91_PERIPH_B AT91_PINCTRL_NONE
457 AT91_PIOA 21 AT91_PERIPH_B AT91_PINCTRL_NONE
458 AT91_PIOA 22 AT91_PERIPH_B AT91_PINCTRL_NONE>;
459 };
460
461 pinctrl_flx6_default: flx6_twi {
462 atmel,pins =
463 <AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_PULL_UP
464 AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_PULL_UP>;
465 };
466 };
467
468 classd {
469 pinctrl_classd_default: classd {
470 atmel,pins =
471 <AT91_PIOA 24 AT91_PERIPH_C AT91_PINCTRL_PULL_UP
472 AT91_PIOA 25 AT91_PERIPH_C AT91_PINCTRL_PULL_DOWN
473 AT91_PIOA 26 AT91_PERIPH_C AT91_PINCTRL_PULL_UP
474 AT91_PIOA 27 AT91_PERIPH_C AT91_PINCTRL_PULL_DOWN>;
475 };
476 };
477
478 can0 {
479 pinctrl_can0_rx_tx: can0_rx_tx {
480 atmel,pins =
481 <AT91_PIOA 9 AT91_PERIPH_B AT91_PINCTRL_NONE /* CANRX0 */
482 AT91_PIOA 10 AT91_PERIPH_B AT91_PINCTRL_NONE /* CANTX0 */
483 AT91_PIOD 20 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN /* Enable CAN0 mux */
484 AT91_PIOD 21 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN>; /* Enable CAN Transceivers */
485 };
486 };
487
488 can1 {
489 pinctrl_can1_rx_tx: can1_rx_tx {
490 atmel,pins =
491 <AT91_PIOA 6 AT91_PERIPH_B AT91_PINCTRL_NONE /* CANRX1 RXD1 */
492 AT91_PIOA 5 AT91_PERIPH_B AT91_PINCTRL_NONE /* CANTX1 TXD1 */
493 AT91_PIOD 19 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN /* Enable CAN1 mux */
494 AT91_PIOD 21 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_DOWN>; /* Enable CAN Transceivers */
495 };
496 };
497
498 macb0 {
499 pinctrl_macb0_rmii: macb0_rmii-0 {
500 atmel,pins =
501 <AT91_PIOB 0 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB0 periph A */
502 AT91_PIOB 1 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB1 periph A */
503 AT91_PIOB 2 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB2 periph A */
504 AT91_PIOB 3 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB3 periph A */
505 AT91_PIOB 4 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB4 periph A */
506 AT91_PIOB 5 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB5 periph A */
507 AT91_PIOB 6 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB6 periph A */
508 AT91_PIOB 7 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB7 periph A */
509 AT91_PIOB 9 AT91_PERIPH_A AT91_PINCTRL_NONE /* PB9 periph A */
510 AT91_PIOB 10 AT91_PERIPH_A AT91_PINCTRL_NONE>; /* PB10 periph A */
511 };
512 };
513
514 pwm0 {
515 pinctrl_pwm0_0: pwm0_0 {
516 atmel,pins = <AT91_PIOB 11 AT91_PERIPH_B AT91_PINCTRL_NONE>;
517 };
518
519 pinctrl_pwm0_1: pwm0_1 {
520 atmel,pins = <AT91_PIOB 12 AT91_PERIPH_B AT91_PINCTRL_NONE>;
521 };
522
523 pinctrl_pwm0_2: pwm0_2 {
524 atmel,pins = <AT91_PIOB 13 AT91_PERIPH_B AT91_PINCTRL_NONE>;
525 };
526
527 pinctrl_pwm0_3: pwm0_3 {
528 atmel,pins = <AT91_PIOB 14 AT91_PERIPH_B AT91_PINCTRL_NONE>;
529 };
530 };
531
532 sdmmc0 {
533 pinctrl_sdmmc0_default: sdmmc0 {
534 atmel,pins =
535 <AT91_PIOA 17 AT91_PERIPH_A (AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA17 CK periph A with pullup */
536 AT91_PIOA 16 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA16 CMD periph A with pullup */
537 AT91_PIOA 15 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA15 DAT0 periph A */
538 AT91_PIOA 18 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA18 DAT1 periph A with pullup */
539 AT91_PIOA 19 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA19 DAT2 periph A with pullup */
540 AT91_PIOA 20 AT91_PERIPH_A (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)>; /* PA20 DAT3 periph A with pullup */
541 };
542 pinctrl_sdmmc0_cd: sdmmc0_cd {
543 atmel,pins =
544 <AT91_PIOA 23 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
545 };
546 };
547
548 sdmmc1 {
549 pinctrl_sdmmc1_default: sdmmc1 {
550 atmel,pins =
551 <AT91_PIOA 13 AT91_PERIPH_B (AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA13 CK periph B */
552 AT91_PIOA 12 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA12 CMD periph B with pullup */
553 AT91_PIOA 11 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA11 DAT0 periph B with pullup */
554 AT91_PIOA 2 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA2 DAT1 periph B with pullup */
555 AT91_PIOA 3 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI) /* PA3 DAT2 periph B with pullup */
556 AT91_PIOA 4 AT91_PERIPH_B (AT91_PINCTRL_PULL_UP | AT91_PINCTRL_DRIVE_STRENGTH_HI)>; /* PA4 DAT3 periph B with pullup */
557 };
558 };
559
560 gpio_keys {
561 pinctrl_key_gpio_default: pinctrl_key_gpio {
562 atmel,pins = <AT91_PIOD 18 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
563 };
564 };
565
566 usb0 {
567 pinctrl_usba_vbus: usba_vbus {
568 atmel,pins = <AT91_PIOB 16 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
569 };
570 };
571
572 usb1 {
573 pinctrl_usb_default: usb_default {
574 atmel,pins = <AT91_PIOD 15 AT91_PERIPH_GPIO AT91_PINCTRL_NONE
575 AT91_PIOD 16 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
576 };
577 };
578
579 leds {
580 pinctrl_gpio_leds: gpio_leds {
581 atmel,pins = <AT91_PIOB 11 AT91_PERIPH_GPIO AT91_PINCTRL_NONE
582 AT91_PIOB 12 AT91_PERIPH_GPIO AT91_PINCTRL_NONE
583 AT91_PIOB 13 AT91_PERIPH_GPIO AT91_PINCTRL_NONE>;
584 };
585 };
586}; /* pinctrl */
587
588&pwm0 {
589 pinctrl-names = "default";
590 pinctrl-0 = <&pinctrl_pwm0_0 &pinctrl_pwm0_1 &pinctrl_pwm0_2 &pinctrl_pwm0_3>;
591 status = "disabled"; /* Conflict with leds. */
592};
593
594&sdmmc0 {
595 bus-width = <4>;
596 pinctrl-names = "default";
597 pinctrl-0 = <&pinctrl_sdmmc0_default &pinctrl_sdmmc0_cd>;
598 status = "okay";
599 cd-gpios = <&pioA 23 GPIO_ACTIVE_LOW>;
600 disable-wp;
601};
602
603&sdmmc1 {
604 bus-width = <4>;
605 pinctrl-names = "default";
606 pinctrl-0 = <&pinctrl_sdmmc1_default>;
607 no-1-8-v;
608 non-removable;
609 status = "disabled"; /* Conflict with flx4. */
610};
611
612&qspi {
613 pinctrl-names = "default";
614 pinctrl-0 = <&pinctrl_qspi>;
615 status = "okay"; /* Conflict with i2s. */
616
617 flash@0 {
618 #address-cells = <1>;
619 #size-cells = <1>;
620 compatible = "jedec,spi-nor";
621 reg = <0>;
622 spi-max-frequency = <80000000>;
623 spi-tx-bus-width = <4>;
624 spi-rx-bus-width = <4>;
625 m25p,fast-read;
626
627 at91bootstrap@0 {
628 label = "qspi: at91bootstrap";
629 reg = <0x0 0x40000>;
630 };
631
632 bootloader@40000 {
633 label = "qspi: bootloader";
634 reg = <0x40000 0xc0000>;
635 };
636
637 bootloaderenvred@100000 {
638 label = "qspi: bootloader env redundant";
639 reg = <0x100000 0x40000>;
640 };
641
642 bootloaderenv@140000 {
643 label = "qspi: bootloader env";
644 reg = <0x140000 0x40000>;
645 };
646
647 dtb@180000 {
648 label = "qspi: device tree";
649 reg = <0x180000 0x80000>;
650 };
651
652 kernel@200000 {
653 label = "qspi: kernel";
654 reg = <0x200000 0x600000>;
655 };
656 };
657};
658
659&rtt {
660 atmel,rtt-rtc-time-reg = <&gpbr 0x0>;
661 status = "okay";
662};
663
664&shutdown_controller {
665 debounce-delay-us = <976>;
666 status = "okay";
667
668 input@0 {
669 reg = <0>;
670 };
671};
672
673&tcb0 {
674 timer0: timer@0 {
675 compatible = "atmel,tcb-timer";
676 reg = <0>;
677 };
678
679 timer1: timer@1 {
680 compatible = "atmel,tcb-timer";
681 reg = <1>;
682 };
683};
684
685&usb0 {
686 atmel,vbus-gpio = <&pioB 16 GPIO_ACTIVE_HIGH>;
687 pinctrl-names = "default";
688 pinctrl-0 = <&pinctrl_usba_vbus>;
689 status = "okay";
690};
691
692&usb1 {
693 num-ports = <3>;
694 atmel,vbus-gpio = <0
695 &pioD 15 GPIO_ACTIVE_HIGH
696 &pioD 16 GPIO_ACTIVE_HIGH>;
697 pinctrl-names = "default";
698 pinctrl-0 = <&pinctrl_usb_default>;
699 status = "okay";
700};
701
702&usb2 {
703 status = "okay";
704};
705
706&watchdog {
707 status = "okay";
708};
709