xref: /freebsd/sys/contrib/device-tree/src/arm/nxp/ls/ls1021a-twr.dts (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Copyright 2013-2014 Freescale Semiconductor, Inc.
4*f126890aSEmmanuel Vadot * Copyright 2018 NXP
5*f126890aSEmmanuel Vadot */
6*f126890aSEmmanuel Vadot
7*f126890aSEmmanuel Vadot/dts-v1/;
8*f126890aSEmmanuel Vadot#include "ls1021a.dtsi"
9*f126890aSEmmanuel Vadot
10*f126890aSEmmanuel Vadot/ {
11*f126890aSEmmanuel Vadot	model = "LS1021A TWR Board";
12*f126890aSEmmanuel Vadot	compatible = "fsl,ls1021a-twr", "fsl,ls1021a";
13*f126890aSEmmanuel Vadot
14*f126890aSEmmanuel Vadot	aliases {
15*f126890aSEmmanuel Vadot		enet2_rgmii_phy = &rgmii_phy1;
16*f126890aSEmmanuel Vadot		enet0_sgmii_phy = &sgmii_phy2;
17*f126890aSEmmanuel Vadot		enet1_sgmii_phy = &sgmii_phy0;
18*f126890aSEmmanuel Vadot	};
19*f126890aSEmmanuel Vadot
20*f126890aSEmmanuel Vadot	sys_mclk: clock-mclk {
21*f126890aSEmmanuel Vadot		compatible = "fixed-clock";
22*f126890aSEmmanuel Vadot		#clock-cells = <0>;
23*f126890aSEmmanuel Vadot		clock-frequency = <24576000>;
24*f126890aSEmmanuel Vadot	};
25*f126890aSEmmanuel Vadot
26*f126890aSEmmanuel Vadot	reg_3p3v: regulator {
27*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
28*f126890aSEmmanuel Vadot		regulator-name = "3P3V";
29*f126890aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
30*f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
31*f126890aSEmmanuel Vadot		regulator-always-on;
32*f126890aSEmmanuel Vadot	};
33*f126890aSEmmanuel Vadot
34*f126890aSEmmanuel Vadot	sound {
35*f126890aSEmmanuel Vadot		compatible = "simple-audio-card";
36*f126890aSEmmanuel Vadot		simple-audio-card,format = "i2s";
37*f126890aSEmmanuel Vadot		simple-audio-card,widgets =
38*f126890aSEmmanuel Vadot			"Microphone", "Microphone Jack",
39*f126890aSEmmanuel Vadot			"Headphone", "Headphone Jack",
40*f126890aSEmmanuel Vadot			"Speaker", "Speaker Ext",
41*f126890aSEmmanuel Vadot			"Line", "Line In Jack";
42*f126890aSEmmanuel Vadot		simple-audio-card,routing =
43*f126890aSEmmanuel Vadot			"MIC_IN", "Microphone Jack",
44*f126890aSEmmanuel Vadot			"Microphone Jack", "Mic Bias",
45*f126890aSEmmanuel Vadot			"LINE_IN", "Line In Jack",
46*f126890aSEmmanuel Vadot			"Headphone Jack", "HP_OUT",
47*f126890aSEmmanuel Vadot			"Speaker Ext", "LINE_OUT";
48*f126890aSEmmanuel Vadot
49*f126890aSEmmanuel Vadot		simple-audio-card,cpu {
50*f126890aSEmmanuel Vadot			sound-dai = <&sai1>;
51*f126890aSEmmanuel Vadot			frame-master;
52*f126890aSEmmanuel Vadot			bitclock-master;
53*f126890aSEmmanuel Vadot		};
54*f126890aSEmmanuel Vadot
55*f126890aSEmmanuel Vadot		simple-audio-card,codec {
56*f126890aSEmmanuel Vadot			sound-dai = <&codec>;
57*f126890aSEmmanuel Vadot			frame-master;
58*f126890aSEmmanuel Vadot			bitclock-master;
59*f126890aSEmmanuel Vadot		};
60*f126890aSEmmanuel Vadot	};
61*f126890aSEmmanuel Vadot
62*f126890aSEmmanuel Vadot	panel: panel {
63*f126890aSEmmanuel Vadot		compatible = "nec,nl4827hc19-05b";
64*f126890aSEmmanuel Vadot
65*f126890aSEmmanuel Vadot		port {
66*f126890aSEmmanuel Vadot			panel_in: endpoint {
67*f126890aSEmmanuel Vadot				remote-endpoint = <&dcu_out>;
68*f126890aSEmmanuel Vadot			};
69*f126890aSEmmanuel Vadot		};
70*f126890aSEmmanuel Vadot	};
71*f126890aSEmmanuel Vadot};
72*f126890aSEmmanuel Vadot
73*f126890aSEmmanuel Vadot&dcu {
74*f126890aSEmmanuel Vadot	status = "okay";
75*f126890aSEmmanuel Vadot
76*f126890aSEmmanuel Vadot	port {
77*f126890aSEmmanuel Vadot		dcu_out: endpoint {
78*f126890aSEmmanuel Vadot			remote-endpoint = <&panel_in>;
79*f126890aSEmmanuel Vadot		};
80*f126890aSEmmanuel Vadot	};
81*f126890aSEmmanuel Vadot};
82*f126890aSEmmanuel Vadot
83*f126890aSEmmanuel Vadot&dspi1 {
84*f126890aSEmmanuel Vadot	bus-num = <0>;
85*f126890aSEmmanuel Vadot	status = "okay";
86*f126890aSEmmanuel Vadot
87*f126890aSEmmanuel Vadot	dspiflash: s25fl064k@0 {
88*f126890aSEmmanuel Vadot		#address-cells = <1>;
89*f126890aSEmmanuel Vadot		#size-cells = <1>;
90*f126890aSEmmanuel Vadot		compatible = "spansion,s25fl064k";
91*f126890aSEmmanuel Vadot		spi-max-frequency = <16000000>;
92*f126890aSEmmanuel Vadot		spi-cpol;
93*f126890aSEmmanuel Vadot		spi-cpha;
94*f126890aSEmmanuel Vadot		reg = <0>;
95*f126890aSEmmanuel Vadot	};
96*f126890aSEmmanuel Vadot};
97*f126890aSEmmanuel Vadot
98*f126890aSEmmanuel Vadot&enet0 {
99*f126890aSEmmanuel Vadot	tbi-handle = <&tbi0>;
100*f126890aSEmmanuel Vadot	phy-handle = <&sgmii_phy2>;
101*f126890aSEmmanuel Vadot	phy-connection-type = "sgmii";
102*f126890aSEmmanuel Vadot	status = "okay";
103*f126890aSEmmanuel Vadot};
104*f126890aSEmmanuel Vadot
105*f126890aSEmmanuel Vadot&enet1 {
106*f126890aSEmmanuel Vadot	tbi-handle = <&tbi1>;
107*f126890aSEmmanuel Vadot	phy-handle = <&sgmii_phy0>;
108*f126890aSEmmanuel Vadot	phy-connection-type = "sgmii";
109*f126890aSEmmanuel Vadot	status = "okay";
110*f126890aSEmmanuel Vadot};
111*f126890aSEmmanuel Vadot
112*f126890aSEmmanuel Vadot&enet2 {
113*f126890aSEmmanuel Vadot	phy-handle = <&rgmii_phy1>;
114*f126890aSEmmanuel Vadot	phy-connection-type = "rgmii-id";
115*f126890aSEmmanuel Vadot	status = "okay";
116*f126890aSEmmanuel Vadot};
117*f126890aSEmmanuel Vadot
118*f126890aSEmmanuel Vadot&i2c0 {
119*f126890aSEmmanuel Vadot	status = "okay";
120*f126890aSEmmanuel Vadot
121*f126890aSEmmanuel Vadot	ina220@40 {
122*f126890aSEmmanuel Vadot		compatible = "ti,ina220";
123*f126890aSEmmanuel Vadot		reg = <0x40>;
124*f126890aSEmmanuel Vadot		shunt-resistor = <1000>;
125*f126890aSEmmanuel Vadot	};
126*f126890aSEmmanuel Vadot
127*f126890aSEmmanuel Vadot	ina220@41 {
128*f126890aSEmmanuel Vadot		compatible = "ti,ina220";
129*f126890aSEmmanuel Vadot		reg = <0x41>;
130*f126890aSEmmanuel Vadot		shunt-resistor = <1000>;
131*f126890aSEmmanuel Vadot	};
132*f126890aSEmmanuel Vadot
133*f126890aSEmmanuel Vadot};
134*f126890aSEmmanuel Vadot
135*f126890aSEmmanuel Vadot&i2c1 {
136*f126890aSEmmanuel Vadot	status = "okay";
137*f126890aSEmmanuel Vadot	codec: sgtl5000@a {
138*f126890aSEmmanuel Vadot		#sound-dai-cells = <0>;
139*f126890aSEmmanuel Vadot		compatible = "fsl,sgtl5000";
140*f126890aSEmmanuel Vadot		reg = <0x0a>;
141*f126890aSEmmanuel Vadot		VDDA-supply = <&reg_3p3v>;
142*f126890aSEmmanuel Vadot		VDDIO-supply = <&reg_3p3v>;
143*f126890aSEmmanuel Vadot		clocks = <&sys_mclk>;
144*f126890aSEmmanuel Vadot	};
145*f126890aSEmmanuel Vadot};
146*f126890aSEmmanuel Vadot
147*f126890aSEmmanuel Vadot&ifc {
148*f126890aSEmmanuel Vadot	#address-cells = <2>;
149*f126890aSEmmanuel Vadot	#size-cells = <1>;
150*f126890aSEmmanuel Vadot	/* NOR Flash on board */
151*f126890aSEmmanuel Vadot	ranges = <0x0 0x0 0x0 0x60000000 0x08000000>;
152*f126890aSEmmanuel Vadot	status = "okay";
153*f126890aSEmmanuel Vadot
154*f126890aSEmmanuel Vadot	nor@0,0 {
155*f126890aSEmmanuel Vadot		#address-cells = <1>;
156*f126890aSEmmanuel Vadot		#size-cells = <1>;
157*f126890aSEmmanuel Vadot		compatible = "cfi-flash";
158*f126890aSEmmanuel Vadot		reg = <0x0 0x0 0x8000000>;
159*f126890aSEmmanuel Vadot		big-endian;
160*f126890aSEmmanuel Vadot		bank-width = <2>;
161*f126890aSEmmanuel Vadot		device-width = <1>;
162*f126890aSEmmanuel Vadot	};
163*f126890aSEmmanuel Vadot};
164*f126890aSEmmanuel Vadot
165*f126890aSEmmanuel Vadot&lpuart0 {
166*f126890aSEmmanuel Vadot	status = "okay";
167*f126890aSEmmanuel Vadot};
168*f126890aSEmmanuel Vadot
169*f126890aSEmmanuel Vadot&mdio0 {
170*f126890aSEmmanuel Vadot	sgmii_phy0: ethernet-phy@0 {
171*f126890aSEmmanuel Vadot		reg = <0x0>;
172*f126890aSEmmanuel Vadot	};
173*f126890aSEmmanuel Vadot	rgmii_phy1: ethernet-phy@1 {
174*f126890aSEmmanuel Vadot		reg = <0x1>;
175*f126890aSEmmanuel Vadot	};
176*f126890aSEmmanuel Vadot	sgmii_phy2: ethernet-phy@2 {
177*f126890aSEmmanuel Vadot		reg = <0x2>;
178*f126890aSEmmanuel Vadot	};
179*f126890aSEmmanuel Vadot	tbi0: tbi-phy@1f {
180*f126890aSEmmanuel Vadot		reg = <0x1f>;
181*f126890aSEmmanuel Vadot		device_type = "tbi-phy";
182*f126890aSEmmanuel Vadot	};
183*f126890aSEmmanuel Vadot};
184*f126890aSEmmanuel Vadot
185*f126890aSEmmanuel Vadot&mdio1 {
186*f126890aSEmmanuel Vadot	tbi1: tbi-phy@1f {
187*f126890aSEmmanuel Vadot		reg = <0x1f>;
188*f126890aSEmmanuel Vadot		device_type = "tbi-phy";
189*f126890aSEmmanuel Vadot	};
190*f126890aSEmmanuel Vadot};
191*f126890aSEmmanuel Vadot
192*f126890aSEmmanuel Vadot&esdhc {
193*f126890aSEmmanuel Vadot        status = "okay";
194*f126890aSEmmanuel Vadot};
195*f126890aSEmmanuel Vadot
196*f126890aSEmmanuel Vadot&qspi {
197*f126890aSEmmanuel Vadot	status = "okay";
198*f126890aSEmmanuel Vadot
199*f126890aSEmmanuel Vadot	n25q128a130: flash@0 {
200*f126890aSEmmanuel Vadot		compatible = "jedec,spi-nor";
201*f126890aSEmmanuel Vadot		#address-cells = <1>;
202*f126890aSEmmanuel Vadot		#size-cells = <1>;
203*f126890aSEmmanuel Vadot		spi-max-frequency = <50000000>;
204*f126890aSEmmanuel Vadot		reg = <0>;
205*f126890aSEmmanuel Vadot		spi-rx-bus-width = <4>;
206*f126890aSEmmanuel Vadot		spi-tx-bus-width = <4>;
207*f126890aSEmmanuel Vadot	};
208*f126890aSEmmanuel Vadot};
209*f126890aSEmmanuel Vadot
210*f126890aSEmmanuel Vadot&sai1 {
211*f126890aSEmmanuel Vadot	status = "okay";
212*f126890aSEmmanuel Vadot};
213*f126890aSEmmanuel Vadot
214*f126890aSEmmanuel Vadot&sata {
215*f126890aSEmmanuel Vadot	status = "okay";
216*f126890aSEmmanuel Vadot};
217*f126890aSEmmanuel Vadot
218*f126890aSEmmanuel Vadot&uart0 {
219*f126890aSEmmanuel Vadot	status = "okay";
220*f126890aSEmmanuel Vadot};
221*f126890aSEmmanuel Vadot
222*f126890aSEmmanuel Vadot&uart1 {
223*f126890aSEmmanuel Vadot	status = "okay";
224*f126890aSEmmanuel Vadot};
225*f126890aSEmmanuel Vadot
226*f126890aSEmmanuel Vadot&can0 {
227*f126890aSEmmanuel Vadot	status = "okay";
228*f126890aSEmmanuel Vadot};
229*f126890aSEmmanuel Vadot
230*f126890aSEmmanuel Vadot&can1 {
231*f126890aSEmmanuel Vadot	status = "okay";
232*f126890aSEmmanuel Vadot};
233*f126890aSEmmanuel Vadot
234*f126890aSEmmanuel Vadot&can2 {
235*f126890aSEmmanuel Vadot	status = "disabled";
236*f126890aSEmmanuel Vadot};
237*f126890aSEmmanuel Vadot
238*f126890aSEmmanuel Vadot&can3 {
239*f126890aSEmmanuel Vadot	status = "disabled";
240*f126890aSEmmanuel Vadot};
241