Linux Audio

Check our new training course

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