f9956d3d3bdce5e3c8d1cd457e9dcd8f599a3923
[openwrt/openwrt.git] / target / linux / lantiq / dts / VGV7519.dtsi
1 /include/ "vr9.dtsi"
2
3 / {
4
5 model = "VGV7519 - KPN Experiabox V8";
6
7 chosen {
8 bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
9 };
10
11 memory@0 {
12 reg = <0x0 0x4000000>;
13 };
14
15 fpi@10000000 {
16 #address-cells = <1>;
17 #size-cells = <1>;
18 compatible = "lantiq,fpi", "simple-bus";
19 ranges = <0x0 0x10000000 0xEEFFFFF>;
20 reg = <0x10000000 0xEF00000>;
21
22 localbus@0 {
23 #address-cells = <2>;
24 #size-cells = <1>;
25 compatible = "lantiq,localbus", "simple-bus";
26 };
27
28 gpio: pinmux@E100B10 {
29 compatible = "lantiq,pinctrl-xr9";
30 pinctrl-names = "default";
31 pinctrl-0 = <&state_default>;
32
33 interrupt-parent = <&icu0>;
34 interrupts = <166 135 66 40 41 42 38>;
35
36 #gpio-cells = <2>;
37 gpio-controller;
38 reg = <0xE100B10 0xA0>;
39
40 state_default: pinmux {
41 exin3 {
42 lantiq,groups = "exin3";
43 lantiq,function = "exin";
44 };
45 stp {
46 lantiq,groups = "stp";
47 lantiq,function = "stp";
48 };
49 spi {
50 lantiq,groups = "spi", "spi_cs4";
51 lantiq,function = "spi";
52 };
53 mdio {
54 lantiq,groups = "mdio";
55 lantiq,function = "mdio";
56 };
57 gphy-leds_out {
58 lantiq,pins = "io7", "io44";
59 lantiq,pull = <0>;
60 lantiq,output = <1>;
61 };
62 conf_out {
63 lantiq,pins = "io4", "io5", "io6", /* stp */
64 "io21",
65 "io33";
66 lantiq,open-drain;
67 lantiq,pull = <0>;
68 lantiq,output = <1>;
69 };
70 gphy-leds {
71 lantiq,groups = "gphy0 led1", "gphy1 led0";
72 lantiq,function = "gphy";
73 lantiq,open-drain = <0>;
74 };
75 pcie-rst {
76 lantiq,pins = "io38";
77 lantiq,pull = <0>;
78 lantiq,output = <1>;
79 };
80 conf_in {
81 lantiq,pins = "io39"; /* exin3 */
82 lantiq,pull = <2>;
83 };
84 };
85 };
86
87 eth@E108000 {
88 #address-cells = <1>;
89 #size-cells = <0>;
90 compatible = "lantiq,xrx200-net";
91 reg = < 0xE108000 0x3000 /* switch */
92 0xE10B100 0x70 /* mdio */
93 0xE10B1D8 0x30 /* mii */
94 0xE10B308 0x30 /* pmac */
95 >;
96 interrupt-parent = <&icu0>;
97 interrupts = <73 72>;
98
99 lan: interface@0 {
100 compatible = "lantiq,xrx200-pdi";
101 #address-cells = <1>;
102 #size-cells = <0>;
103 reg = <0>;
104 mac-address = [ 00 11 22 33 44 55 ];
105
106 ethernet@0 {
107 compatible = "lantiq,xrx200-pdi-port";
108 reg = <0>;
109 phy-mode = "rgmii";
110 phy-handle = <&phy0>;
111 };
112 ethernet@1 {
113 compatible = "lantiq,xrx200-pdi-port";
114 reg = <1>;
115 phy-mode = "rgmii";
116 phy-handle = <&phy1>;
117 };
118 ethernet@2 {
119 compatible = "lantiq,xrx200-pdi-port";
120 reg = <2>;
121 phy-mode = "gmii";
122 phy-handle = <&phy11>;
123 };
124 ethernet@4 {
125 compatible = "lantiq,xrx200-pdi-port";
126 reg = <4>;
127 phy-mode = "gmii";
128 phy-handle = <&phy13>;
129 };
130 };
131
132 wan: interface@1 {
133 compatible = "lantiq,xrx200-pdi";
134 #address-cells = <1>;
135 #size-cells = <0>;
136 reg = <1>;
137 mac-address = [ 00 11 22 33 44 56 ];
138 lantiq,wan;
139 ethernet@5 {
140 compatible = "lantiq,xrx200-pdi-port";
141 reg = <5>;
142 phy-mode = "rgmii";
143 phy-handle = <&phy5>;
144 };
145 };
146
147 mdio@0 {
148 #address-cells = <1>;
149 #size-cells = <0>;
150 compatible = "lantiq,xrx200-mdio";
151 phy0: ethernet-phy@0 {
152 reg = <0x0>;
153 compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
154 lantiq,c45-reg-init = <1 0 0 0>;
155 };
156 phy1: ethernet-phy@1 {
157 reg = <0x1>;
158 compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
159 lantiq,c45-reg-init = <1 0 0 0>;
160 };
161 phy5: ethernet-phy@5 {
162 reg = <0x5>;
163 compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
164 lantiq,c45-reg-init = <1 0 0 0>;
165 };
166 phy11: ethernet-phy@11 {
167 reg = <0x11>;
168 compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
169 lantiq,c45-reg-init = <1 0 0 0>;
170 };
171 phy13: ethernet-phy@13 {
172 reg = <0x13>;
173 compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
174 lantiq,c45-reg-init = <1 0 0 0>;
175 };
176 };
177 };
178
179 stp: stp@E100BB0 {
180 compatible = "lantiq,gpio-stp-xway";
181 reg = <0xE100BB0 0x40>;
182 #gpio-cells = <2>;
183 gpio-controller;
184
185 lantiq,shadow = <0xffff>;
186 lantiq,groups = <0x3>;
187 lantiq,dsl = <0x0>;
188 lantiq,phy1 = <0x0>;
189 lantiq,phy2 = <0x0>;
190 /* lantiq,rising; */
191 };
192
193 ifxhcd@E101000 {
194 status = "okay";
195 gpios = <&gpio 32 0>;
196 lantiq,portmask = <0x3>;
197 };
198
199 pci@E105400 {
200 #address-cells = <3>;
201 #size-cells = <2>;
202 #interrupt-cells = <1>;
203 compatible = "lantiq,pci-xway1";
204 bus-range = <0x0 0x0>;
205 ranges = <0x2000000 0 0x8000000 0x8000000 0 0x2000000 /* pci memory */
206 0x1000000 0 0x00000000 0xAE00000 0 0x200000>; /* io space */
207 reg = <0x7000000 0x8000 /* config space */
208 0xE105400 0x400>; /* pci bridge */
209 lantiq,bus-clock = <33333333>;
210 /*lantiq,external-clock;*/
211 lantiq,delay-hi = <0>; /* 0ns delay */
212 lantiq,delay-lo = <0>; /* 0.0ns delay */
213 interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
214 interrupt-map = <
215 0x7000 0 0 1 &icu0 29 1 // slot 14, irq 29
216 >;
217 gpios-reset = <&gpio 21 0>;
218 req-mask = <0x1>; /* GNT1 */
219 };
220 };
221
222 gphy-xrx200 {
223 compatible = "lantiq,phy-xrx200";
224 firmware = "lantiq/vr9_phy11g_a1x.bin";
225 phys = [ 00 01 ];
226 };
227
228 gpio-keys-polled {
229 compatible = "gpio-keys-polled";
230 #address-cells = <1>;
231 #size-cells = <0>;
232 poll-interval = <100>;
233 reset {
234 label = "reset";
235 gpios = <&gpio 9 1>;
236 linux,code = <0x198>;
237 };
238 eco {
239 label = "eco";
240 gpios = <&gpio 41 1>;
241 linux,code = <247>;
242 };
243 rfkill {
244 label = "rfkill";
245 gpios = <&gpio 45 1>;
246 linux,code = <0xf7>;
247 };
248 wps {
249 label = "wps";
250 gpios = <&gpio 10 1>;
251 linux,code = <0x211>;
252 };
253 };
254
255 gpio-leds {
256 compatible = "gpio-leds";
257
258 eco { /* blue */
259 label = "eco";
260 gpios = <&stp 2 1>;
261 };
262 wps_red { /* red */
263 label = "wps_red";
264 gpios = <&stp 3 1>;
265 };
266 wps_yellow { /* yellow */
267 label = "wps_yellow";
268 gpios = <&stp 4 1>;
269 };
270 upgrade { /* blue */
271 label = "upgrade";
272 gpios = <&stp 5 1>;
273 };
274 tv { /* yellow */
275 label = "tv";
276 gpios = <&stp 6 1>;
277 };
278 internet_yellow { /* yellow */
279 label = "internet_yellow";
280 gpios = <&stp 7 1>;
281 };
282 internet_red { /* red */
283 label = "internet_red";
284 gpios = <&stp 8 1>;
285 };
286 broadband_red { /* red */
287 label = "broadband_red";
288 gpios = <&stp 9 1>;
289 };
290 broadband_yellow { /* yellow */
291 label = "broadband_yellow";
292 gpios = <&stp 10 1>;
293 };
294 voice { /* yellow */
295 label = "voice";
296 gpios = <&stp 11 1>;
297 };
298 wireless_red { /* red */
299 label = "wireless_red";
300 gpios = <&stp 12 1>;
301 };
302 wireless_yellow { /* yellow */
303 label = "wireless_yellow";
304 gpios = <&stp 13 1>;
305 };
306 power2 { /* yellow */
307 label = "power2";
308 gpios = <&stp 14 1>;
309 };
310 power { /* red */
311 label = "power";
312 gpios = <&stp 15 1>;
313 default-state = "on";
314 };
315 };
316 };