de2be582f575b7eb818e50cec72d3299a8734074
[openwrt/openwrt.git] / target / linux / lantiq / dts / WBMR300.dts
1 /dts-v1/;
2
3 #include "vr9.dtsi"
4
5 #include <dt-bindings/input/input.h>
6
7 / {
8 compatible = "buffalo,wbmr-300hpd", "lantiq,xway", "lantiq,vr9";
9 model = "Buffalo WBMR-300HPD";
10
11 chosen {
12 bootargs = "console=ttyLTQ0,115200";
13 };
14
15 aliases {
16 led-boot = &power_g;
17 led-failsafe = &diag_r;
18 led-running = &power_g;
19
20 led-dsl = &dsl;
21 led-internet = &router_g;
22 led-wifi = &wifi_g;
23 };
24
25 memory@0 {
26 reg = <0x0 0x4000000>;
27 };
28
29 fpi@10000000 {
30 gpio: pinmux@E100B10 {
31 pinctrl-names = "default";
32 pinctrl-0 = <&state_default>;
33
34 state_default: pinmux {
35 mdio {
36 lantiq,groups = "mdio";
37 lantiq,function = "mdio";
38 };
39 phy-rst {
40 lantiq,pins = "io42";
41 lantiq,pull = <0>;
42 lantiq,open-drain = <0>;
43 lantiq,output = <1>;
44 };
45 pcie-rst {
46 lantiq,pins = "io38";
47 lantiq,pull = <0>;
48 lantiq,output = <1>;
49 };
50 };
51 pins_spi_default: pins_spi_default {
52 spi_in {
53 lantiq,groups = "spi_di";
54 lantiq,function = "spi";
55 };
56 spi_out {
57 lantiq,groups = "spi_do", "spi_clk",
58 "spi_cs4";
59 lantiq,function = "spi";
60 lantiq,output = <1>;
61 };
62 };
63 };
64
65 ifxhcd@E101000 {
66 status = "okay";
67 gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
68 lantiq,portmask = <0x3>;
69 };
70
71 ifxhcd@E106000 {
72 status = "okay";
73 gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
74 };
75 };
76
77 gphy-xrx200 {
78 compatible = "lantiq,phy-xrx200";
79 firmware = "lantiq/vr9_phy22f_a2x.bin";
80 phys = [ 00 01 ];
81 };
82
83 gpio_poweroff {
84 compatible = "gpio-poweroff";
85 gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
86 };
87
88 gpio-keys-polled {
89 compatible = "gpio-keys-polled";
90 #address-cells = <1>;
91 #size-cells = <0>;
92 poll-interval = <100>;
93
94 power {
95 label = "power";
96 gpios = <&gpio 5 GPIO_ACTIVE_LOW>;
97 linux,code = <KEY_POWER>;
98 };
99
100 reset {
101 label = "reset";
102 gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
103 linux,code = <KEY_RESTART>;
104 };
105
106 wps {
107 label = "wps";
108 gpios = <&gpio 31 GPIO_ACTIVE_LOW>;
109 linux,code = <KEY_WPS_BUTTON>;
110 };
111
112 auto {
113 label = "auto";
114 gpios = <&gpio 48 GPIO_ACTIVE_HIGH>;
115 linux,code = <BTN_0>;
116 linux,input-type = <EV_SW>;
117 };
118
119 router {
120 label = "router";
121 gpios = <&gpio 2 GPIO_ACTIVE_HIGH>;
122 linux,code = <BTN_1>;
123 linux,input-type = <EV_SW>;
124 };
125 };
126
127 gpio-leds {
128 compatible = "gpio-leds";
129
130 diag_r: diag_r {
131 label = "wbmr300:red:diag";
132 gpios = <&gpio 0 GPIO_ACTIVE_HIGH>;
133 default_state = "off";
134 };
135
136 wifi_g: wifi_g {
137 label = "wbmr300:green:wifi";
138 gpios = <&gpio 1 GPIO_ACTIVE_HIGH>;
139 };
140
141 dsl: dsl {
142 label = "dsl";
143 gpios = <&gpio 4 GPIO_ACTIVE_HIGH>;
144 };
145
146 router_y: router_y {
147 label = "wbmr300:yellow:router";
148 gpios = <&gpio 8 GPIO_ACTIVE_HIGH>;
149 };
150
151 wifi_y: wifi_y {
152 label = "wbmr300:yellow:wifi";
153 gpios = <&gpio 9 GPIO_ACTIVE_HIGH>;
154 };
155
156 lan1: lan1 {
157 label = "wbmr300:green:lan1";
158 gpios = <&gpio 11 GPIO_ACTIVE_HIGH>;
159 };
160
161 wan: wan {
162 label = "wbmr300:green:wan";
163 gpios = <&gpio 12 GPIO_ACTIVE_HIGH>;
164 };
165
166 lan3: lan3 {
167 label = "wbmr300:green:lan3";
168 gpios = <&gpio 15 GPIO_ACTIVE_HIGH>;
169 };
170
171 lan2: lan2 {
172 label = "wbmr300:green:lan2";
173 gpios = <&gpio 33 GPIO_ACTIVE_HIGH>;
174 };
175
176 internet_g: internet_g {
177 label = "wbmr300:green:internet";
178 gpios = <&gpio 34 GPIO_ACTIVE_HIGH>;
179 };
180
181 internet_y: internet_y {
182 label = "wbmr300:yellow:internet";
183 gpios = <&gpio 35 GPIO_ACTIVE_HIGH>;
184 };
185
186 router_g: router_g {
187 label = "wbmr300:green:router";
188 gpios = <&gpio 36 GPIO_ACTIVE_HIGH>;
189 };
190
191 power_g: power_g {
192 label = "wbmr300:green:power";
193 gpios = <&gpio 49 GPIO_ACTIVE_HIGH>;
194 };
195 };
196 };
197
198 &spi {
199 pinctrl-names = "default";
200 pinctrl-0 = <&pins_spi_default>;
201
202 status = "ok";
203 m25p80@4 {
204 #address-cells = <1>;
205 #size-cells = <1>;
206 compatible = "jedec,spi-nor";
207 reg = <4 0>;
208 spi-max-frequency = <20000000>;
209
210 partition@0 {
211 reg = <0x0 0x10000>;
212 label = "u-boot";
213 read-only;
214 };
215
216 partition@10000 {
217 reg = <0x10000 0x10000>;
218 label = "gphyfirmware";
219 read-only;
220 };
221
222 partition@20000 {
223 reg = <0x20000 0x80000>;
224 label = "dsl_fw";
225 };
226
227 partition@de0000 {
228 reg = <0xa0000 0xf40000>;
229 label = "firmware";
230 };
231
232 partition@fe0000 {
233 reg = <0xfe0000 0x10000>;
234 label = "sysconfig";
235 read-only;
236 };
237
238 partition@ff0000 {
239 reg = <0xff0000 0x2000>;
240 label = "ubootconfig";
241 };
242
243 partition@ff3000 {
244 reg = <0xff3000 0x2000>;
245 label = "board_config";
246 read-only;
247 };
248 };
249 };
250
251 &eth0 {
252 lan: interface@0 {
253 compatible = "lantiq,xrx200-pdi";
254 #address-cells = <1>;
255 #size-cells = <0>;
256 reg = <0>;
257 lantiq,switch;
258
259 ethernet@1 {
260 compatible = "lantiq,xrx200-pdi-port";
261 reg = <4>;
262 phy-mode = "mii";
263 phy-handle = <&phy13>;
264 };
265 ethernet@2 {
266 compatible = "lantiq,xrx200-pdi-port";
267 reg = <5>;
268 phy-mode = "mii";
269 phy-handle = <&phy14>;
270 };
271 ethernet@3 {
272 compatible = "lantiq,xrx200-pdi-port";
273 reg = <2>;
274 phy-mode = "mii";
275 phy-handle = <&phy11>;
276 };
277 ethernet@4 {
278 compatible = "lantiq,xrx200-pdi-port";
279 reg = <3>;
280 phy-mode = "mii";
281 phy-handle = <&phy12>;
282 };
283 };
284
285 mdio@0 {
286 #address-cells = <1>;
287 #size-cells = <0>;
288 compatible = "lantiq,xrx200-mdio";
289 phy11: ethernet-phy@11 {
290 reg = <0x11>;
291 compatible = "lantiq,phy22f", "ethernet-phy-ieee802.3-c22";
292 };
293 phy12: ethernet-phy@12 {
294 reg = <0x12>;
295 compatible = "lantiq,phy22f", "ethernet-phy-ieee802.3-c22";
296 };
297 phy13: ethernet-phy@13 {
298 reg = <0x13>;
299 compatible = "lantiq,phy22f", "ethernet-phy-ieee802.3-c22";
300 };
301 phy14: ethernet-phy@14 {
302 reg = <0x14>;
303 compatible = "lantiq,phy22f", "ethernet-phy-ieee802.3-c22";
304 };
305 };
306 };