lantiq: device tree bindings for dwc2 on danube
[oweals/openwrt.git] / target / linux / lantiq / dts / VGV7519.dtsi
1 #include "vr9.dtsi"
2
3 #include <dt-bindings/input/input.h>
4
5 / {
6
7         model = "VGV7519 - KPN Experiabox V8";
8
9         chosen {
10                 bootargs = "console=ttyLTQ0,115200 init=/etc/preinit mem=62M vpe1_load_addr=0x83e00000 vpe1_mem=2M maxvpes=1 maxtcs=1";
11         };
12
13         aliases {
14                 led-boot = &power_green;
15                 led-failsafe = &power_red;
16                 led-running = &power_green;
17
18                 led-dsl = &broadband_green;
19                 led-internet = &internet_green;
20                 led-wifi = &wireless_green;
21         };
22
23         sram@1F000000 {
24                 vmmc@107000 {
25                         status = "okay";
26                         gpios = <&gpio 30 GPIO_ACTIVE_HIGH  //fxs relay
27                                  &gpio 31 GPIO_ACTIVE_HIGH  //still unknown
28                                  &gpio 3  GPIO_ACTIVE_HIGH>; //reset_slic?
29                 };
30         };
31
32         memory@0 {
33                 reg = <0x0 0x4000000>;
34         };
35
36         fpi@10000000 {
37                 localbus@0 {
38                         nor-boot@0 {
39                                 compatible = "lantiq,nor";
40                                 bank-width = <2>;
41                                 reg = <0 0x0 0x800000>, <1 0x800000 0x800000>;
42                                 #address-cells = <1>;
43                                 #size-cells = <1>;
44
45                                 partitions {
46                                         compatible = "fixed-partitions";
47                                         #address-cells = <1>;
48                                         #size-cells = <1>;
49
50                                         boardconfig: partition@40000 {
51                                                 label = "board_config";
52                                                 reg = <0x40000 0x10000>;
53                                                 read-only;
54                                         };
55                                 };
56                         };
57                 };
58
59                 gpio: pinmux@E100B10 {
60                         pinctrl-names = "default";
61                         pinctrl-0 = <&state_default>;
62
63                         state_default: pinmux {
64                                 stp {
65                                         lantiq,groups = "stp";
66                                         lantiq,function = "stp";
67                                         lantiq,open-drain = <0>;
68                                         lantiq,output = <1>;
69                                         lantiq,pull = <0>;
70                                 };
71                                 mdio {
72                                         lantiq,groups = "mdio";
73                                         lantiq,function = "mdio";
74                                 };
75                                 pci-rst {
76                                         lantiq,pins = "io21";
77                                         lantiq,open-drain = <0>;
78                                         lantiq,pull = <0>;
79                                         lantiq,output = <1>;
80                                 };
81                                 gphy-leds {
82                                         lantiq,groups = "gphy0 led1", "gphy1 led0";
83                                         lantiq,function = "gphy";
84                                         lantiq,open-drain = <0>;
85                                         lantiq,pull = <0>;
86                                         lantiq,output = <1>;
87                                 };
88                         };
89                 };
90
91                 stp: stp@E100BB0 {
92                         compatible = "lantiq,gpio-stp-xway";
93                         reg = <0xE100BB0 0x40>;
94                         #gpio-cells = <2>;
95                         gpio-controller;
96
97                         lantiq,shadow = <0xffff>;
98                         lantiq,groups = <0x3>;
99                         lantiq,dsl = <0x0>;
100                         lantiq,phy1 = <0x0>;
101                         lantiq,phy2 = <0x0>;
102                         /* lantiq,rising; */
103                 };
104
105                 ifxhcd@E101000 {
106                         status = "okay";
107                         gpios = <&gpio 32 GPIO_ACTIVE_HIGH>;
108                         lantiq,portmask = <0x3>;
109                 };
110
111                 ifxhcd@E106000 {
112                         status = "okay";
113                         gpios = <&gpio 32 GPIO_ACTIVE_HIGH>;
114                 };
115
116                 pcie@d900000 {
117                         status = "disabled";
118                 };
119         };
120
121         gphy-xrx200 {
122                 compatible = "lantiq,phy-xrx200";
123                 firmware1 = "lantiq/vr9_phy11g_a1x.bin";        /*VR9 1.1*/
124                 firmware2 = "lantiq/vr9_phy11g_a2x.bin";        /*VR9 1.2*/
125                 phys = [ 00 01 ];
126         };
127
128         gpio-keys-polled {
129                 compatible = "gpio-keys-polled";
130                 #address-cells = <1>;
131                 #size-cells = <0>;
132                 poll-interval = <100>;
133                 reset {
134                         label = "reset";
135                         gpios = <&gpio 9 GPIO_ACTIVE_LOW>;
136                         linux,code = <KEY_RESTART>;
137                 };
138                 eco {
139                         label = "eco";
140                         gpios = <&gpio 41 GPIO_ACTIVE_LOW>;
141                         linux,code = <KEY_RFKILL>;
142                 };
143                 rfkill {
144                         label = "rfkill";
145                         gpios = <&gpio 45 GPIO_ACTIVE_LOW>;
146                         linux,code = <KEY_RFKILL>;
147                 };
148                 wps {
149                         label = "wps";
150                         gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
151                         linux,code = <KEY_WPS_BUTTON>;
152                 };
153         };
154
155         gpio-leds {
156                 compatible = "gpio-leds";
157
158                 eco {
159                         label = "vgv7519:blue:eco";
160                         gpios = <&stp 2 GPIO_ACTIVE_LOW>;
161                 };
162                 wps_red {
163                         label = "vgv7519:red:wps";
164                         gpios = <&stp 3 GPIO_ACTIVE_LOW>;
165                 };
166                 wps_green {
167                         label = "vgv7519:green:wps";
168                         gpios = <&stp 4 GPIO_ACTIVE_LOW>;
169                 };
170                 upgrade {
171                         label = "vgv7519:blue:upgrade";
172                         gpios = <&stp 5 GPIO_ACTIVE_LOW>;
173                 };
174                 tv {
175                         label = "vgv7519:green:tv";
176                         gpios = <&stp 6 GPIO_ACTIVE_LOW>;
177                 };
178                 internet_green: internet_green {
179                         label = "vgv7519:green:internet";
180                         gpios = <&stp 7 GPIO_ACTIVE_LOW>;
181                 };
182                 internet_red {
183                         label = "vgv7519:red:internet";
184                         gpios = <&stp 8 GPIO_ACTIVE_LOW>;
185                 };
186                 broadband_red {
187                         label = "vgv7519:red:broadband";
188                         gpios = <&stp 9 GPIO_ACTIVE_LOW>;
189                 };
190                 broadband_green: broadband_green {
191                         label = "vgv7519:green:broadband";
192                         gpios = <&stp 10 GPIO_ACTIVE_LOW>;
193                 };
194                 voice {
195                         label = "vgv7519:green:voice";
196                         gpios = <&stp 11 GPIO_ACTIVE_LOW>;
197                 };
198                 wireless_red {
199                         label = "vgv7519:red:wireless";
200                         gpios = <&stp 12 GPIO_ACTIVE_LOW>;
201                 };
202                 wireless_green: wireless_green {
203                         label = "vgv7519:green:wireless";
204                         gpios = <&stp 13 GPIO_ACTIVE_LOW>;
205                 };
206                 power_green: power2 {
207                         label = "vgv7519:green:power";
208                         gpios = <&stp 14 GPIO_ACTIVE_LOW>;
209                         default-state = "keep";
210                 };
211                 power_red: power {
212                         label = "vgv7519:red:power";
213                         gpios = <&stp 15 GPIO_ACTIVE_LOW>;
214                 };
215         };
216 };
217
218 &pci0 {
219         status = "okay";
220         gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
221
222         wifi@1814,3091 {
223                 compatible = "pci1814,3091";
224                 reg = <0x7000 0 0 0 0>;
225                 ralink,mtd-eeprom = <&boardconfig 0x410>;
226                 ralink,mtd-eeprom-swap;
227                 mtd-mac-address = <&boardconfig 0x16>;
228                 mtd-mac-address-increment = <1>;
229         };
230 };
231
232 &eth0 {
233         lan: interface@0 {
234                 compatible = "lantiq,xrx200-pdi";
235                 #address-cells = <1>;
236                 #size-cells = <0>;
237                 reg = <0>;
238                 mtd-mac-address = <&boardconfig 0x16>;
239                 mtd-mac-address-increment = <1>;
240                 lantiq,switch;
241
242                 ethernet@0 {
243                         compatible = "lantiq,xrx200-pdi-port";
244                         reg = <0>;
245                         phy-mode = "rgmii";
246                         phy-handle = <&phy0>;
247                 };
248                 ethernet@1 {
249                         compatible = "lantiq,xrx200-pdi-port";
250                         reg = <1>;
251                         phy-mode = "rgmii";
252                         phy-handle = <&phy1>;
253                 };
254                 ethernet@2 {
255                         compatible = "lantiq,xrx200-pdi-port";
256                         reg = <2>;
257                         phy-mode = "gmii";
258                         phy-handle = <&phy11>;
259                 };
260                 ethernet@4 {
261                         compatible = "lantiq,xrx200-pdi-port";
262                         reg = <4>;
263                         phy-mode = "gmii";
264                         phy-handle = <&phy13>;
265                 };
266         };
267
268         wan: interface@1 {
269                 compatible = "lantiq,xrx200-pdi";
270                 #address-cells = <1>;
271                 #size-cells = <0>;
272                 reg = <1>;
273                 mtd-mac-address = <&boardconfig 0x16>;
274                 lantiq,wan;
275
276                 ethernet@5 {
277                         compatible = "lantiq,xrx200-pdi-port";
278                         reg = <5>;
279                         phy-mode = "rgmii";
280                         phy-handle = <&phy5>;
281                 };
282         };
283
284         mdio@0 {
285                 #address-cells = <1>;
286                 #size-cells = <0>;
287                 compatible = "lantiq,xrx200-mdio";
288                 phy0: ethernet-phy@0 {
289                         reg = <0x0>;
290                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
291                 };
292                 phy1: ethernet-phy@1 {
293                         reg = <0x1>;
294                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
295                 };
296                 phy5: ethernet-phy@5 {
297                         reg = <0x5>;
298                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
299                 };
300                 phy11: ethernet-phy@11 {
301                         reg = <0x11>;
302                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
303                 };
304                 phy13: ethernet-phy@13 {
305                         reg = <0x13>;
306                         compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
307                 };
308         };
309 };