Loading...
1/*
2 * Copyright (C) 2017 Moxa Inc. - https://www.moxa.com/
3 *
4 * Author: Harry YJ Jhou (周亞諄) <harryyj.jhou@moxa.com>
5 * Jimmy Chen (陳永達) <jimmy.chen@moxa.com>
6 * SZ Lin (林上智) <sz.lin@moxa.com>
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11 */
12
13/dts-v1/;
14
15#include <dt-bindings/gpio/gpio.h>
16#include <dt-bindings/input/input.h>
17#include "ls1021a.dtsi"
18
19/ {
20 model = "Moxa UC-8410A";
21
22 aliases {
23 enet0_rgmii_phy = &rgmii_phy0;
24 enet1_rgmii_phy = &rgmii_phy1;
25 enet2_rgmii_phy = &rgmii_phy2;
26 };
27
28 sys_mclk: clock-mclk {
29 compatible = "fixed-clock";
30 #clock-cells = <0>;
31 clock-frequency = <24576000>;
32 };
33
34 reg_3p3v: regulator-3p3v {
35 compatible = "regulator-fixed";
36 regulator-name = "3P3V";
37 regulator-min-microvolt = <3300000>;
38 regulator-max-microvolt = <3300000>;
39 regulator-always-on;
40 };
41
42 leds {
43 compatible = "gpio-leds";
44
45 cel-pwr {
46 label = "UC8410A:CEL-PWR";
47 gpios = <&gpio3 27 GPIO_ACTIVE_LOW>;
48 default-state = "off";
49 };
50
51 cel-reset {
52 label = "UC8410A:CEL-RESET";
53 gpios = <&gpio3 28 GPIO_ACTIVE_LOW>;
54 default-state = "off";
55 };
56
57 str-led {
58 label = "UC8410A:RED:PROG";
59 gpios = <&gpio0 16 GPIO_ACTIVE_HIGH>;
60 linux,default-trigger = "mmc0";
61 };
62
63 sw-ready {
64 label = "UC8410A:GREEN:SWRDY";
65 gpios = <&gpio0 18 GPIO_ACTIVE_HIGH>;
66 default-state = "on";
67 };
68
69 beeper {
70 label = "UC8410A:BEEP";
71 gpios = <&gpio0 20 GPIO_ACTIVE_HIGH>;
72 default-state = "off";
73 };
74
75 prog-led0 {
76 label = "UC8410A:GREEN:PROG2";
77 gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>;
78 default-state = "off";
79 };
80
81 prog-led1 {
82 label = "UC8410A:GREEN:PROG1";
83 gpios = <&gpio3 15 GPIO_ACTIVE_HIGH>;
84 default-state = "off";
85 };
86
87 prog-led2 {
88 label = "UC8410A:GREEN:PROG0";
89 gpios = <&gpio3 16 GPIO_ACTIVE_HIGH>;
90 default-state = "off";
91 };
92
93 wifi-signal0 {
94 label = "UC8410A:GREEN:CEL2";
95 gpios = <&gpio3 17 GPIO_ACTIVE_HIGH>;
96 default-state = "off";
97 };
98
99 wifi-signal1 {
100 label = "UC8410A:GREEN:CEL1";
101 gpios = <&gpio3 18 GPIO_ACTIVE_HIGH>;
102 default-state = "off";
103 };
104
105 wifi-signal2 {
106 label = "UC8410A:GREEN:CEL0";
107 gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>;
108 default-state = "off";
109 };
110
111 cpu-diag-red {
112 label = "UC8410A:RED:DIA";
113 gpios = <&gpio3 20 GPIO_ACTIVE_HIGH>;
114 default-state = "off";
115 };
116
117 cpu-diag-green {
118 label = "UC8410A:GREEN:DIA";
119 gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>;
120 default-state = "off";
121 };
122
123 cpu-diag-yellow {
124 label = "UC8410A:YELLOW:DIA";
125 gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>;
126 default-state = "off";
127 };
128 };
129
130 gpio-keys {
131 compatible = "gpio-keys";
132
133 pushbtn-key {
134 label = "push button key";
135 gpios = <&gpio1 21 GPIO_ACTIVE_LOW>;
136 linux,code = <BTN_MISC>;
137 default-state = "on";
138 };
139 };
140};
141
142&enet0 {
143 phy-handle = <&rgmii_phy0>;
144 phy-connection-type = "rgmii-id";
145 status = "okay";
146};
147
148&enet1 {
149 phy-handle = <&rgmii_phy1>;
150 phy-connection-type = "rgmii-id";
151 status = "okay";
152};
153
154&enet2 {
155 phy-handle = <&rgmii_phy2>;
156 phy-connection-type = "rgmii-id";
157 status = "okay";
158};
159
160&i2c0 {
161 clock-frequency = <100000>;
162 status = "okay";
163
164 tpm@20 {
165 compatible = "infineon,slb9635tt";
166 reg = <0x20>;
167 };
168
169 rtc@68 {
170 compatible = "dallas,ds1374";
171 reg = <0x68>;
172 };
173};
174
175&lpuart0 {
176 status = "okay";
177};
178
179&mdio0 {
180 rgmii_phy0: ethernet-phy@0 {
181 compatible = "marvell,88e1118";
182 reg = <0x0>;
183 marvell,reg-init =
184 <3 0x11 0 0x4415>, /* Reg 3,17 */
185 <3 0x10 0 0x77>; /* Reg 3,16 */
186 };
187
188 rgmii_phy1: ethernet-phy@1 {
189 compatible = "marvell,88e1118";
190 reg = <0x1>;
191 marvell,reg-init =
192 <3 0x11 0 0x4415>, /* Reg 3,17 */
193 <3 0x10 0 0x77>; /* Reg 3,16 */
194 };
195
196 rgmii_phy2: ethernet-phy@2 {
197 compatible = "marvell,88e1118";
198 reg = <0x2>;
199 marvell,reg-init =
200 <3 0x11 0 0x4415>, /* Reg 3,17 */
201 <3 0x10 0 0x77>; /* Reg 3,16 */
202 };
203};
204
205&qspi {
206 bus-num = <0>;
207 fsl,spi-num-chipselects = <2>;
208 fsl,spi-flash-chipselects = <0>;
209 fsl,qspi-has-second-chip;
210 status = "okay";
211
212 flash: flash@0 {
213 compatible = "spansion,s25fl064l", "spansion,s25fl164k";
214 #address-cells = <1>;
215 #size-cells = <1>;
216 spi-max-frequency = <20000000>;
217 reg = <0>;
218
219 partitions@0 {
220 label = "U-Boot";
221 reg = <0x0 0x180000>;
222 };
223
224 partitions@180000 {
225 label = "U-Boot Env";
226 reg = <0x180000 0x680000>;
227 };
228 };
229};
230
231&sata {
232 status = "okay";
233};
234
235&uart0 {
236 status = "okay";
237};
238
239&uart1 {
240 status = "okay";
241};
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Copyright (C) 2017 Moxa Inc. - https://www.moxa.com/
4 *
5 * Author: Harry YJ Jhou (周亞諄) <harryyj.jhou@moxa.com>
6 * Jimmy Chen (陳永達) <jimmy.chen@moxa.com>
7 * SZ Lin (林上智) <sz.lin@moxa.com>
8 */
9
10/dts-v1/;
11
12#include <dt-bindings/gpio/gpio.h>
13#include <dt-bindings/input/input.h>
14#include "ls1021a.dtsi"
15
16/ {
17 model = "Moxa UC-8410A";
18 compatible = "fsl,ls1021a-moxa-uc-8410a", "fsl,ls1021a";
19
20 aliases {
21 enet0_rgmii_phy = &rgmii_phy0;
22 enet1_rgmii_phy = &rgmii_phy1;
23 enet2_rgmii_phy = &rgmii_phy2;
24 };
25
26 sys_mclk: clock-mclk {
27 compatible = "fixed-clock";
28 #clock-cells = <0>;
29 clock-frequency = <24576000>;
30 };
31
32 reg_3p3v: regulator-3p3v {
33 compatible = "regulator-fixed";
34 regulator-name = "3P3V";
35 regulator-min-microvolt = <3300000>;
36 regulator-max-microvolt = <3300000>;
37 regulator-always-on;
38 };
39
40 leds {
41 compatible = "gpio-leds";
42
43 cel-pwr {
44 label = "UC8410A:CEL-PWR";
45 gpios = <&gpio3 27 GPIO_ACTIVE_LOW>;
46 default-state = "off";
47 };
48
49 cel-reset {
50 label = "UC8410A:CEL-RESET";
51 gpios = <&gpio3 28 GPIO_ACTIVE_LOW>;
52 default-state = "off";
53 };
54
55 str-led {
56 label = "UC8410A:RED:PROG";
57 gpios = <&gpio0 16 GPIO_ACTIVE_HIGH>;
58 linux,default-trigger = "mmc0";
59 };
60
61 sw-ready {
62 label = "UC8410A:GREEN:SWRDY";
63 gpios = <&gpio0 18 GPIO_ACTIVE_HIGH>;
64 default-state = "on";
65 };
66
67 beeper {
68 label = "UC8410A:BEEP";
69 gpios = <&gpio0 20 GPIO_ACTIVE_HIGH>;
70 default-state = "off";
71 };
72
73 prog-led0 {
74 label = "UC8410A:GREEN:PROG2";
75 gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>;
76 default-state = "off";
77 };
78
79 prog-led1 {
80 label = "UC8410A:GREEN:PROG1";
81 gpios = <&gpio3 15 GPIO_ACTIVE_HIGH>;
82 default-state = "off";
83 };
84
85 prog-led2 {
86 label = "UC8410A:GREEN:PROG0";
87 gpios = <&gpio3 16 GPIO_ACTIVE_HIGH>;
88 default-state = "off";
89 };
90
91 wifi-signal0 {
92 label = "UC8410A:GREEN:CEL2";
93 gpios = <&gpio3 17 GPIO_ACTIVE_HIGH>;
94 default-state = "off";
95 };
96
97 wifi-signal1 {
98 label = "UC8410A:GREEN:CEL1";
99 gpios = <&gpio3 18 GPIO_ACTIVE_HIGH>;
100 default-state = "off";
101 };
102
103 wifi-signal2 {
104 label = "UC8410A:GREEN:CEL0";
105 gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>;
106 default-state = "off";
107 };
108
109 cpu-diag-red {
110 label = "UC8410A:RED:DIA";
111 gpios = <&gpio3 20 GPIO_ACTIVE_HIGH>;
112 default-state = "off";
113 };
114
115 cpu-diag-green {
116 label = "UC8410A:GREEN:DIA";
117 gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>;
118 default-state = "off";
119 };
120
121 cpu-diag-yellow {
122 label = "UC8410A:YELLOW:DIA";
123 gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>;
124 default-state = "off";
125 };
126 };
127
128 gpio-keys {
129 compatible = "gpio-keys";
130
131 pushbtn-key {
132 label = "push button key";
133 gpios = <&gpio1 21 GPIO_ACTIVE_LOW>;
134 linux,code = <BTN_MISC>;
135 default-state = "on";
136 };
137 };
138};
139
140&enet0 {
141 phy-handle = <&rgmii_phy0>;
142 phy-connection-type = "rgmii-id";
143 status = "okay";
144};
145
146&enet1 {
147 phy-handle = <&rgmii_phy1>;
148 phy-connection-type = "rgmii-id";
149 status = "okay";
150};
151
152&enet2 {
153 phy-handle = <&rgmii_phy2>;
154 phy-connection-type = "rgmii-id";
155 status = "okay";
156};
157
158&i2c0 {
159 clock-frequency = <100000>;
160 status = "okay";
161
162 tpm@20 {
163 compatible = "infineon,slb9635tt";
164 reg = <0x20>;
165 };
166
167 rtc@68 {
168 compatible = "dallas,ds1374";
169 reg = <0x68>;
170 };
171};
172
173&lpuart0 {
174 status = "okay";
175};
176
177&mdio0 {
178 rgmii_phy0: ethernet-phy@0 {
179 compatible = "marvell,88e1118";
180 reg = <0x0>;
181 marvell,reg-init =
182 <3 0x11 0 0x4415>, /* Reg 3,17 */
183 <3 0x10 0 0x77>; /* Reg 3,16 */
184 };
185
186 rgmii_phy1: ethernet-phy@1 {
187 compatible = "marvell,88e1118";
188 reg = <0x1>;
189 marvell,reg-init =
190 <3 0x11 0 0x4415>, /* Reg 3,17 */
191 <3 0x10 0 0x77>; /* Reg 3,16 */
192 };
193
194 rgmii_phy2: ethernet-phy@2 {
195 compatible = "marvell,88e1118";
196 reg = <0x2>;
197 marvell,reg-init =
198 <3 0x11 0 0x4415>, /* Reg 3,17 */
199 <3 0x10 0 0x77>; /* Reg 3,16 */
200 };
201};
202
203&qspi {
204 status = "okay";
205
206 flash: flash@0 {
207 compatible = "spansion,s25fl064l", "spansion,s25fl164k";
208 #address-cells = <1>;
209 #size-cells = <1>;
210 spi-max-frequency = <20000000>;
211 spi-rx-bus-width = <4>;
212 spi-tx-bus-width = <4>;
213 reg = <0>;
214
215 partitions@0 {
216 label = "U-Boot";
217 reg = <0x0 0x180000>;
218 };
219
220 partitions@180000 {
221 label = "U-Boot Env";
222 reg = <0x180000 0x680000>;
223 };
224 };
225};
226
227&sata {
228 status = "okay";
229};
230
231&uart0 {
232 status = "okay";
233};
234
235&uart1 {
236 status = "okay";
237};