Loading...
Note: File does not exist in v3.1.
1// SPDX-License-Identifier: GPL-2.0
2#include "qcom-ipq8064.dtsi"
3#include <dt-bindings/input/input.h>
4
5/ {
6 model = "MikroTik RB3011UiAS-RM";
7 compatible = "mikrotik,rb3011";
8
9 aliases {
10 serial0 = &gsbi7_serial;
11 ethernet0 = &gmac0;
12 ethernet1 = &gmac3;
13 mdio-gpio0 = &mdio0;
14 mdio-gpio1 = &mdio1;
15 };
16
17 chosen {
18 bootargs = "loglevel=8 console=ttyMSM0,115200";
19 stdout-path = "serial0:115200n8";
20 };
21
22 memory@0 {
23 reg = <0x42000000 0x3e000000>;
24 device_type = "memory";
25 };
26
27 mdio0: mdio@0 {
28 status = "okay";
29 compatible = "virtual,mdio-gpio";
30 gpios = <&qcom_pinmux 1 GPIO_ACTIVE_HIGH>,
31 <&qcom_pinmux 0 GPIO_ACTIVE_HIGH>;
32 #address-cells = <1>;
33 #size-cells = <0>;
34
35 pinctrl-0 = <&mdio0_pins>;
36 pinctrl-names = "default";
37
38 switch0: switch@10 {
39 compatible = "qca,qca8337";
40 #address-cells = <1>;
41 #size-cells = <0>;
42
43 dsa,member = <0 0>;
44
45 pinctrl-0 = <&sw0_reset_pin>;
46 pinctrl-names = "default";
47
48 reset-gpios = <&qcom_pinmux 16 GPIO_ACTIVE_LOW>;
49 reg = <0x10>;
50
51 ports {
52 #address-cells = <1>;
53 #size-cells = <0>;
54
55 switch0cpu: port@0 {
56 reg = <0>;
57 label = "cpu";
58 ethernet = <&gmac0>;
59 phy-mode = "rgmii-id";
60 fixed-link {
61 speed = <1000>;
62 full-duplex;
63 };
64 };
65
66 port@1 {
67 reg = <1>;
68 label = "sw1";
69 };
70
71 port@2 {
72 reg = <2>;
73 label = "sw2";
74 };
75
76 port@3 {
77 reg = <3>;
78 label = "sw3";
79 };
80
81 port@4 {
82 reg = <4>;
83 label = "sw4";
84 };
85
86 port@5 {
87 reg = <5>;
88 label = "sw5";
89 };
90 };
91 };
92 };
93
94 mdio1: mdio@1 {
95 status = "okay";
96 compatible = "virtual,mdio-gpio";
97 gpios = <&qcom_pinmux 11 GPIO_ACTIVE_HIGH>,
98 <&qcom_pinmux 10 GPIO_ACTIVE_HIGH>;
99 #address-cells = <1>;
100 #size-cells = <0>;
101
102 pinctrl-0 = <&mdio1_pins>;
103 pinctrl-names = "default";
104
105 switch1: switch@14 {
106 compatible = "qca,qca8337";
107 #address-cells = <1>;
108 #size-cells = <0>;
109
110 dsa,member = <1 0>;
111
112 pinctrl-0 = <&sw1_reset_pin>;
113 pinctrl-names = "default";
114
115 reset-gpios = <&qcom_pinmux 17 GPIO_ACTIVE_LOW>;
116 reg = <0x10>;
117
118 ports {
119 #address-cells = <1>;
120 #size-cells = <0>;
121
122 switch1cpu: port@0 {
123 reg = <0>;
124 label = "cpu";
125 ethernet = <&gmac3>;
126 phy-mode = "sgmii";
127 fixed-link {
128 speed = <1000>;
129 full-duplex;
130 };
131 };
132
133 port@1 {
134 reg = <1>;
135 label = "sw6";
136 };
137
138 port@2 {
139 reg = <2>;
140 label = "sw7";
141 };
142
143 port@3 {
144 reg = <3>;
145 label = "sw8";
146 };
147
148 port@4 {
149 reg = <4>;
150 label = "sw9";
151 };
152
153 port@5 {
154 reg = <5>;
155 label = "sw10";
156 };
157 };
158 };
159 };
160
161 soc {
162 gsbi5: gsbi@1a200000 {
163 qcom,mode = <GSBI_PROT_SPI>;
164 status = "okay";
165
166 spi4: spi@1a280000 {
167 status = "okay";
168 spi-max-frequency = <50000000>;
169
170 pinctrl-0 = <&spi_pins>;
171 pinctrl-names = "default";
172
173 cs-gpios = <&qcom_pinmux 20 GPIO_ACTIVE_HIGH>;
174
175 norflash: s25fl016k@0 {
176 compatible = "jedec,spi-nor";
177 #address-cells = <1>;
178 #size-cells = <1>;
179 spi-max-frequency = <50000000>;
180 reg = <0>;
181
182 partition@0 {
183 label = "RouterBoot";
184 reg = <0x0 0x40000>;
185 };
186 };
187 };
188 };
189
190 gpio_keys {
191 compatible = "gpio-keys";
192 pinctrl-0 = <&buttons_pins>;
193 pinctrl-names = "default";
194
195 button@1 {
196 label = "reset";
197 linux,code = <KEY_RESTART>;
198 gpios = <&qcom_pinmux 66 GPIO_ACTIVE_LOW>;
199 linux,input-type = <1>;
200 debounce-interval = <60>;
201 };
202 };
203
204 leds {
205 compatible = "gpio-leds";
206 pinctrl-0 = <&leds_pins>;
207 pinctrl-names = "default";
208
209 led@7 {
210 label = "rb3011:green:user";
211 gpios = <&qcom_pinmux 33 GPIO_ACTIVE_HIGH>;
212 default-state = "off";
213 };
214 };
215
216 };
217};
218
219&gmac0 {
220 status = "okay";
221
222 phy-mode = "rgmii";
223 qcom,id = <0>;
224 phy-handle = <&switch0cpu>;
225
226 fixed-link {
227 speed = <1000>;
228 full-duplex;
229 };
230};
231
232&gmac3 {
233 status = "okay";
234
235 phy-mode = "sgmii";
236 qcom,id = <3>;
237 phy-handle = <&switch1cpu>;
238
239 fixed-link {
240 speed = <1000>;
241 full-duplex;
242 };
243};
244
245&gsbi7 {
246 status = "okay";
247 qcom,mode = <GSBI_PROT_I2C_UART>;
248};
249
250&gsbi7_serial {
251 status = "okay";
252};
253
254&qcom_pinmux {
255 buttons_pins: buttons_pins {
256 mux {
257 pins = "gpio66";
258 drive-strength = <16>;
259 bias-disable;
260 };
261 };
262
263 leds_pins: leds_pins {
264 mux {
265 pins = "gpio33";
266 drive-strength = <16>;
267 bias-disable;
268 };
269 };
270
271 mdio0_pins: mdio0_pins {
272 mux {
273 pins = "gpio0", "gpio1";
274 function = "gpio";
275 drive-strength = <8>;
276 bias-disable;
277 };
278 };
279
280 mdio1_pins: mdio1_pins {
281 mux {
282 pins = "gpio10", "gpio11";
283 function = "gpio";
284 drive-strength = <8>;
285 bias-disable;
286 };
287 };
288
289 sw0_reset_pin: sw0_reset_pin {
290 mux {
291 pins = "gpio16";
292 drive-strength = <16>;
293 function = "gpio";
294 bias-disable;
295 input-disable;
296 };
297 };
298
299 sw1_reset_pin: sw1_reset_pin {
300 mux {
301 pins = "gpio17";
302 drive-strength = <16>;
303 function = "gpio";
304 bias-disable;
305 input-disable;
306 };
307 };
308};