1*724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2*724ba675SRob Herring/*
3*724ba675SRob Herring * Device Tree file for the Linksys WRT3200ACM (Rango)
4*724ba675SRob Herring *
5*724ba675SRob Herring * Copyright (C) 2016 Imre Kaloz <kaloz@openwrt.org>
6*724ba675SRob Herring */
7*724ba675SRob Herring
8*724ba675SRob Herring/dts-v1/;
9*724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
10*724ba675SRob Herring#include <dt-bindings/input/input.h>
11*724ba675SRob Herring#include "armada-385-linksys.dtsi"
12*724ba675SRob Herring
13*724ba675SRob Herring/ {
14*724ba675SRob Herring	model = "Linksys WRT3200ACM";
15*724ba675SRob Herring	compatible = "linksys,rango", "linksys,armada385", "marvell,armada385",
16*724ba675SRob Herring		     "marvell,armada380";
17*724ba675SRob Herring};
18*724ba675SRob Herring
19*724ba675SRob Herring&expander0 {
20*724ba675SRob Herring	wan_amber@0 {
21*724ba675SRob Herring		label = "rango:amber:wan";
22*724ba675SRob Herring		reg = <0x0>;
23*724ba675SRob Herring	};
24*724ba675SRob Herring
25*724ba675SRob Herring	wan_white@1 {
26*724ba675SRob Herring		label = "rango:white:wan";
27*724ba675SRob Herring		reg = <0x1>;
28*724ba675SRob Herring	};
29*724ba675SRob Herring
30*724ba675SRob Herring	usb2@5 {
31*724ba675SRob Herring		label = "rango:white:usb2";
32*724ba675SRob Herring		reg = <0x5>;
33*724ba675SRob Herring	};
34*724ba675SRob Herring
35*724ba675SRob Herring	usb3_1@6 {
36*724ba675SRob Herring		label = "rango:white:usb3_1";
37*724ba675SRob Herring		reg = <0x6>;
38*724ba675SRob Herring	};
39*724ba675SRob Herring
40*724ba675SRob Herring	usb3_2@7 {
41*724ba675SRob Herring		label = "rango:white:usb3_2";
42*724ba675SRob Herring		reg = <0x7>;
43*724ba675SRob Herring	};
44*724ba675SRob Herring
45*724ba675SRob Herring	wps_white@8 {
46*724ba675SRob Herring		label = "rango:white:wps";
47*724ba675SRob Herring		reg = <0x8>;
48*724ba675SRob Herring	};
49*724ba675SRob Herring
50*724ba675SRob Herring	wps_amber@9 {
51*724ba675SRob Herring		label = "rango:amber:wps";
52*724ba675SRob Herring		reg = <0x9>;
53*724ba675SRob Herring	};
54*724ba675SRob Herring};
55*724ba675SRob Herring
56*724ba675SRob Herring&gpio_leds {
57*724ba675SRob Herring	led-power {
58*724ba675SRob Herring		gpios = <&gpio1 24 GPIO_ACTIVE_HIGH>;
59*724ba675SRob Herring		label = "rango:white:power";
60*724ba675SRob Herring	};
61*724ba675SRob Herring
62*724ba675SRob Herring	led-sata {
63*724ba675SRob Herring		gpios = <&gpio0 21 GPIO_ACTIVE_LOW>;
64*724ba675SRob Herring		label = "rango:white:sata";
65*724ba675SRob Herring	};
66*724ba675SRob Herring
67*724ba675SRob Herring	led-wlan_2g {
68*724ba675SRob Herring		gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
69*724ba675SRob Herring		label = "rango:white:wlan_2g";
70*724ba675SRob Herring	};
71*724ba675SRob Herring
72*724ba675SRob Herring	led-wlan_5g {
73*724ba675SRob Herring		gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
74*724ba675SRob Herring		label = "rango:white:wlan_5g";
75*724ba675SRob Herring	};
76*724ba675SRob Herring};
77*724ba675SRob Herring
78*724ba675SRob Herring&gpio_leds_pins {
79*724ba675SRob Herring	marvell,pins = "mpp21", "mpp45", "mpp46", "mpp56";
80*724ba675SRob Herring};
81*724ba675SRob Herring
82*724ba675SRob Herring&nand {
83*724ba675SRob Herring	/* AMD/Spansion S34ML02G2 256MiB, OEM Layout */
84*724ba675SRob Herring	partitions {
85*724ba675SRob Herring		compatible = "fixed-partitions";
86*724ba675SRob Herring		#address-cells = <1>;
87*724ba675SRob Herring		#size-cells = <1>;
88*724ba675SRob Herring
89*724ba675SRob Herring		partition@0 {
90*724ba675SRob Herring			label = "u-boot";
91*724ba675SRob Herring			reg = <0x0000000 0x200000>;  /* 2MiB */
92*724ba675SRob Herring			read-only;
93*724ba675SRob Herring		};
94*724ba675SRob Herring
95*724ba675SRob Herring		partition@200000 {
96*724ba675SRob Herring			label = "u_env";
97*724ba675SRob Herring			reg = <0x200000 0x20000>;    /* 128KiB */
98*724ba675SRob Herring		};
99*724ba675SRob Herring
100*724ba675SRob Herring		partition@220000 {
101*724ba675SRob Herring			label = "s_env";
102*724ba675SRob Herring			reg = <0x220000 0x40000>;    /* 256KiB */
103*724ba675SRob Herring		};
104*724ba675SRob Herring
105*724ba675SRob Herring		partition@7e0000 {
106*724ba675SRob Herring			label = "devinfo";
107*724ba675SRob Herring			reg = <0x7e0000 0x40000>;   /* 256KiB */
108*724ba675SRob Herring			read-only;
109*724ba675SRob Herring		};
110*724ba675SRob Herring
111*724ba675SRob Herring		partition@820000 {
112*724ba675SRob Herring			label = "sysdiag";
113*724ba675SRob Herring			reg = <0x820000 0x1e0000>;   /* 1920KiB */
114*724ba675SRob Herring			read-only;
115*724ba675SRob Herring		};
116*724ba675SRob Herring
117*724ba675SRob Herring		/* kernel1 overlaps with rootfs1 by design */
118*724ba675SRob Herring		partition@a00000 {
119*724ba675SRob Herring			label = "kernel1";
120*724ba675SRob Herring			reg = <0xa00000 0x5000000>;  /* 80MiB */
121*724ba675SRob Herring		};
122*724ba675SRob Herring
123*724ba675SRob Herring		partition@1000000 {
124*724ba675SRob Herring			label = "rootfs1";
125*724ba675SRob Herring			reg = <0x1000000 0x4a00000>;  /* 74MiB */
126*724ba675SRob Herring		};
127*724ba675SRob Herring
128*724ba675SRob Herring		/* kernel2 overlaps with rootfs2 by design */
129*724ba675SRob Herring		partition@5a00000 {
130*724ba675SRob Herring			label = "kernel2";
131*724ba675SRob Herring			reg = <0x5a00000 0x5000000>; /* 80MiB */
132*724ba675SRob Herring		};
133*724ba675SRob Herring
134*724ba675SRob Herring		partition@6000000 {
135*724ba675SRob Herring			label = "rootfs2";
136*724ba675SRob Herring			reg = <0x6000000 0x4a00000>; /* 74MiB */
137*724ba675SRob Herring		};
138*724ba675SRob Herring
139*724ba675SRob Herring		/*
140*724ba675SRob Herring		 * 86MiB, last MiB is for the BBT, not writable
141*724ba675SRob Herring		 */
142*724ba675SRob Herring		partition@aa00000 {
143*724ba675SRob Herring			label = "syscfg";
144*724ba675SRob Herring			reg = <0xaa00000 0x5600000>;
145*724ba675SRob Herring		};
146*724ba675SRob Herring
147*724ba675SRob Herring		/*
148*724ba675SRob Herring		 * Unused area between "s_env" and "devinfo".
149*724ba675SRob Herring		 * Moved here because otherwise the renumbered
150*724ba675SRob Herring		 * partitions would break the bootloader
151*724ba675SRob Herring		 * supplied bootargs
152*724ba675SRob Herring		 */
153*724ba675SRob Herring		partition@180000 {
154*724ba675SRob Herring			label = "unused_area";
155*724ba675SRob Herring			reg = <0x260000 0x5c0000>;   /* 5.75MiB */
156*724ba675SRob Herring		};
157*724ba675SRob Herring	};
158*724ba675SRob Herring};
159*724ba675SRob Herring
160*724ba675SRob Herring&sdhci {
161*724ba675SRob Herring	pinctrl-names = "default";
162*724ba675SRob Herring	pinctrl-0 = <&sdhci_pins>;
163*724ba675SRob Herring	no-1-8-v;
164*724ba675SRob Herring	non-removable;
165*724ba675SRob Herring	wp-inverted;
166*724ba675SRob Herring	bus-width = <8>;
167*724ba675SRob Herring	status = "okay";
168*724ba675SRob Herring};
169*724ba675SRob Herring
170*724ba675SRob Herring&usb3_1_vbus {
171*724ba675SRob Herring	gpio = <&gpio1 12 GPIO_ACTIVE_HIGH>;
172*724ba675SRob Herring};
173*724ba675SRob Herring
174*724ba675SRob Herring&usb3_1_vbus_pins {
175*724ba675SRob Herring	marvell,pins = "mpp44";
176*724ba675SRob Herring};
177