1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * at91-dvk_su60_somc.dtsi - Device Tree file for the DVK SOM60 base board
4*f126890aSEmmanuel Vadot *
5*f126890aSEmmanuel Vadot *  Copyright (C) 2018 Laird,
6*f126890aSEmmanuel Vadot *		  2018 Ben Whitten <ben.whitten@lairdtech.com>
7*f126890aSEmmanuel Vadot *
8*f126890aSEmmanuel Vadot */
9*f126890aSEmmanuel Vadot
10*f126890aSEmmanuel Vadot/ {
11*f126890aSEmmanuel Vadot	sound {
12*f126890aSEmmanuel Vadot		compatible = "atmel,asoc-wm8904";
13*f126890aSEmmanuel Vadot		pinctrl-names = "default";
14*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_pck2_as_audio_mck>;
15*f126890aSEmmanuel Vadot
16*f126890aSEmmanuel Vadot		atmel,model = "wm8904 @ DVK-SOM60";
17*f126890aSEmmanuel Vadot		atmel,audio-routing =
18*f126890aSEmmanuel Vadot			"Headphone Jack", "HPOUTL",
19*f126890aSEmmanuel Vadot			"Headphone Jack", "HPOUTR",
20*f126890aSEmmanuel Vadot			"IN2L", "Line In Jack",
21*f126890aSEmmanuel Vadot			"IN2R", "Line In Jack",
22*f126890aSEmmanuel Vadot			"Mic", "MICBIAS",
23*f126890aSEmmanuel Vadot			"IN1L", "Mic";
24*f126890aSEmmanuel Vadot
25*f126890aSEmmanuel Vadot		atmel,ssc-controller = <&ssc0>;
26*f126890aSEmmanuel Vadot		atmel,audio-codec = <&wm8904>;
27*f126890aSEmmanuel Vadot
28*f126890aSEmmanuel Vadot		status = "okay";
29*f126890aSEmmanuel Vadot	};
30*f126890aSEmmanuel Vadot};
31*f126890aSEmmanuel Vadot
32*f126890aSEmmanuel Vadot&mmc0 {
33*f126890aSEmmanuel Vadot	status = "okay";
34*f126890aSEmmanuel Vadot
35*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_cd>;
36*f126890aSEmmanuel Vadot	slot@0 {
37*f126890aSEmmanuel Vadot		bus-width = <4>;
38*f126890aSEmmanuel Vadot		cd-gpios = <&pioE 31 GPIO_ACTIVE_HIGH>;
39*f126890aSEmmanuel Vadot		cd-inverted;
40*f126890aSEmmanuel Vadot	};
41*f126890aSEmmanuel Vadot};
42*f126890aSEmmanuel Vadot
43*f126890aSEmmanuel Vadot&spi0 {
44*f126890aSEmmanuel Vadot	status = "okay";
45*f126890aSEmmanuel Vadot
46*f126890aSEmmanuel Vadot	/* spi0.0: 4M Flash Macronix MX25R4035FM1IL0 */
47*f126890aSEmmanuel Vadot	flash@0 {
48*f126890aSEmmanuel Vadot		compatible = "mxicy,mx25u4035", "jedec,spi-nor";
49*f126890aSEmmanuel Vadot		spi-max-frequency = <33000000>;
50*f126890aSEmmanuel Vadot		reg = <0>;
51*f126890aSEmmanuel Vadot	};
52*f126890aSEmmanuel Vadot};
53*f126890aSEmmanuel Vadot
54*f126890aSEmmanuel Vadot&ssc0 {
55*f126890aSEmmanuel Vadot	atmel,clk-from-rk-pin;
56*f126890aSEmmanuel Vadot	status = "okay";
57*f126890aSEmmanuel Vadot};
58*f126890aSEmmanuel Vadot
59*f126890aSEmmanuel Vadot&i2c0 {
60*f126890aSEmmanuel Vadot	status = "okay";
61*f126890aSEmmanuel Vadot
62*f126890aSEmmanuel Vadot	wm8904: wm8904@1a {
63*f126890aSEmmanuel Vadot		compatible = "wlf,wm8904";
64*f126890aSEmmanuel Vadot		reg = <0x1a>;
65*f126890aSEmmanuel Vadot		clocks = <&pmc PMC_TYPE_SYSTEM 10>;
66*f126890aSEmmanuel Vadot		clock-names = "mclk";
67*f126890aSEmmanuel Vadot	};
68*f126890aSEmmanuel Vadot};
69*f126890aSEmmanuel Vadot
70*f126890aSEmmanuel Vadot&i2c1 {
71*f126890aSEmmanuel Vadot	status = "okay";
72*f126890aSEmmanuel Vadot
73*f126890aSEmmanuel Vadot	eeprom@57 {
74*f126890aSEmmanuel Vadot		compatible = "giantec,gt24c32a", "atmel,24c32";
75*f126890aSEmmanuel Vadot		reg = <0x57>;
76*f126890aSEmmanuel Vadot		pagesize = <32>;
77*f126890aSEmmanuel Vadot	};
78*f126890aSEmmanuel Vadot};
79*f126890aSEmmanuel Vadot
80*f126890aSEmmanuel Vadot&usart1 {
81*f126890aSEmmanuel Vadot	status = "okay";
82*f126890aSEmmanuel Vadot};
83*f126890aSEmmanuel Vadot
84*f126890aSEmmanuel Vadot&usart2 {
85*f126890aSEmmanuel Vadot	status = "okay";
86*f126890aSEmmanuel Vadot};
87*f126890aSEmmanuel Vadot
88*f126890aSEmmanuel Vadot&usart3 {
89*f126890aSEmmanuel Vadot	status = "okay";
90*f126890aSEmmanuel Vadot};
91*f126890aSEmmanuel Vadot
92*f126890aSEmmanuel Vadot&uart0 {
93*f126890aSEmmanuel Vadot	status = "okay";
94*f126890aSEmmanuel Vadot};
95*f126890aSEmmanuel Vadot
96*f126890aSEmmanuel Vadot&dbgu {
97*f126890aSEmmanuel Vadot	status = "okay";
98*f126890aSEmmanuel Vadot};
99*f126890aSEmmanuel Vadot
100*f126890aSEmmanuel Vadot&pit {
101*f126890aSEmmanuel Vadot	status = "okay";
102*f126890aSEmmanuel Vadot};
103*f126890aSEmmanuel Vadot
104*f126890aSEmmanuel Vadot&adc0 {
105*f126890aSEmmanuel Vadot	status = "okay";
106*f126890aSEmmanuel Vadot};
107*f126890aSEmmanuel Vadot
108*f126890aSEmmanuel Vadot&can1 {
109*f126890aSEmmanuel Vadot	status = "okay";
110*f126890aSEmmanuel Vadot};
111*f126890aSEmmanuel Vadot
112*f126890aSEmmanuel Vadot&macb0 {
113*f126890aSEmmanuel Vadot	#address-cells = <1>;
114*f126890aSEmmanuel Vadot	#size-cells = <0>;
115*f126890aSEmmanuel Vadot	status = "okay";
116*f126890aSEmmanuel Vadot
117*f126890aSEmmanuel Vadot	ethernet-phy@7 {
118*f126890aSEmmanuel Vadot		reg = <7>;
119*f126890aSEmmanuel Vadot		pinctrl-names = "default";
120*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_geth_int>;
121*f126890aSEmmanuel Vadot		interrupt-parent = <&pioB>;
122*f126890aSEmmanuel Vadot		interrupts = <25 IRQ_TYPE_EDGE_FALLING>;
123*f126890aSEmmanuel Vadot		txen-skew-ps = <800>;
124*f126890aSEmmanuel Vadot		txc-skew-ps = <3000>;
125*f126890aSEmmanuel Vadot		rxdv-skew-ps = <400>;
126*f126890aSEmmanuel Vadot		rxc-skew-ps = <3000>;
127*f126890aSEmmanuel Vadot		rxd0-skew-ps = <400>;
128*f126890aSEmmanuel Vadot		rxd1-skew-ps = <400>;
129*f126890aSEmmanuel Vadot		rxd2-skew-ps = <400>;
130*f126890aSEmmanuel Vadot		rxd3-skew-ps = <400>;
131*f126890aSEmmanuel Vadot	};
132*f126890aSEmmanuel Vadot};
133*f126890aSEmmanuel Vadot
134*f126890aSEmmanuel Vadot&macb1 {
135*f126890aSEmmanuel Vadot	#address-cells = <1>;
136*f126890aSEmmanuel Vadot	#size-cells = <0>;
137*f126890aSEmmanuel Vadot	status = "okay";
138*f126890aSEmmanuel Vadot
139*f126890aSEmmanuel Vadot	ethernet-phy@1 {
140*f126890aSEmmanuel Vadot		reg = <1>;
141*f126890aSEmmanuel Vadot		pinctrl-names = "default";
142*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_eth_int>;
143*f126890aSEmmanuel Vadot		interrupt-parent = <&pioC>;
144*f126890aSEmmanuel Vadot		interrupts = <10 IRQ_TYPE_EDGE_FALLING>;
145*f126890aSEmmanuel Vadot	};
146*f126890aSEmmanuel Vadot};
147*f126890aSEmmanuel Vadot
148*f126890aSEmmanuel Vadot&usb0 {
149*f126890aSEmmanuel Vadot	status = "okay";
150*f126890aSEmmanuel Vadot};
151*f126890aSEmmanuel Vadot
152*f126890aSEmmanuel Vadot&usb1 {
153*f126890aSEmmanuel Vadot	status = "okay";
154*f126890aSEmmanuel Vadot};
155*f126890aSEmmanuel Vadot
156*f126890aSEmmanuel Vadot&usb2 {
157*f126890aSEmmanuel Vadot	status = "okay";
158*f126890aSEmmanuel Vadot};
159*f126890aSEmmanuel Vadot
160