ipq806x: convert mtd-mac-address to nvmem implementation
[openwrt/openwrt.git] / target / linux / lantiq / files / arch / mips / boot / dts / lantiq / vr9_arcadyan_vgv7519.dtsi
1 #include "vr9.dtsi"
2
3 #include <dt-bindings/input/input.h>
4 #include <dt-bindings/mips/lantiq_rcu_gphy.h>
5
6 / {
7 compatible = "arcadyan,vgv7519", "lantiq,xway", "lantiq,vr9";
8
9 chosen {
10 bootargs = "console=ttyLTQ0,115200 mem=62M vpe1_load_addr=0x83e00000 vpe1_mem=2M maxvpes=1 maxtcs=1 nosmp";
11 };
12
13 aliases {
14 led-boot = &power_green;
15 led-failsafe = &power_red;
16 led-running = &power_green;
17 led-upgrade = &power_green;
18
19 led-dsl = &broadband_green;
20 led-internet = &internet_green;
21 led-wifi = &wireless_green;
22 };
23
24 memory@0 {
25 device_type = "memory";
26 reg = <0x0 0x4000000>;
27 };
28
29 keys {
30 compatible = "gpio-keys-polled";
31 poll-interval = <100>;
32 reset {
33 label = "reset";
34 gpios = <&gpio 9 GPIO_ACTIVE_LOW>;
35 linux,code = <KEY_RESTART>;
36 };
37 eco {
38 label = "eco";
39 gpios = <&gpio 41 GPIO_ACTIVE_LOW>;
40 linux,code = <BTN_0>;
41 };
42 rfkill {
43 label = "rfkill";
44 gpios = <&gpio 45 GPIO_ACTIVE_LOW>;
45 linux,code = <KEY_RFKILL>;
46 };
47 wps {
48 label = "wps";
49 gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
50 linux,code = <KEY_WPS_BUTTON>;
51 };
52 };
53
54 leds {
55 compatible = "gpio-leds";
56
57 eco {
58 label = "blue:eco";
59 gpios = <&stp 2 GPIO_ACTIVE_LOW>;
60 };
61 wps_red {
62 label = "red:wps";
63 gpios = <&stp 3 GPIO_ACTIVE_LOW>;
64 };
65 wps_green {
66 label = "green:wps";
67 gpios = <&stp 4 GPIO_ACTIVE_LOW>;
68 };
69 upgrade {
70 label = "blue:upgrade";
71 gpios = <&stp 5 GPIO_ACTIVE_LOW>;
72 };
73 tv {
74 label = "green:tv";
75 gpios = <&stp 6 GPIO_ACTIVE_LOW>;
76 };
77 internet_green: internet_green {
78 label = "green:internet";
79 gpios = <&stp 7 GPIO_ACTIVE_LOW>;
80 };
81 internet_red {
82 label = "red:internet";
83 gpios = <&stp 8 GPIO_ACTIVE_LOW>;
84 };
85 broadband_red {
86 label = "red:broadband";
87 gpios = <&stp 9 GPIO_ACTIVE_LOW>;
88 };
89 broadband_green: broadband_green {
90 label = "green:broadband";
91 gpios = <&stp 10 GPIO_ACTIVE_LOW>;
92 };
93 voice {
94 label = "green:voice";
95 gpios = <&stp 11 GPIO_ACTIVE_LOW>;
96 };
97 wireless_red {
98 label = "red:wireless";
99 gpios = <&stp 12 GPIO_ACTIVE_LOW>;
100 };
101 wireless_green: wireless_green {
102 label = "green:wireless";
103 gpios = <&stp 13 GPIO_ACTIVE_LOW>;
104 };
105 power_green: power2 {
106 label = "green:power";
107 gpios = <&stp 14 GPIO_ACTIVE_LOW>;
108 default-state = "keep";
109 };
110 power_red: power {
111 label = "red:power";
112 gpios = <&stp 15 GPIO_ACTIVE_LOW>;
113 };
114 };
115
116 usb_vbus: regulator-usb-vbus {
117 compatible = "regulator-fixed";
118
119 regulator-name = "USB_VBUS";
120
121 regulator-min-microvolt = <5000000>;
122 regulator-max-microvolt = <5000000>;
123
124 gpio = <&gpio 32 GPIO_ACTIVE_HIGH>;
125 enable-active-high;
126 };
127 };
128
129 &eth0 {
130 mtd-mac-address = <&boardconfig 0x16>;
131 mac-address-increment = <1>;
132 };
133
134 &gphy0 {
135 lantiq,gphy-mode = <GPHY_MODE_GE>;
136 };
137
138 &gphy1 {
139 lantiq,gphy-mode = <GPHY_MODE_GE>;
140 };
141
142 &gpio {
143 pinctrl-names = "default";
144 pinctrl-0 = <&state_default>;
145
146 state_default: pinmux {
147 pci-rst {
148 lantiq,pins = "io21";
149 lantiq,open-drain = <0>;
150 lantiq,pull = <0>;
151 lantiq,output = <1>;
152 };
153 };
154 };
155
156 &gswip {
157 pinctrl-0 = <&mdio_pins>, <&gphy0_led1_pins>, <&gphy1_led0_pins>;
158 pinctrl-names = "default";
159 };
160
161 &gswip_mdio {
162 phy0: ethernet-phy@0 {
163 reg = <0x0>;
164 };
165 phy1: ethernet-phy@1 {
166 reg = <0x1>;
167 };
168 phy5: ethernet-phy@5 {
169 reg = <0x5>;
170 };
171 phy11: ethernet-phy@11 {
172 reg = <0x11>;
173 };
174 phy13: ethernet-phy@13 {
175 reg = <0x13>;
176 };
177 };
178
179 &gswip_ports {
180 port@0 {
181 reg = <0>;
182 label = "lan4";
183 phy-mode = "rgmii";
184 phy-handle = <&phy0>;
185 };
186 port@1 {
187 reg = <1>;
188 label = "lan3";
189 phy-mode = "rgmii";
190 phy-handle = <&phy1>;
191 };
192 port@2 {
193 reg = <2>;
194 label = "lan2";
195 phy-mode = "internal";
196 phy-handle = <&phy11>;
197 };
198 port@4 {
199 reg = <4>;
200 label = "lan1";
201 phy-mode = "internal";
202 phy-handle = <&phy13>;
203 };
204 port@5 {
205 reg = <5>;
206 label = "wan";
207 phy-mode = "rgmii";
208 phy-handle = <&phy5>;
209 };
210 };
211
212 &localbus {
213 flash@0 {
214 compatible = "lantiq,nor";
215 bank-width = <2>;
216 reg = <0 0x0 0x800000>, <1 0x800000 0x800000>;
217
218 partitions {
219 compatible = "fixed-partitions";
220 #address-cells = <1>;
221 #size-cells = <1>;
222
223 boardconfig: partition@40000 {
224 label = "board_config";
225 reg = <0x40000 0x10000>;
226 read-only;
227 };
228 };
229 };
230 };
231
232 &pci0 {
233 status = "okay";
234 gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
235
236 wifi@1814,3091 {
237 compatible = "pci1814,3091";
238 reg = <0x7000 0 0 0 0>;
239 ralink,mtd-eeprom = <&boardconfig 0x410>;
240 ralink,mtd-eeprom-swap;
241 mtd-mac-address = <&boardconfig 0x16>;
242 mac-address-increment = <1>;
243 };
244 };
245
246 &pcie0 {
247 status = "disabled";
248 };
249
250 &stp {
251 status = "okay";
252 lantiq,shadow = <0xffff>;
253 lantiq,groups = <0x3>;
254 /* lantiq,rising; */
255 };
256
257 &usb_phy0 {
258 status = "okay";
259 };
260
261 &usb_phy1 {
262 status = "okay";
263 };
264
265 &usb0 {
266 status = "okay";
267 vbus-supply = <&usb_vbus>;
268 };
269
270 &usb1 {
271 status = "okay";
272 vbus-supply = <&usb_vbus>;
273 };
274
275 &vmmc {
276 status = "okay";
277 gpios = <&gpio 30 GPIO_ACTIVE_HIGH //fxs relay
278 &gpio 31 GPIO_ACTIVE_HIGH //still unknown
279 &gpio 3 GPIO_ACTIVE_HIGH>; //reset_slic?
280 };