ea9b0dab006ba6c46356ef2227808247b459806f
[openwrt/openwrt.git] / target / linux / lantiq / dts / ARV7519PW.dts
1 /dts-v1/;
2
3 #include "danube.dtsi"
4
5 #include <dt-bindings/input/input.h>
6
7 / {
8 model = "ARV7519PW - Astoria Networks";
9
10 chosen {
11 bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
12 };
13
14 aliases {
15 led-boot = &power;
16 led-failsafe = &power2;
17 led-running = &power;
18
19 led-dsl = &dsl;
20 led-internet = &online;
21 led-wifi = &wifi;
22 };
23
24 memory@0 {
25 reg = <0x0 0x4000000>;
26 };
27
28 sram@1F000000 {
29 vmmc@107000 {
30 status = "okay";
31 };
32 };
33
34 fpi@10000000 {
35 localbus@0 {
36 nor-boot@0 {
37 compatible = "lantiq,nor";
38 bank-width = <2>;
39 reg = <0 0x0 0x2000000>;
40 #address-cells = <1>;
41 #size-cells = <1>;
42
43 partitions {
44 compatible = "fixed-partitions";
45 #address-cells = <1>;
46 #size-cells = <1>;
47
48 partition@0 {
49 label = "uboot";
50 reg = <0x00000 0x40000>;
51 read-only;
52 };
53
54 partition@40000 {
55 label = "uboot_env";
56 reg = <0x40000 0x20000>;
57 };
58
59 partition@60000 {
60 label = "firmware";
61 reg = <0x60000 0xf80000>;
62 };
63
64 boardconfig: partition@fe0000 {
65 label = "board_config";
66 reg = <0xfe0000 0x20000>;
67 read-only;
68 };
69 };
70 };
71 };
72
73 gpio: pinmux@E100B10 {
74 pinctrl-names = "default";
75 pinctrl-0 = <&state_default>;
76
77 state_default: pinmux {
78 ebu {
79 lantiq,groups = "ebu cs1";
80 lantiq,function = "ebu";
81 };
82 pci_in {
83 lantiq,groups = "req1";
84 lantiq,function = "pci";
85 lantiq,open-drain = <1>;
86 lantiq,pull = <2>;
87 lantiq,output = <0>;
88 };
89 pci_out {
90 lantiq,groups = "gnt1";
91 lantiq,function = "pci";
92 lantiq,pull = <0>;
93 lantiq,output = <1>;
94 };
95 pci_rst {
96 lantiq,pins = "io21";
97 lantiq,pull = <2>;
98 lantiq,output = <1>;
99 };
100 switch_rst {
101 lantiq,pins = "io19";
102 lantiq,pull = <2>;
103 lantiq,output = <1>;
104 };
105 };
106 };
107
108 etop@E180000 {
109 phy-mode = "mii";
110 mtd-mac-address = <&boardconfig 0x16>;
111 };
112
113 /* warning: passive port
114 only works with active devices */
115 ifxhcd@E101000 {
116 status = "okay";
117 };
118 };
119
120 gpio-keys-polled {
121 compatible = "gpio-keys-polled";
122 #address-cells = <1>;
123 #size-cells = <0>;
124 poll-interval = <100>;
125
126 rfkill {
127 label = "rfkill";
128 gpios = <&gpio 11 GPIO_ACTIVE_LOW>;
129 linux,code = <KEY_RFKILL>;
130 };
131 reset {
132 label = "reset";
133 gpios = <&gpio 28 GPIO_ACTIVE_LOW>;
134 linux,code = <KEY_RESTART>;
135 };
136 };
137
138 gpio-leds {
139 compatible = "gpio-leds";
140 power: power {
141 label = "power";
142 gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
143 default-state = "keep";
144 };
145 power2: power2 {
146 label = "power2";
147 gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
148 };
149 online: online {
150 label = "online";
151 gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
152 };
153 online2 {
154 label = "online2";
155 gpios = <&gpio 30 GPIO_ACTIVE_LOW>;
156 };
157 wifi: wifi {
158 label = "wifi";
159 gpios = <&gpio 12 GPIO_ACTIVE_LOW>;
160 };
161 wifi2 {
162 label = "wifi2";
163 gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
164 };
165 wifi3 {
166 label = "wifi3";
167 gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
168 };
169 voice {
170 label = "voice";
171 gpios = <&gpio 31 GPIO_ACTIVE_LOW>;
172 };
173 wps {
174 label = "wps";
175 gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
176 };
177 wps2 {
178 label = "wps2";
179 gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
180 };
181 wps3 {
182 label = "wps3";
183 gpios = <&gpio 23 GPIO_ACTIVE_LOW>;
184 };
185 dsl: dsl {
186 label = "dsl";
187 gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
188 };
189 lan {
190 label = "lan";
191 gpios = <&gpio 1 GPIO_ACTIVE_LOW>;
192 };
193 tv {
194 label = "tv";
195 gpios = <&gpio 20 GPIO_ACTIVE_LOW>;
196 };
197 upgrade {
198 label = "upgrade";
199 gpios = <&gpio 29 GPIO_ACTIVE_LOW>;
200 };
201 };
202
203 /* is there another way to "reserve" the GPIO? */
204 gpio_export {
205 compatible = "gpio-export";
206 #size-cells = <0>;
207
208 switch {
209 gpio-export,name = "switch";
210 gpio-export,output = <1>;
211 gpios = <&gpio 19 GPIO_ACTIVE_HIGH>;
212 };
213 };
214 };
215
216 &pci0 {
217 status = "okay";
218 lantiq,external-clock;
219 gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
220 req-mask = <0xf>;
221
222 wifi@0,0 {
223 compatible = "pci0,0";
224 reg = <0x7000 0 0 0 0>;
225 ralink,mtd-eeprom = <&boardconfig 0x410>;
226 ralink,mtd-eeprom-swap;
227 };
228 };