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