1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
5 #define STRINGIZE(s) #s
6 #define LAN_LABEL(p, s) STRINGIZE(p ## s)
7 #define SWITCH_PORT_LABEL(n) LAN_LABEL(lan, n)
9 #define INTERNAL_PHY(n) \
10 phy##n: ethernet-phy@##n { \
12 compatible = "ethernet-phy-ieee802.3-c22"; \
16 #define EXTERNAL_PHY(n) \
17 phy##n: ethernet-phy@##n { \
19 compatible = "ethernet-phy-ieee802.3-c22"; \
22 #define EXTERNAL_SFP_PHY(n) \
23 phy##n: ethernet-phy@##n { \
24 compatible = "ethernet-phy-ieee802.3-c22"; \
30 #define SWITCH_PORT(n, s, m) \
33 label = SWITCH_PORT_LABEL(s) ; \
34 phy-handle = <&phy##n>; \
38 #define SWITCH_SFP_PORT(n, s, m) \
41 label = SWITCH_PORT_LABEL(s) ; \
42 phy-handle = <&phy##n>; \
54 compatible = "realtek,rtl838x-soc";
59 frequency = <500000000>;
62 compatible = "mips,mips4KEc";
68 bootargs = "console=ttyS0,115200";
72 compatible = "fixed-clock";
74 clock-frequency = <200000000>;
78 compatible = "mti,cpu-interrupt-controller";
80 #interrupt-cells = <1>;
85 compatible = "simple-bus";
88 ranges = <0x0 0x18000000 0x10000>;
91 compatible = "realtek,rtl-intc";
94 #interrupt-cells = <1>;
97 <31 &cpuintc 2>, /* UART0 */
98 <30 &cpuintc 1>, /* UART1 */
99 <29 &cpuintc 5>, /* TC0 */
100 <28 &cpuintc 1>, /* TC1 */
101 <27 &cpuintc 1>, /* OCPTO */
102 <26 &cpuintc 1>, /* HLXTO */
103 <25 &cpuintc 1>, /* SLXTO */
104 <24 &cpuintc 4>, /* NIC */
105 <23 &cpuintc 4>, /* GPIO_ABCD */
106 <22 &cpuintc 4>, /* GPIO_EFGH */
107 <21 &cpuintc 4>, /* RTC */
108 <20 &cpuintc 3>, /* SWCORE */
109 <19 &cpuintc 4>, /* WDT_IP1 */
110 <18 &cpuintc 5>; /* WDT_IP2 */
114 compatible = "realtek,rtl8380-spi";
115 reg = <0x1200 0x100>;
117 #address-cells = <1>;
122 compatible = "ns16550a";
123 reg = <0x2000 0x100>;
127 interrupt-parent = <&intc>;
137 pinctrl-names = "default";
138 pinctrl-0 = <&enable_uart1>;
140 compatible = "ns16550a";
141 reg = <0x2100 0x100>;
145 interrupt-parent = <&intc>;
156 gpio0: gpio-controller@3500 {
157 compatible = "realtek,rtl8380-gpio", "realtek,otto-gpio";
162 interrupt-parent = <&intc>;
167 gpio1: rtl8231-gpio {
168 compatible = "realtek,rtl8231-gpio";
170 indirect-access-bus-id = <0>;
176 pinmux: pinmux@1b001000 {
177 compatible = "pinctrl-single";
178 reg = <0x1b001000 0x4>;
180 pinctrl-single,bit-per-mux;
181 pinctrl-single,register-width = <32>;
182 pinctrl-single,function-mask = <0x1>;
183 #pinctrl-cells = <2>;
185 enable_uart1: pinmux_enable_uart1 {
186 pinctrl-single,bits = <0x0 0x10 0x10>;
191 pinmux_led: pinmux@1b00a000 {
192 compatible = "pinctrl-single";
193 reg = <0x1b00a000 0x4>;
195 pinctrl-single,bit-per-mux;
196 pinctrl-single,register-width = <32>;
197 pinctrl-single,function-mask = <0x1>;
198 #pinctrl-cells = <2>;
201 pinmux_disable_sys_led: disable_sys_led {
202 pinctrl-single,bits = <0x0 0x0 0x8000>;
206 ethernet0: ethernet@1b00a300 {
207 compatible = "realtek,rtl838x-eth";
208 reg = <0x1b00a300 0x100>;
209 interrupt-parent = <&intc>;
211 #interrupt-cells = <1>;
212 phy-mode = "internal";
220 switch0: switch@1b000000 {
221 compatible = "realtek,rtl83xx-switch";
223 interrupt-parent = <&intc>;