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