59cc8893845fe1fe7773e763f745ae2809c7af1b
[oweals/openwrt.git] / target / linux / lantiq / files / arch / mips / boot / dts / ARV7519RW22.dts
1 /dts-v1/;
2
3 #include "vr9.dtsi"
4
5 #include <dt-bindings/input/input.h>
6 #include <dt-bindings/mips/lantiq_rcu_gphy.h>
7
8 / {
9         compatible = "arcadyan,arv7519rw22", "lantiq,xway", "lantiq,vr9";
10         model = "Orange Livebox 2.1";
11
12         chosen {
13                 bootargs = "console=ttyLTQ0,115200";
14         };
15
16         aliases {
17                 led-boot = &power_green;
18                 led-failsafe = &power_green;
19                 led-running = &power_green;
20                 led-upgrade = &power_green;
21
22                 led-dsl = &internet_green;
23         };
24
25         memory@0 {
26                 device_type = "memory";
27                 reg = <0x0 0x8000000>;
28         };
29
30         gpio-keys-polled {
31                 compatible = "gpio-keys-polled";
32                 poll-interval = <100>;
33
34                 reset {
35                         label = "reset";
36                         gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
37                         linux,code = <KEY_RESTART>;
38                 };
39                 rfkill {
40                         label = "rfkill";
41                         gpios = <&gpio 33 GPIO_ACTIVE_LOW>;
42                         linux,code = <KEY_RFKILL>;
43                 };
44                 wps {
45                         label = "wps";
46                         gpios = <&gpio 37 GPIO_ACTIVE_LOW>;
47                         linux,code = <KEY_WPS_BUTTON>;
48                 };
49         };
50
51         gpio-leds {
52                 compatible = "gpio-leds";
53
54                 lan_green {
55                         label = "arv7519rw22:green:lan";
56                         gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
57                 };
58                 internet_red {
59                         label = "arv7519rw22:red:internet";
60                         gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
61                 };
62                 power_green: power_green {
63                         label = "arv7519rw22:green:power";
64                         gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
65                         default-state = "keep";
66                 };
67                 alarm_blue {
68                         label = "arv7519rw22:blue:alarm";
69                         gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
70                 };
71                 internet_orange {
72                         label = "arv7519rw22:orange:internet";
73                         gpios = <&gpio 19 GPIO_ACTIVE_LOW>;
74                 };
75                 internet_green: internet_green {
76                         label = "arv7519rw22:green:internet";
77                         gpios = <&gpio 28 GPIO_ACTIVE_LOW>;
78                 };
79                 voice_green {
80                         label = "arv7519rw22:green:voice";
81                         gpios = <&gpio 29 GPIO_ACTIVE_LOW>;
82                 };
83         };
84
85         usb_vbus: regulator-usb-vbus {
86                 compatible = "regulator-fixed";
87
88                 regulator-name = "USB_VBUS";
89
90                 regulator-min-microvolt = <5000000>;
91                 regulator-max-microvolt = <5000000>;
92
93                 gpio = <&gpio 32 GPIO_ACTIVE_HIGH>;
94                 enable-active-high;
95         };
96 };
97
98 &eth0 {
99         lan: interface@0 {
100                 compatible = "lantiq,xrx200-pdi";
101                 #address-cells = <1>;
102                 #size-cells = <0>;
103                 reg = <0>;
104                 mtd-mac-address = <&boardconfig 0x16>;
105                 lantiq,switch;
106
107                 ethernet@0 {
108                         compatible = "lantiq,xrx200-pdi-port";
109                         reg = <0>;
110                         phy-mode = "rgmii";
111                         phy-handle = <&phy0>;
112                 };
113                 ethernet@1 {
114                         compatible = "lantiq,xrx200-pdi-port";
115                         reg = <4>;
116                         phy-mode = "mii";
117                         phy-handle = <&phy13>;
118                 };
119                 ethernet@2 {
120                         compatible = "lantiq,xrx200-pdi-port";
121                         reg = <5>;
122                         phy-mode = "mii";
123                         phy-handle = <&phy14>;
124                 };
125                 ethernet@3 {
126                         compatible = "lantiq,xrx200-pdi-port";
127                         reg = <2>;
128                         phy-mode = "mii";
129                         phy-handle = <&phy11>;
130                 };
131                 ethernet@4 {
132                         compatible = "lantiq,xrx200-pdi-port";
133                         reg = <3>;
134                         phy-mode = "mii";
135                         phy-handle = <&phy12>;
136                 };
137         };
138
139         mdio {
140                 #address-cells = <1>;
141                 #size-cells = <0>;
142                 compatible = "lantiq,xrx200-mdio";
143
144                 phy0: ethernet-phy@0 {
145                         reg = <0x0>;
146                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
147                 };
148                 phy11: ethernet-phy@11 {
149                         reg = <0x11>;
150                         compatible = "lantiq,phy22f", "ethernet-phy-ieee802.3-c22";
151                 };
152                 phy12: ethernet-phy@12 {
153                         reg = <0x12>;
154                         compatible = "lantiq,phy22f", "ethernet-phy-ieee802.3-c22";
155                 };
156                 phy13: ethernet-phy@13 {
157                         reg = <0x13>;
158                         compatible = "lantiq,phy22f", "ethernet-phy-ieee802.3-c22";
159                 };
160                 phy14: ethernet-phy@14 {
161                         reg = <0x14>;
162                         compatible = "lantiq,phy22f", "ethernet-phy-ieee802.3-c22";
163                 };
164         };
165 };
166
167 &gphy0 {
168         lantiq,gphy-mode = <GPHY_MODE_FE>;
169 };
170
171 &gphy1 {
172         lantiq,gphy-mode = <GPHY_MODE_FE>;
173 };
174
175 &gpio {
176         pinctrl-names = "default";
177         pinctrl-0 = <&state_default>;
178
179         state_default: pinmux {
180                 mdio {
181                         lantiq,groups = "mdio";
182                         lantiq,function = "mdio";
183                 };
184                 pcie-rst {
185                         lantiq,pins = "io21";
186                         lantiq,pull = <0>;
187                         lantiq,output = <1>;
188                 };
189         };
190 };
191
192 &localbus {
193         nor@0 {
194                 compatible = "lantiq,nor";
195                 bank-width = <2>;
196                 reg = <0 0x0 0x2000000>;
197
198                 partitions {
199                         compatible = "fixed-partitions";
200                         #address-cells = <1>;
201                         #size-cells = <1>;
202
203                         partition@0 {
204                                 label = "uboot";
205                                 reg = <0x0 0x60000>;
206                                 read-only;
207                         };
208
209                         partition@60000 {
210                                 label = "uboot-env";
211                                 reg = <0x60000 0x20000>;
212                                 read-only;
213                         };
214
215                         partition@80000 {
216                                 label = "firmware";
217                                 reg = <0x80000 0x1f00000>;
218                         };
219
220                         boardconfig: partition@1f80000 {
221                                 label = "boardconfig";
222                                 reg = <0x1f80000 0x80000>;
223                                 read-only;
224                         };
225                 };
226         };
227 };
228
229 &pcie0 {
230         status = "okay";
231         gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
232 };
233
234 &usb_phy0 {
235         status = "okay";
236 };
237
238 &usb_phy1 {
239         status = "okay";
240 };
241
242 &usb0 {
243         status = "okay";
244         vbus-supply = <&usb_vbus>;
245 };
246
247 &usb1 {
248         status = "okay";
249         vbus-supply = <&usb_vbus>;
250 };