ipq806x: move common pinmux nodes to SoC DTSI
[openwrt/staging/chunkeey.git] / target / linux / ipq806x / files-5.4 / arch / arm / boot / dts / qcom-ipq8064-vr2600v.dts
1 #include "qcom-ipq8064-v2.0.dtsi"
2
3 #include <dt-bindings/input/input.h>
4
5 / {
6 model = "TP-Link Archer VR2600v";
7 compatible = "tplink,vr2600v", "qcom,ipq8064";
8
9 memory@0 {
10 reg = <0x42000000 0x1e000000>;
11 device_type = "memory";
12 };
13
14 reserved-memory {
15 #address-cells = <1>;
16 #size-cells = <1>;
17 ranges;
18 rsvd@41200000 {
19 reg = <0x41200000 0x300000>;
20 no-map;
21 };
22 };
23
24 aliases {
25 serial0 = &gsbi4_serial;
26 mdio-gpio0 = &mdio0;
27
28 led-boot = &power;
29 led-failsafe = &general;
30 led-running = &power;
31 led-upgrade = &general;
32 };
33
34 chosen {
35 stdout-path = "serial0:115200n8";
36 };
37
38 keys {
39 compatible = "gpio-keys";
40 pinctrl-0 = <&button_pins>;
41 pinctrl-names = "default";
42
43 wifi {
44 label = "wifi";
45 gpios = <&qcom_pinmux 54 GPIO_ACTIVE_LOW>;
46 linux,code = <KEY_RFKILL>;
47 };
48
49 reset {
50 label = "reset";
51 gpios = <&qcom_pinmux 64 GPIO_ACTIVE_LOW>;
52 linux,code = <KEY_RESTART>;
53 };
54
55 wps {
56 label = "wps";
57 gpios = <&qcom_pinmux 65 GPIO_ACTIVE_LOW>;
58 linux,code = <KEY_WPS_BUTTON>;
59 };
60
61 dect {
62 label = "dect";
63 gpios = <&qcom_pinmux 67 GPIO_ACTIVE_LOW>;
64 linux,code = <KEY_PHONE>;
65 };
66
67 ledswitch {
68 label = "ledswitch";
69 gpios = <&qcom_pinmux 68 GPIO_ACTIVE_LOW>;
70 linux,code = <KEY_LIGHTS_TOGGLE>;
71 };
72 };
73
74 leds {
75 compatible = "gpio-leds";
76 pinctrl-0 = <&led_pins>;
77 pinctrl-names = "default";
78
79 dsl {
80 label = "vr2600v:white:dsl";
81 gpios = <&qcom_pinmux 7 GPIO_ACTIVE_HIGH>;
82 };
83
84 usb {
85 label = "vr2600v:white:usb";
86 gpios = <&qcom_pinmux 8 GPIO_ACTIVE_HIGH>;
87 };
88
89 lan {
90 label = "vr2600v:white:lan";
91 gpios = <&qcom_pinmux 9 GPIO_ACTIVE_HIGH>;
92 };
93
94 wlan2g {
95 label = "vr2600v:white:wlan2g";
96 gpios = <&qcom_pinmux 16 GPIO_ACTIVE_HIGH>;
97 };
98
99 wlan5g {
100 label = "vr2600v:white:wlan5g";
101 gpios = <&qcom_pinmux 17 GPIO_ACTIVE_HIGH>;
102 };
103
104 power: power {
105 label = "vr2600v:white:power";
106 gpios = <&qcom_pinmux 26 GPIO_ACTIVE_HIGH>;
107 default-state = "keep";
108 };
109
110 phone {
111 label = "vr2600v:white:phone";
112 gpios = <&qcom_pinmux 53 GPIO_ACTIVE_HIGH>;
113 };
114
115 wan {
116 label = "vr2600v:white:wan";
117 gpios = <&qcom_pinmux 56 GPIO_ACTIVE_HIGH>;
118 };
119
120 general: general {
121 label = "vr2600v:white:general";
122 gpios = <&qcom_pinmux 66 GPIO_ACTIVE_HIGH>;
123 };
124 };
125 };
126
127 &qcom_pinmux {
128 led_pins: led_pins {
129 mux {
130 pins = "gpio7", "gpio8", "gpio9", "gpio16", "gpio17",
131 "gpio26", "gpio53", "gpio56", "gpio66";
132 function = "gpio";
133 drive-strength = <2>;
134 bias-pull-up;
135 };
136 };
137
138 button_pins: button_pins {
139 mux {
140 pins = "gpio54", "gpio64", "gpio65", "gpio67", "gpio68";
141 function = "gpio";
142 drive-strength = <2>;
143 bias-pull-up;
144 };
145 };
146
147 spi_pins: spi_pins {
148 mux {
149 pins = "gpio18", "gpio19", "gpio21";
150 function = "gsbi5";
151 bias-pull-down;
152 };
153
154 data {
155 pins = "gpio18", "gpio19";
156 drive-strength = <10>;
157 };
158
159 cs {
160 pins = "gpio20";
161 drive-strength = <10>;
162 bias-pull-up;
163 };
164
165 clk {
166 pins = "gpio21";
167 drive-strength = <12>;
168 };
169 };
170 };
171
172 &gsbi4 {
173 qcom,mode = <GSBI_PROT_I2C_UART>;
174 status = "okay";
175 serial@16340000 {
176 status = "okay";
177 };
178 /*
179 * The i2c device on gsbi4 should not be enabled.
180 * On ipq806x designs gsbi4 i2c is meant for exclusive
181 * RPM usage. Turning this on in kernel manifests as
182 * i2c failure for the RPM.
183 */
184 };
185
186 &gsbi5 {
187 qcom,mode = <GSBI_PROT_SPI>;
188 status = "okay";
189
190 spi4: spi@1a280000 {
191 status = "okay";
192
193 pinctrl-0 = <&spi_pins>;
194 pinctrl-names = "default";
195
196 cs-gpios = <&qcom_pinmux 20 GPIO_ACTIVE_HIGH>;
197
198 W25Q128@0 {
199 compatible = "jedec,spi-nor";
200 #address-cells = <1>;
201 #size-cells = <1>;
202 spi-max-frequency = <50000000>;
203 reg = <0>;
204
205 SBL1@0 {
206 label = "SBL1";
207 reg = <0x0 0x20000>;
208 read-only;
209 };
210
211 MIBIB@20000 {
212 label = "MIBIB";
213 reg = <0x20000 0x20000>;
214 read-only;
215 };
216
217 SBL2@40000 {
218 label = "SBL2";
219 reg = <0x40000 0x40000>;
220 read-only;
221 };
222
223 SBL3@80000 {
224 label = "SBL3";
225 reg = <0x80000 0x80000>;
226 read-only;
227 };
228
229 DDRCONFIG@100000 {
230 label = "DDRCONFIG";
231 reg = <0x100000 0x10000>;
232 read-only;
233 };
234
235 SSD@110000 {
236 label = "SSD";
237 reg = <0x110000 0x10000>;
238 read-only;
239 };
240
241 TZ@120000 {
242 label = "TZ";
243 reg = <0x120000 0x80000>;
244 read-only;
245 };
246
247 RPM@1a0000 {
248 label = "RPM";
249 reg = <0x1a0000 0x80000>;
250 read-only;
251 };
252
253 APPSBL@220000 {
254 label = "APPSBL";
255 reg = <0x220000 0x80000>;
256 read-only;
257 };
258
259 APPSBLENV@2a0000 {
260 label = "APPSBLENV";
261 reg = <0x2a0000 0x40000>;
262 read-only;
263 };
264
265 OLDART@2e0000 {
266 label = "OLDART";
267 reg = <0x2e0000 0x40000>;
268 read-only;
269 };
270
271 kernel@320000 {
272 label = "kernel";
273 reg = <0x320000 0x300000>;
274 };
275
276 rootfs@620000 {
277 label = "rootfs";
278 reg = <0x620000 0x960000>;
279 };
280
281 defaultmac: default-mac@0xfaf100 {
282 label = "default-mac";
283 reg = <0xfaf100 0x00200>;
284 read-only;
285 };
286
287 ART@fc0000 {
288 label = "ART";
289 reg = <0xfc0000 0x40000>;
290 read-only;
291 };
292 };
293 };
294 };
295
296 &usb3_0 {
297 status = "okay";
298 };
299
300 &usb3_1 {
301 status = "okay";
302 };
303
304 &pcie0 {
305 status = "okay";
306 };
307
308 &pcie1 {
309 status = "okay";
310 force_gen1 = <1>;
311 };
312
313 &mdio0 {
314 status = "okay";
315
316 pinctrl-0 = <&mdio0_pins>;
317 pinctrl-names = "default";
318
319 phy0: ethernet-phy@0 {
320 reg = <0>;
321 qca,ar8327-initvals = <
322 0x00004 0x7600000 /* PAD0_MODE */
323 0x00008 0x1000000 /* PAD5_MODE */
324 0x0000c 0x80 /* PAD6_MODE */
325 0x000e4 0x6a545 /* MAC_POWER_SEL */
326 0x000e0 0xc74164de /* SGMII_CTRL */
327 0x0007c 0x4e /* PORT0_STATUS */
328 0x00094 0x4e /* PORT6_STATUS */
329 >;
330 };
331
332 phy4: ethernet-phy@4 {
333 reg = <4>;
334 };
335 };
336
337 &gmac1 {
338 status = "okay";
339 phy-mode = "rgmii";
340 qcom,id = <1>;
341
342 pinctrl-0 = <&rgmii2_pins>;
343 pinctrl-names = "default";
344
345 mtd-mac-address = <&defaultmac 0>;
346 mtd-mac-address-increment = <1>;
347
348 fixed-link {
349 speed = <1000>;
350 full-duplex;
351 };
352 };
353
354 &gmac2 {
355 status = "okay";
356 phy-mode = "sgmii";
357 qcom,id = <2>;
358
359 mtd-mac-address = <&defaultmac 0>;
360
361 fixed-link {
362 speed = <1000>;
363 full-duplex;
364 };
365 };
366
367 &adm_dma {
368 status = "okay";
369 };