lantiq: improve Arcadyan ARV4510PW support
[openwrt/openwrt.git] / target / linux / lantiq / dts / ARV4510PW.dts
1 /dts-v1/;
2
3 /include/ "danube.dtsi"
4
5 / {
6 model = "ARV4510PW - Wippies, Elisa";
7
8 chosen {
9 bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
10 };
11
12 memory@0 {
13 reg = <0x0 0x2000000>;
14 };
15
16 sram@1F000000 {
17 vmmc@107000 {
18 status = "okay";
19 };
20 };
21
22 fpi@10000000 {
23 localbus@0 {
24 nor-boot@0 {
25 compatible = "lantiq,nor";
26 bank-width = <2>;
27 reg = <0 0x0 0x1000000>;
28 #address-cells = <1>;
29 #size-cells = <1>;
30
31 lantiq,noxip;
32
33 partition@0 {
34 label = "uboot";
35 reg = <0x00000 0x40000>;
36 read-only;
37 };
38
39 partition@40000 {
40 label = "uboot_env";
41 reg = <0x40000 0x20000>;
42 read-only;
43 };
44
45 partition@60000 {
46 label = "firmware";
47 reg = <0x60000 0xfa0000>;
48 };
49 };
50 };
51 gpio: pinmux@E100B10 {
52 pinctrl-names = "default";
53 pinctrl-0 = <&state_default>;
54
55 state_default: pinmux {
56 ebu {
57 lantiq,groups = "ebu a23";
58 lantiq,function = "ebu";
59 lantiq,output = <1>;
60 };
61 stp {
62 lantiq,groups = "stp";
63 lantiq,function = "stp";
64 lantiq,output = <1>;
65 };
66 exin {
67 lantiq,groups = "exin1", "exin2";
68 lantiq,function = "exin";
69 lantiq,output = <0>;
70 };
71 pci_in {
72 lantiq,groups = "req1", "req2";
73 lantiq,function = "pci";
74 lantiq,output = <0>;
75 };
76 pci_out {
77 lantiq,groups = "gnt1", "gnt2";
78 lantiq,function = "pci";
79 lantiq,output = <1>;
80 };
81 pci_rst {
82 lantiq,pins = "io21";
83 lantiq,open-drain;
84 lantiq,output = <1>;
85 };
86 buttons {
87 lantiq,pins = "io3", "io14";
88 lantiq,pull = <2>;
89 lantiq,output = <0>;
90 };
91 };
92 };
93
94 gpios: stp@E100BB0 {
95 status = "okay";
96 lantiq,groups = <0x7>;
97 };
98
99 etop@E180000 {
100 phy-mode = "rmii";
101 };
102
103 pci@E105400 {
104 status = "okay";
105 lantiq,external-clock;
106 interrupt-map = <
107 0x6000 0 0 1 &icu0 135
108 0x7800 0 0 1 &icu0 66
109 0x7800 0 0 2 &icu0 66
110 0x7800 0 0 3 &icu0 66
111 >;
112 gpio-reset = <&gpio 21 0>;
113 req-mask = <0x7>;
114 };
115
116 };
117
118 gpio-keys-polled {
119 compatible = "gpio-keys-polled";
120 #address-cells = <1>;
121 #size-cells = <0>;
122 poll-interval = <100>;
123
124 wps {
125 label = "wps";
126 gpios = <&gpio 14 1>;
127 linux,code = <0x211>;
128 };
129 reset {
130 label = "reset";
131 gpios = <&gpio 3 1>;
132 linux,code = <0x198>;
133 };
134 };
135
136 gpio-leds {
137 compatible = "gpio-leds";
138 power {
139 label = "power";
140 gpios = <&gpios 21 0>;
141 };
142 power2 {
143 label = "power2";
144 gpios = <&gpios 20 0>;
145 };
146 lan1 {
147 label = "lan1";
148 gpios = <&gpios 19 0>;
149 };
150 lan2 {
151 label = "lan2";
152 gpios = <&gpios 18 0>;
153 };
154 lan3 {
155 label = "lan3";
156 gpios = <&gpios 17 0>;
157 };
158 lan4 {
159 label = "lan4";
160 gpios = <&gpios 16 0>;
161 };
162 wifi {
163 label = "wifi";
164 gpios = <&gpios 15 0>;
165 };
166 adsl {
167 label = "adsl";
168 gpios = <&gpios 14 0>;
169 };
170 internet {
171 label = "internet";
172 gpios = <&gpios 13 0>;
173 };
174 internet2 {
175 label = "internet2";
176 gpios = <&gpios 12 0>;
177 };
178 voip {
179 label = "voip";
180 gpios = <&gpios 11 0>;
181 };
182 phone {
183 label = "phone";
184 gpios = <&gpios 10 0>;
185 };
186 phone2 {
187 label = "phone2";
188 gpios = <&gpios 9 0>;
189 };
190 usb {
191 label = "usb";
192 gpios = <&gpios 8 0>;
193 };
194 usb2 {
195 label = "usb2";
196 gpios = <&gpios 7 0>;
197 };
198 usb3 {
199 label = "usb3";
200 gpios = <&gpios 6 0>;
201 };
202 unlabeled {
203 label = "unlabeled";
204 gpios = <&gpios 5 0>;
205 };
206 };
207 };