xref: /linux/arch/arm/boot/dts/microchip/at91-sama7g5ek.dts (revision 566ab427f827b0256d3e8ce0235d088e6a9c28bd)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 *  at91-sama7g5ek.dts - Device Tree file for SAMA7G5-EK board
4 *
5 *  Copyright (c) 2020 Microchip Technology Inc. and its subsidiaries
6 *
7 *  Author: Eugen Hristev <eugen.hristev@microchip.com>
8 *  Author: Claudiu Beznea <claudiu.beznea@microchip.com>
9 *
10 */
11/dts-v1/;
12#include "sama7g5-pinfunc.h"
13#include "sama7g5.dtsi"
14#include <dt-bindings/mfd/atmel-flexcom.h>
15#include <dt-bindings/input/input.h>
16#include <dt-bindings/pinctrl/at91.h>
17#include <dt-bindings/sound/microchip,pdmc.h>
18
19/ {
20	model = "Microchip SAMA7G5-EK";
21	compatible = "microchip,sama7g5ek", "microchip,sama7g5", "microchip,sama7";
22
23	chosen {
24		bootargs = "rw root=/dev/mmcblk1p2 rootfstype=ext4 rootwait";
25		stdout-path = "serial0:115200n8";
26	};
27
28	aliases {
29		serial0 = &uart3;
30		serial1 = &uart4;
31		serial2 = &uart7;
32		serial3 = &uart0;
33		i2c0 = &i2c1;
34		i2c1 = &i2c8;
35		i2c2 = &i2c9;
36	};
37
38	clocks {
39		slow_xtal {
40			clock-frequency = <32768>;
41		};
42
43		main_xtal {
44			clock-frequency = <24000000>;
45		};
46	};
47
48	gpio-keys {
49		compatible = "gpio-keys";
50
51		pinctrl-names = "default";
52		pinctrl-0 = <&pinctrl_key_gpio_default>;
53
54		button {
55			label = "PB_USER";
56			gpios = <&pioA PIN_PA12 GPIO_ACTIVE_LOW>;
57			linux,code = <KEY_PROG1>;
58			wakeup-source;
59		};
60	};
61
62	leds {
63		compatible = "gpio-leds";
64		pinctrl-names = "default";
65		pinctrl-0 = <&pinctrl_led_gpio_default>;
66		status = "okay"; /* Conflict with pwm. */
67
68		red_led {
69			label = "red";
70			gpios = <&pioA PIN_PB8 GPIO_ACTIVE_HIGH>;
71		};
72
73		green_led {
74			label = "green";
75			gpios = <&pioA PIN_PA13 GPIO_ACTIVE_HIGH>;
76		};
77
78		blue_led {
79			label = "blue";
80			gpios = <&pioA PIN_PD20 GPIO_ACTIVE_HIGH>;
81			linux,default-trigger = "heartbeat";
82		};
83	};
84
85	/* 512 M */
86	memory@60000000 {
87		device_type = "memory";
88		reg = <0x60000000 0x20000000>;
89	};
90
91	reg_5v: regulator-5v {
92		compatible = "regulator-fixed";
93		regulator-name = "5V_MAIN";
94		regulator-min-microvolt = <5000000>;
95		regulator-max-microvolt = <5000000>;
96		regulator-always-on;
97	};
98
99	sound: sound {
100		compatible = "simple-audio-card";
101		simple-audio-card,name = "sama7g5ek audio";
102		#address-cells = <1>;
103		#size-cells = <0>;
104		simple-audio-card,dai-link@0 {
105			reg = <0>;
106			cpu {
107				sound-dai = <&spdiftx>;
108			};
109			codec {
110				sound-dai = <&spdif_out>;
111			};
112		};
113		simple-audio-card,dai-link@1 {
114			reg = <1>;
115			cpu {
116				sound-dai = <&spdifrx>;
117			};
118			codec {
119				sound-dai = <&spdif_in>;
120			};
121		};
122	};
123
124	spdif_in: spdif-in {
125		#sound-dai-cells = <0>;
126		compatible = "linux,spdif-dir";
127	};
128
129	spdif_out: spdif-out {
130		#sound-dai-cells = <0>;
131		compatible = "linux,spdif-dit";
132	};
133};
134
135&adc {
136	vddana-supply = <&vddout25>;
137	vref-supply = <&vddout25>;
138	pinctrl-names = "default";
139	pinctrl-0 = <&pinctrl_mikrobus1_an_default &pinctrl_mikrobus2_an_default>;
140	status = "okay";
141};
142
143&can0 {
144	pinctrl-names = "default";
145	pinctrl-0 = <&pinctrl_can0_default>;
146	status = "okay";
147};
148
149&can1 {
150	pinctrl-names = "default";
151	pinctrl-0 = <&pinctrl_can1_default>;
152	status = "okay";
153};
154
155&cpu0 {
156	cpu-supply = <&vddcpu>;
157};
158
159&qspi0 {
160	pinctrl-names = "default";
161	pinctrl-0 = <&pinctrl_qspi>;
162	status = "okay";
163
164	flash@0 {
165		#address-cells = <1>;
166		#size-cells = <1>;
167		compatible = "jedec,spi-nor";
168		reg = <0>;
169		spi-max-frequency = <133000000>;
170		spi-tx-bus-width = <8>;
171		spi-rx-bus-width = <8>;
172		m25p,fast-read;
173
174		at91bootstrap@0 {
175			label = "ospi: at91bootstrap";
176			reg = <0x0 0x40000>;
177		};
178
179		bootloader@40000 {
180			label = "ospi: bootloader";
181			reg = <0x40000 0xc0000>;
182		};
183
184		bootloaderenvred@100000 {
185			label = "ospi: bootloader env redundant";
186			reg = <0x100000 0x40000>;
187		};
188
189		bootloaderenv@140000 {
190			label = "ospi: bootloader env";
191			reg = <0x140000 0x40000>;
192		};
193
194		dtb@180000 {
195			label = "ospi: device tree";
196			reg = <0x180000 0x80000>;
197		};
198
199		kernel@200000 {
200			label = "ospi: kernel";
201			reg = <0x200000 0x600000>;
202		};
203
204		rootfs@800000 {
205			label = "ospi: rootfs";
206			reg = <0x800000 0x7800000>;
207		};
208
209	};
210};
211
212&dma0 {
213	status = "okay";
214};
215
216&dma1 {
217	status = "okay";
218};
219
220&dma2 {
221	status = "okay";
222};
223
224&flx0 {
225	atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>;
226	status = "disabled";
227
228	uart0: serial@200 {
229		pinctrl-names = "default";
230		pinctrl-0 = <&pinctrl_flx0_default>;
231		status = "disabled";
232	};
233};
234
235&flx1 {
236	atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>;
237	status = "okay";
238
239	i2c1: i2c@600 {
240		pinctrl-names = "default";
241		pinctrl-0 = <&pinctrl_i2c1_default>;
242		i2c-analog-filter;
243		i2c-digital-filter;
244		i2c-digital-filter-width-ns = <35>;
245		status = "okay";
246
247		mcp16502@5b {
248			compatible = "microchip,mcp16502";
249			reg = <0x5b>;
250			lvin-supply = <&reg_5v>;
251			pvin1-supply = <&reg_5v>;
252			pvin2-supply = <&reg_5v>;
253			pvin3-supply = <&reg_5v>;
254			pvin4-supply = <&reg_5v>;
255			status = "okay";
256
257			regulators {
258				vdd_3v3: VDD_IO {
259					regulator-name = "VDD_IO";
260					regulator-min-microvolt = <3300000>;
261					regulator-max-microvolt = <3300000>;
262					regulator-initial-mode = <2>;
263					regulator-allowed-modes = <2>, <4>;
264					regulator-always-on;
265
266					regulator-state-standby {
267						regulator-on-in-suspend;
268						regulator-suspend-microvolt = <3300000>;
269						regulator-mode = <4>;
270					};
271
272					regulator-state-mem {
273						regulator-off-in-suspend;
274						regulator-mode = <4>;
275					};
276				};
277
278				vddioddr: VDD_DDR {
279					regulator-name = "VDD_DDR";
280					regulator-min-microvolt = <1350000>;
281					regulator-max-microvolt = <1350000>;
282					regulator-initial-mode = <2>;
283					regulator-allowed-modes = <2>, <4>;
284					regulator-always-on;
285
286					regulator-state-standby {
287						regulator-on-in-suspend;
288						regulator-suspend-microvolt = <1350000>;
289						regulator-mode = <4>;
290					};
291
292					regulator-state-mem {
293						regulator-on-in-suspend;
294						regulator-suspend-microvolt = <1350000>;
295						regulator-mode = <4>;
296					};
297				};
298
299				vddcore: VDD_CORE {
300					regulator-name = "VDD_CORE";
301					regulator-min-microvolt = <1150000>;
302					regulator-max-microvolt = <1150000>;
303					regulator-initial-mode = <2>;
304					regulator-allowed-modes = <2>, <4>;
305					regulator-always-on;
306
307					regulator-state-standby {
308						regulator-on-in-suspend;
309						regulator-suspend-microvolt = <1150000>;
310						regulator-mode = <4>;
311					};
312
313					regulator-state-mem {
314						regulator-off-in-suspend;
315						regulator-mode = <4>;
316					};
317				};
318
319				vddcpu: VDD_OTHER {
320					regulator-name = "VDD_OTHER";
321					regulator-min-microvolt = <1050000>;
322					regulator-max-microvolt = <1250000>;
323					regulator-initial-mode = <2>;
324					regulator-allowed-modes = <2>, <4>;
325					regulator-ramp-delay = <3125>;
326					regulator-always-on;
327
328					regulator-state-standby {
329						regulator-on-in-suspend;
330						regulator-suspend-microvolt = <1050000>;
331						regulator-mode = <4>;
332					};
333
334					regulator-state-mem {
335						regulator-off-in-suspend;
336						regulator-mode = <4>;
337					};
338				};
339
340				vldo1: LDO1 {
341					regulator-name = "LDO1";
342					regulator-min-microvolt = <1800000>;
343					regulator-max-microvolt = <1800000>;
344					regulator-always-on;
345
346					regulator-state-standby {
347						regulator-suspend-microvolt = <1800000>;
348						regulator-on-in-suspend;
349					};
350
351					regulator-state-mem {
352						regulator-off-in-suspend;
353					};
354				};
355
356				vldo2: LDO2 {
357					regulator-name = "LDO2";
358					regulator-min-microvolt = <1200000>;
359					regulator-max-microvolt = <3700000>;
360
361					regulator-state-standby {
362						regulator-suspend-microvolt = <1800000>;
363						regulator-on-in-suspend;
364					};
365
366					regulator-state-mem {
367						regulator-off-in-suspend;
368					};
369				};
370			};
371		};
372	};
373};
374
375&flx3 {
376	atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>;
377	status = "okay";
378
379	uart3: serial@200 {
380		pinctrl-names = "default";
381		pinctrl-0 = <&pinctrl_flx3_default>;
382		status = "okay";
383	};
384};
385
386&flx4 {
387	atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>;
388	status = "okay";
389
390	uart4: serial@200 {
391		pinctrl-names = "default";
392		pinctrl-0 = <&pinctrl_flx4_default>;
393		status = "okay";
394	};
395};
396
397&flx7 {
398	atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_USART>;
399	status = "okay";
400
401	uart7: serial@200 {
402		pinctrl-names = "default";
403		pinctrl-0 = <&pinctrl_flx7_default>;
404		status = "okay";
405	};
406};
407
408&flx8 {
409	atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>;
410	status = "okay";
411
412	i2c8: i2c@600 {
413		pinctrl-names = "default";
414		pinctrl-0 = <&pinctrl_i2c8_default>;
415		i2c-analog-filter;
416		i2c-digital-filter;
417		i2c-digital-filter-width-ns = <35>;
418		status = "okay";
419
420		eeprom0: eeprom@52 {
421			compatible = "microchip,24aa025e48";
422			reg = <0x52>;
423			size = <256>;
424			pagesize = <16>;
425			vcc-supply = <&vdd_3v3>;
426
427			nvmem-layout {
428				compatible = "fixed-layout";
429				#address-cells = <1>;
430				#size-cells = <1>;
431
432				eeprom0_eui48: eui48@fa {
433					reg = <0xfa 0x6>;
434				};
435			};
436		};
437
438		eeprom1: eeprom@53 {
439			compatible = "microchip,24aa025e48";
440			reg = <0x53>;
441			size = <256>;
442			pagesize = <16>;
443			vcc-supply = <&vdd_3v3>;
444
445			nvmem-layout {
446				compatible = "fixed-layout";
447				#address-cells = <1>;
448				#size-cells = <1>;
449
450				eeprom1_eui48: eui48@fa {
451					reg = <0xfa 0x6>;
452				};
453			};
454		};
455	};
456};
457
458&flx9 {
459	atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>;
460	status = "okay";
461
462	i2c9: i2c@600 {
463		pinctrl-names = "default";
464		pinctrl-0 = <&pinctrl_i2c9_default>;
465		i2c-analog-filter;
466		i2c-digital-filter;
467		i2c-digital-filter-width-ns = <35>;
468		status = "okay";
469	};
470};
471
472&flx11 {
473	atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_SPI>;
474	status = "okay";
475
476	spi11: spi@400 {
477		pinctrl-names = "default";
478		pinctrl-0 = <&pinctrl_mikrobus1_spi &pinctrl_mikrobus1_spi_cs>;
479		status = "okay";
480	};
481};
482
483&gmac0 {
484	#address-cells = <1>;
485	#size-cells = <0>;
486	pinctrl-names = "default";
487	pinctrl-0 = <&pinctrl_gmac0_default
488		     &pinctrl_gmac0_mdio_default
489		     &pinctrl_gmac0_txck_default
490		     &pinctrl_gmac0_phy_irq>;
491	phy-mode = "rgmii-id";
492	nvmem-cells = <&eeprom0_eui48>;
493	nvmem-cell-names = "mac-address";
494	status = "okay";
495
496	ethernet-phy@7 {
497		reg = <0x7>;
498		interrupt-parent = <&pioA>;
499		interrupts = <PIN_PA31 IRQ_TYPE_LEVEL_LOW>;
500	};
501};
502
503&gmac1 {
504	#address-cells = <1>;
505	#size-cells = <0>;
506	pinctrl-names = "default";
507	pinctrl-0 = <&pinctrl_gmac1_default
508		     &pinctrl_gmac1_mdio_default
509		     &pinctrl_gmac1_phy_irq>;
510	phy-mode = "rmii";
511	nvmem-cells = <&eeprom1_eui48>;
512	nvmem-cell-names = "mac-address";
513	status = "okay"; /* Conflict with pdmc0. */
514
515	ethernet-phy@0 {
516		reg = <0x0>;
517		interrupt-parent = <&pioA>;
518		interrupts = <PIN_PA21 IRQ_TYPE_LEVEL_LOW>;
519	};
520};
521
522&i2s0 {
523	pinctrl-names = "default";
524	pinctrl-0 = <&pinctrl_i2s0_default>;
525};
526
527&pdmc0 {
528	#sound-dai-cells = <0>;
529	microchip,mic-pos = <MCHP_PDMC_DS0 MCHP_PDMC_CLK_NEGATIVE>, /* MIC 1 */
530			    <MCHP_PDMC_DS1 MCHP_PDMC_CLK_NEGATIVE>, /* MIC 2 */
531			    <MCHP_PDMC_DS0 MCHP_PDMC_CLK_POSITIVE>, /* MIC 3 */
532			    <MCHP_PDMC_DS1 MCHP_PDMC_CLK_POSITIVE>; /* MIC 4 */
533	status = "disabled"; /* Conflict with gmac1. */
534	pinctrl-names = "default";
535	pinctrl-0 = <&pinctrl_pdmc0_default>;
536};
537
538&pioA {
539
540	pinctrl_can0_default: can0_default {
541		pinmux = <PIN_PD12__CANTX0>,
542			 <PIN_PD13__CANRX0 >;
543		bias-disable;
544	};
545
546	pinctrl_can1_default: can1_default {
547		pinmux = <PIN_PD14__CANTX1>,
548			 <PIN_PD15__CANRX1 >;
549		bias-disable;
550	};
551
552	pinctrl_flx0_default: flx0_default {
553		pinmux = <PIN_PE3__FLEXCOM0_IO0>,
554			 <PIN_PE4__FLEXCOM0_IO1>,
555			 <PIN_PE6__FLEXCOM0_IO3>,
556			 <PIN_PE7__FLEXCOM0_IO4>;
557		bias-disable;
558	};
559
560	pinctrl_flx3_default: flx3_default {
561		pinmux = <PIN_PD16__FLEXCOM3_IO0>,
562			 <PIN_PD17__FLEXCOM3_IO1>;
563		bias-pull-up;
564	};
565
566	pinctrl_flx4_default: flx4_default {
567		pinmux = <PIN_PD18__FLEXCOM4_IO0>,
568			 <PIN_PD19__FLEXCOM4_IO1>;
569		bias-disable;
570	};
571
572	pinctrl_flx7_default: flx7_default {
573		pinmux = <PIN_PC23__FLEXCOM7_IO0>,
574			 <PIN_PC24__FLEXCOM7_IO1>;
575		bias-disable;
576	};
577
578	pinctrl_gmac0_default: gmac0_default {
579		pinmux = <PIN_PA16__G0_TX0>,
580			 <PIN_PA17__G0_TX1>,
581			 <PIN_PA26__G0_TX2>,
582			 <PIN_PA27__G0_TX3>,
583			 <PIN_PA19__G0_RX0>,
584			 <PIN_PA20__G0_RX1>,
585			 <PIN_PA28__G0_RX2>,
586			 <PIN_PA29__G0_RX3>,
587			 <PIN_PA15__G0_TXEN>,
588			 <PIN_PA30__G0_RXCK>,
589			 <PIN_PA18__G0_RXDV>,
590			 <PIN_PA25__G0_125CK>;
591		slew-rate = <0>;
592		bias-disable;
593	};
594
595	pinctrl_gmac0_mdio_default: gmac0_mdio_default {
596		pinmux = <PIN_PA22__G0_MDC>,
597			 <PIN_PA23__G0_MDIO>;
598		bias-disable;
599	};
600
601	pinctrl_gmac0_txck_default: gmac0_txck_default {
602		pinmux = <PIN_PA24__G0_TXCK>;
603		slew-rate = <0>;
604		bias-pull-up;
605	};
606
607	pinctrl_gmac0_phy_irq: gmac0_phy_irq {
608		pinmux = <PIN_PA31__GPIO>;
609		bias-disable;
610	};
611
612	pinctrl_gmac1_default: gmac1_default {
613		pinmux = <PIN_PD30__G1_TXCK>,
614			 <PIN_PD22__G1_TX0>,
615			 <PIN_PD23__G1_TX1>,
616			 <PIN_PD21__G1_TXEN>,
617			 <PIN_PD25__G1_RX0>,
618			 <PIN_PD26__G1_RX1>,
619			 <PIN_PD27__G1_RXER>,
620			 <PIN_PD24__G1_RXDV>;
621		slew-rate = <0>;
622		bias-disable;
623	};
624
625	pinctrl_gmac1_mdio_default: gmac1_mdio_default {
626		pinmux = <PIN_PD28__G1_MDC>,
627			 <PIN_PD29__G1_MDIO>;
628		bias-disable;
629	};
630
631	pinctrl_gmac1_phy_irq: gmac1_phy_irq {
632		pinmux = <PIN_PA21__GPIO>;
633		bias-disable;
634	};
635
636	pinctrl_i2c1_default: i2c1_default {
637		pinmux = <PIN_PC9__FLEXCOM1_IO0>,
638			 <PIN_PC10__FLEXCOM1_IO1>;
639		bias-disable;
640	};
641
642	pinctrl_i2c8_default: i2c8_default {
643		pinmux = <PIN_PC14__FLEXCOM8_IO0>,
644			 <PIN_PC13__FLEXCOM8_IO1>;
645		bias-disable;
646	};
647
648	pinctrl_i2c9_default: i2c9_default {
649		pinmux = <PIN_PC18__FLEXCOM9_IO0>,
650			 <PIN_PC19__FLEXCOM9_IO1>;
651		bias-disable;
652	};
653
654	pinctrl_i2s0_default: i2s0_default {
655		pinmux = <PIN_PB23__I2SMCC0_CK>,
656			 <PIN_PB24__I2SMCC0_WS>,
657			 <PIN_PB25__I2SMCC0_DOUT1>,
658			 <PIN_PB26__I2SMCC0_DOUT0>,
659			 <PIN_PB27__I2SMCC0_MCK>;
660		bias-disable;
661	};
662
663	pinctrl_key_gpio_default: key_gpio_default {
664		pinmux = <PIN_PA12__GPIO>;
665		bias-pull-up;
666	};
667
668	pinctrl_led_gpio_default: led_gpio_default {
669		pinmux = <PIN_PA13__GPIO>,
670			 <PIN_PB8__GPIO>,
671			 <PIN_PD20__GPIO>;
672		bias-pull-up;
673	};
674
675	pinctrl_mikrobus1_an_default: mikrobus1_an_default {
676		pinmux = <PIN_PD0__GPIO>;
677		bias-disable;
678	};
679
680	pinctrl_mikrobus2_an_default: mikrobus2_an_default {
681		pinmux = <PIN_PD1__GPIO>;
682		bias-disable;
683	};
684
685	pinctrl_mikrobus1_pwm2_default: mikrobus1_pwm2_default {
686		pinmux = <PIN_PA13__PWMH2>;
687		bias-disable;
688	};
689
690	pinctrl_mikrobus2_pwm3_default: mikrobus2_pwm3_default {
691		pinmux = <PIN_PD20__PWMH3>;
692		bias-disable;
693	};
694
695	pinctrl_mikrobus1_spi_cs: mikrobus1_spi_cs {
696		pinmux = <PIN_PB6__FLEXCOM11_IO3>;
697		bias-disable;
698	};
699
700	pinctrl_mikrobus1_spi: mikrobus1_spi {
701		pinmux = <PIN_PB3__FLEXCOM11_IO0>,
702			 <PIN_PB4__FLEXCOM11_IO1>,
703			 <PIN_PB5__FLEXCOM11_IO2>;
704		bias-disable;
705	};
706
707	pinctrl_pdmc0_default: pdmc0_default {
708		pinmux = <PIN_PD23__PDMC0_DS0>,
709			 <PIN_PD24__PDMC0_DS1>,
710			 <PIN_PD22__PDMC0_CLK>;
711		bias_disable;
712	};
713
714	pinctrl_qspi: qspi {
715		pinmux = <PIN_PB12__QSPI0_IO0>,
716			 <PIN_PB11__QSPI0_IO1>,
717			 <PIN_PB10__QSPI0_IO2>,
718			 <PIN_PB9__QSPI0_IO3>,
719			 <PIN_PB16__QSPI0_IO4>,
720			 <PIN_PB17__QSPI0_IO5>,
721			 <PIN_PB18__QSPI0_IO6>,
722			 <PIN_PB19__QSPI0_IO7>,
723			 <PIN_PB13__QSPI0_CS>,
724			 <PIN_PB14__QSPI0_SCK>,
725			 <PIN_PB15__QSPI0_SCKN>,
726			 <PIN_PB20__QSPI0_DQS>,
727			 <PIN_PB21__QSPI0_INT>;
728		bias-disable;
729		slew-rate = <0>;
730		atmel,drive-strength = <ATMEL_PIO_DRVSTR_ME>;
731	};
732
733	pinctrl_sdmmc0_default: sdmmc0_default {
734		cmd_data {
735			pinmux = <PIN_PA1__SDMMC0_CMD>,
736				 <PIN_PA3__SDMMC0_DAT0>,
737				 <PIN_PA4__SDMMC0_DAT1>,
738				 <PIN_PA5__SDMMC0_DAT2>,
739				 <PIN_PA6__SDMMC0_DAT3>,
740				 <PIN_PA7__SDMMC0_DAT4>,
741				 <PIN_PA8__SDMMC0_DAT5>,
742				 <PIN_PA9__SDMMC0_DAT6>,
743				 <PIN_PA10__SDMMC0_DAT7>;
744			slew-rate = <0>;
745			bias-pull-up;
746		};
747
748		ck_cd_rstn_vddsel {
749			pinmux = <PIN_PA0__SDMMC0_CK>,
750				 <PIN_PA2__SDMMC0_RSTN>,
751				 <PIN_PA11__SDMMC0_DS>;
752			slew-rate = <0>;
753			bias-pull-up;
754		};
755	};
756
757	pinctrl_sdmmc1_default: sdmmc1_default {
758		cmd_data {
759			pinmux = <PIN_PB29__SDMMC1_CMD>,
760				 <PIN_PB31__SDMMC1_DAT0>,
761				 <PIN_PC0__SDMMC1_DAT1>,
762				 <PIN_PC1__SDMMC1_DAT2>,
763				 <PIN_PC2__SDMMC1_DAT3>;
764			slew-rate = <0>;
765			bias-pull-up;
766		};
767
768		ck_cd_rstn_vddsel {
769			pinmux = <PIN_PB30__SDMMC1_CK>,
770				 <PIN_PB28__SDMMC1_RSTN>,
771				 <PIN_PC5__SDMMC1_1V8SEL>,
772				 <PIN_PC4__SDMMC1_CD>;
773			slew-rate = <0>;
774			bias-pull-up;
775		};
776	};
777
778	pinctrl_sdmmc2_default: sdmmc2_default {
779		cmd_data {
780			pinmux = <PIN_PD3__SDMMC2_CMD>,
781				 <PIN_PD5__SDMMC2_DAT0>,
782				 <PIN_PD6__SDMMC2_DAT1>,
783				 <PIN_PD7__SDMMC2_DAT2>,
784				 <PIN_PD8__SDMMC2_DAT3>;
785			slew-rate = <0>;
786			bias-pull-up;
787		};
788
789		ck {
790			pinmux = <PIN_PD4__SDMMC2_CK>;
791			slew-rate = <0>;
792			bias-pull-up;
793		};
794	};
795
796	pinctrl_spdifrx_default: spdifrx_default {
797		pinmux = <PIN_PB0__SPDIF_RX>;
798		bias-disable;
799	};
800
801	pinctrl_spdiftx_default: spdiftx_default {
802		pinmux = <PIN_PB1__SPDIF_TX>;
803		bias-disable;
804	};
805};
806
807&pwm {
808	pinctrl-names = "default";
809	pinctrl-0 = <&pinctrl_mikrobus1_pwm2_default &pinctrl_mikrobus2_pwm3_default>;
810	status = "disabled"; /* Conflict with leds. */
811};
812
813&rtt {
814	atmel,rtt-rtc-time-reg = <&gpbr 0x0>;
815};
816
817&sdmmc0 {
818	bus-width = <8>;
819	non-removable;
820	sdhci-caps-mask = <0x0 0x00200000>;
821	vmmc-supply = <&vdd_3v3>;
822	vqmmc-supply = <&vldo1>;
823	pinctrl-names = "default";
824	pinctrl-0 = <&pinctrl_sdmmc0_default>;
825	status = "okay";
826};
827
828&sdmmc1 {
829	bus-width = <4>;
830	no-1-8-v;
831	sdhci-caps-mask = <0x0 0x00200000>;
832	vmmc-supply = <&vdd_3v3>;
833	vqmmc-supply = <&vdd_3v3>;
834	pinctrl-names = "default";
835	pinctrl-0 = <&pinctrl_sdmmc1_default>;
836	status = "okay";
837};
838
839&sdmmc2 {
840	bus-width = <4>;
841	no-1-8-v;
842	sdhci-caps-mask = <0x0 0x00200000>;
843	pinctrl-names = "default";
844	pinctrl-0 = <&pinctrl_sdmmc2_default>;
845};
846
847&shdwc {
848	debounce-delay-us = <976>;
849	status = "okay";
850
851	input@0 {
852		reg = <0>;
853	};
854};
855
856&spdifrx {
857	pinctrl-names = "default";
858	pinctrl-0 = <&pinctrl_spdifrx_default>;
859	status = "okay";
860};
861
862&spdiftx {
863	pinctrl-names = "default";
864	pinctrl-0 = <&pinctrl_spdiftx_default>;
865	status = "okay";
866};
867
868&tcb0 {
869	timer0: timer@0 {
870		compatible = "atmel,tcb-timer";
871		reg = <0>;
872	};
873
874	timer1: timer@1 {
875		compatible = "atmel,tcb-timer";
876		reg = <1>;
877	};
878};
879
880&trng {
881	status = "okay";
882};
883
884&vddout25 {
885	vin-supply = <&vdd_3v3>;
886	status = "okay";
887};
888