1// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2/*
3 * Author: Arınç ÜNAL <arinc.unal@arinc9.com>
4 */
5
6#include "bcm47094.dtsi"
7#include "bcm5301x-nand-cs0-bch8.dtsi"
8
9/ {
10	chosen {
11		bootargs = "earlycon";
12	};
13
14	memory@0 {
15		device_type = "memory";
16		reg = <0x00000000 0x08000000>,
17		      <0x88000000 0x18000000>;
18	};
19
20	nvram@1c080000 {
21		compatible = "brcm,nvram";
22		reg = <0x1c080000 0x00180000>;
23	};
24
25	leds {
26		compatible = "gpio-leds";
27
28		led-power {
29			label = "white:power";
30			gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>;
31			linux,default-trigger = "default-on";
32		};
33
34		led-wan-red {
35			label = "red:wan";
36			gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>;
37		};
38
39		led-lan {
40			label = "white:lan";
41			gpios = <&chipcommon 21 GPIO_ACTIVE_LOW>;
42		};
43
44		led-usb2 {
45			label = "white:usb2";
46			gpios = <&chipcommon 16 GPIO_ACTIVE_LOW>;
47			trigger-sources = <&ehci_port2>;
48			linux,default-trigger = "usbport";
49		};
50
51		led-usb3 {
52			label = "white:usb3";
53			gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
54			trigger-sources = <&ehci_port1>, <&xhci_port1>;
55			linux,default-trigger = "usbport";
56		};
57
58		led-wps {
59			label = "white:wps";
60			gpios = <&chipcommon 19 GPIO_ACTIVE_LOW>;
61		};
62	};
63
64	gpio-keys {
65		compatible = "gpio-keys";
66
67		button-wps {
68			label = "WPS";
69			linux,code = <KEY_WPS_BUTTON>;
70			gpios = <&chipcommon 20 GPIO_ACTIVE_LOW>;
71		};
72
73		button-reset {
74			label = "Reset";
75			linux,code = <KEY_RESTART>;
76			gpios = <&chipcommon 11 GPIO_ACTIVE_LOW>;
77		};
78
79		button-wifi {
80			label = "Wi-Fi";
81			linux,code = <KEY_RFKILL>;
82			gpios = <&chipcommon 18 GPIO_ACTIVE_LOW>;
83		};
84
85		button-led {
86			label = "Backlight";
87			linux,code = <KEY_BRIGHTNESS_ZERO>;
88			gpios = <&chipcommon 4 GPIO_ACTIVE_LOW>;
89		};
90	};
91};
92
93&srab {
94	compatible = "brcm,bcm53012-srab", "brcm,bcm5301x-srab";
95	status = "okay";
96
97	ports {
98		port@0 {
99			label = "lan4";
100		};
101
102		port@1 {
103			label = "lan3";
104		};
105
106		port@2 {
107			label = "lan2";
108		};
109
110		port@3 {
111			label = "lan1";
112		};
113
114		port@4 {
115			label = "wan";
116		};
117
118		port@5 {
119			label = "cpu";
120		};
121
122		port@7 {
123			label = "cpu";
124		};
125
126		port@8 {
127			label = "cpu";
128		};
129	};
130};
131
132&usb2 {
133	vcc-gpio = <&chipcommon 9 GPIO_ACTIVE_HIGH>;
134};
135
136&usb3_phy {
137	status = "okay";
138};
139
140&nandcs {
141	partitions {
142		compatible = "fixed-partitions";
143		#address-cells = <1>;
144		#size-cells = <1>;
145
146		partition@0 {
147			label = "boot";
148			reg = <0x00000000 0x00080000>;
149			read-only;
150		};
151
152		partition@80000 {
153			label = "nvram";
154			reg = <0x00080000 0x00180000>;
155		};
156
157		partition@200000 {
158			label = "firmware";
159			reg = <0x00200000 0x07e00000>;
160			compatible = "brcm,trx";
161		};
162	};
163};
164