ar71xx: add support for Buffalo WZR 600DHP
[openwrt/svn-archive/archive.git] / target / linux / ar71xx / patches-3.7 / 610-MIPS-ath79-openwrt-machines.patch
1 --- a/arch/mips/ath79/machtypes.h
2 +++ b/arch/mips/ath79/machtypes.h
3 @@ -16,22 +16,113 @@
4
5 enum ath79_mach_type {
6 ATH79_MACH_GENERIC = 0,
7 + ATH79_MACH_ALFA_AP96, /* ALFA Network AP96 board */
8 + ATH79_MACH_ALFA_NX, /* ALFA Network N2/N5 board */
9 + ATH79_MACH_ALL0258N, /* Allnet ALL0258N */
10 + ATH79_MACH_ALL0305, /* Allnet ALL0305 */
11 + ATH79_MACH_ALL0315N, /* Allnet ALL0315N */
12 + ATH79_MACH_AP113, /* Atheros AP113 reference board */
13 ATH79_MACH_AP121, /* Atheros AP121 reference board */
14 ATH79_MACH_AP121_MINI, /* Atheros AP121-MINI reference board */
15 ATH79_MACH_AP135_020, /* Atheros AP135-020 reference board */
16 ATH79_MACH_AP136_010, /* Atheros AP136-010 reference board */
17 ATH79_MACH_AP136_020, /* Atheros AP136-020 reference board */
18 ATH79_MACH_AP81, /* Atheros AP81 reference board */
19 + ATH79_MACH_AP83, /* Atheros AP83 */
20 + ATH79_MACH_AP96, /* Atheros AP96 */
21 + ATH79_MACH_AW_NR580, /* AzureWave AW-NR580 */
22 + ATH79_MACH_CAP4200AG, /* Senao CAP4200AG */
23 ATH79_MACH_DB120, /* Atheros DB120 reference board */
24 ATH79_MACH_PB44, /* Atheros PB44 reference board */
25 + ATH79_MACH_DIR_600_A1, /* D-Link DIR-600 rev. A1 */
26 + ATH79_MACH_DIR_615_C1, /* D-Link DIR-615 rev. C1 */
27 + ATH79_MACH_DIR_615_E4, /* D-Link DIR-615 rev. E4 */
28 + ATH79_MACH_DIR_825_B1, /* D-Link DIR-825 rev. B1 */
29 + ATH79_MACH_EW_DORIN, /* embedded wireless Dorin Platform */
30 + ATH79_MACH_EW_DORIN_ROUTER, /* embedded wireless Dorin Router Platform */
31 + ATH79_MACH_EAP7660D, /* Senao EAP7660D */
32 + ATH79_MACH_JA76PF, /* jjPlus JA76PF */
33 + ATH79_MACH_JA76PF2, /* jjPlus JA76PF2 */
34 + ATH79_MACH_JWAP003, /* jjPlus JWAP003 */
35 + ATH79_MACH_HORNET_UB, /* ALFA Networks Hornet-UB */
36 + ATH79_MACH_MR600, /* OpenMesh MR600 */
37 + ATH79_MACH_MZK_W04NU, /* Planex MZK-W04NU */
38 + ATH79_MACH_MZK_W300NH, /* Planex MZK-W300NH */
39 + ATH79_MACH_NBG460N, /* Zyxel NBG460N/550N/550NH */
40 + ATH79_MACH_OM2P_HS, /* OpenMesh OM2P-HS */
41 + ATH79_MACH_OM2P_LC, /* OpenMesh OM2P-LC */
42 + ATH79_MACH_OM2P, /* OpenMesh OM2P */
43 + ATH79_MACH_PB42, /* Atheros PB42 */
44 + ATH79_MACH_PB92, /* Atheros PB92 */
45 + ATH79_MACH_RB_411, /* MikroTik RouterBOARD 411/411A/411AH */
46 + ATH79_MACH_RB_411U, /* MikroTik RouterBOARD 411U */
47 + ATH79_MACH_RB_433, /* MikroTik RouterBOARD 433/433AH */
48 + ATH79_MACH_RB_433U, /* MikroTik RouterBOARD 433UAH */
49 + ATH79_MACH_RB_435G, /* MikroTik RouterBOARD 435G */
50 + ATH79_MACH_RB_450G, /* MikroTik RouterBOARD 450G */
51 + ATH79_MACH_RB_450, /* MikroTik RouterBOARD 450 */
52 + ATH79_MACH_RB_493, /* Mikrotik RouterBOARD 493/493AH */
53 + ATH79_MACH_RB_493G, /* Mikrotik RouterBOARD 493G */
54 + ATH79_MACH_RB_750, /* MikroTik RouterBOARD 750 */
55 + ATH79_MACH_RB_750G_R3, /* MikroTik RouterBOARD 750GL */
56 + ATH79_MACH_RB_751, /* MikroTik RouterBOARD 751 */
57 + ATH79_MACH_RB_751G, /* Mikrotik RouterBOARD 751G */
58 + ATH79_MACH_RB_2011G, /* Mikrotik RouterBOARD 2011UAS-2HnD */
59 + ATH79_MACH_RB_2011L, /* Mikrotik RouterBOARD 2011L */
60 + ATH79_MACH_RW2458N, /* Redwave RW2458N */
61 + ATH79_MACH_TEW_632BRP, /* TRENDnet TEW-632BRP */
62 + ATH79_MACH_TEW_673GRU, /* TRENDnet TEW-673GRU */
63 + ATH79_MACH_TEW_712BR, /* TRENDnet TEW-712BR */
64 + ATH79_MACH_TL_MR11U, /* TP-LINK TL-MR11U */
65 + ATH79_MACH_TL_MR3020, /* TP-LINK TL-MR3020 */
66 + ATH79_MACH_TL_MR3040, /* TP-LINK TL-MR3040 */
67 + ATH79_MACH_TL_MR3220, /* TP-LINK TL-MR3220 */
68 + ATH79_MACH_TL_MR3220_V2, /* TP-LINK TL-MR3220 v2 */
69 + ATH79_MACH_TL_MR3420, /* TP-LINK TL-MR3420 */
70 + ATH79_MACH_TL_WA7510N_V1, /* TP-LINK TL-WA7510N v1*/
71 + ATH79_MACH_TL_WA901ND, /* TP-LINK TL-WA901ND */
72 + ATH79_MACH_TL_WA901ND_V2, /* TP-LINK TL-WA901ND v2 */
73 + ATH79_MACH_TL_WDR4300, /* TP-LINK TL-WDR4300 */
74 + ATH79_MACH_TL_WR1041N_V2, /* TP-LINK TL-WR1041N v2 */
75 + ATH79_MACH_TL_WR1043ND, /* TP-LINK TL-WR1043ND */
76 + ATH79_MACH_TL_WR2543N, /* TP-LINK TL-WR2543N/ND */
77 + ATH79_MACH_TL_WR703N, /* TP-LINK TL-WR703N */
78 + ATH79_MACH_TL_WR741ND, /* TP-LINK TL-WR741ND */
79 + ATH79_MACH_TL_WR741ND_V4, /* TP-LINK TL-WR741ND v4*/
80 + ATH79_MACH_TL_WR841N_V1, /* TP-LINK TL-WR841N v1 */
81 + ATH79_MACH_TL_WR841N_V7, /* TP-LINK TL-WR841N/ND v7 */
82 + ATH79_MACH_TL_WR841N_V8, /* TP-LINK TL-WR841N/ND v8 */
83 + ATH79_MACH_TL_WR941ND, /* TP-LINK TL-WR941ND */
84 ATH79_MACH_UBNT_AIRROUTER, /* Ubiquiti AirRouter */
85 ATH79_MACH_UBNT_BULLET_M, /* Ubiquiti Bullet M */
86 + ATH79_MACH_UBNT_LSSR71, /* Ubiquiti LS-SR71 */
87 + ATH79_MACH_UBNT_LSX, /* Ubiquiti LSX */
88 ATH79_MACH_UBNT_NANO_M, /* Ubiquiti NanoStation M */
89 ATH79_MACH_UBNT_ROCKET_M, /* Ubiquiti Rocket M */
90 + ATH79_MACH_UBNT_RSPRO, /* Ubiquiti RouterStation Pro */
91 + ATH79_MACH_UBNT_RS, /* Ubiquiti RouterStation */
92 ATH79_MACH_UBNT_UAP_PRO, /* Ubiquiti UniFi AP Pro */
93 ATH79_MACH_UBNT_UNIFI, /* Ubiquiti Unifi */
94 ATH79_MACH_UBNT_UNIFI_OUTDOOR, /* Ubiquiti UnifiAP Outdoor */
95 ATH79_MACH_UBNT_XM, /* Ubiquiti Networks XM board rev 1.0 */
96 + ATH79_MACH_WHR_G301N, /* Buffalo WHR-G301N */
97 + ATH79_MACH_WHR_HP_G300N, /* Buffalo WHR-HP-G300N */
98 + ATH79_MACH_WHR_HP_GN, /* Buffalo WHR-HP-GN */
99 + ATH79_MACH_WLAE_AG300N, /* Buffalo WLAE-AG300N */
100 + ATH79_MACH_WNDR3700, /* NETGEAR WNDR3700/WNDR3800/WNDRMAC */
101 + ATH79_MACH_WNDR4300, /* NETGEAR WNDR4300 */
102 + ATH79_MACH_WNR2000, /* NETGEAR WNR2000 */
103 + ATH79_MACH_WP543, /* Compex WP543 */
104 + ATH79_MACH_WPE72, /* Compex WPE72 */
105 + ATH79_MACH_WRT160NL, /* Linksys WRT160NL */
106 + ATH79_MACH_WRT400N, /* Linksys WRT400N */
107 + ATH79_MACH_WZR_HP_AG300H, /* Buffalo WZR-HP-AG300H */
108 + ATH79_MACH_WZR_HP_G300NH, /* Buffalo WZR-HP-G300NH */
109 + ATH79_MACH_WZR_HP_G300NH2, /* Buffalo WZR-HP-G300NH2 */
110 + ATH79_MACH_WZR_HP_G450H, /* Buffalo WZR-HP-G450H */
111 + ATH79_MACH_WZR_600DHP, /* Buffalo WZR-600DHP */
112 + ATH79_MACH_ZCN_1523H_2, /* Zcomax ZCN-1523H-2-xx */
113 + ATH79_MACH_ZCN_1523H_5, /* Zcomax ZCN-1523H-5-xx */
114 };
115
116 #endif /* _ATH79_MACHTYPE_H */
117 --- a/arch/mips/ath79/Kconfig
118 +++ b/arch/mips/ath79/Kconfig
119 @@ -2,6 +2,61 @@ if ATH79
120
121 menu "Atheros AR71XX/AR724X/AR913X machine selection"
122
123 +config ATH79_MACH_ALFA_AP96
124 + bool "ALFA Network AP96 board support"
125 + select SOC_AR71XX
126 + select ATH79_DEV_ETH
127 + select ATH79_DEV_GPIO_BUTTONS
128 + select ATH79_DEV_SPI
129 + select ATH79_DEV_USB
130 +
131 +config ATH79_MACH_HORNET_UB
132 + bool "ALFA Network Hornet-UB board support"
133 + select SOC_AR933X
134 + select ATH79_DEV_ETH
135 + select ATH79_DEV_GPIO_BUTTONS
136 + select ATH79_DEV_LEDS_GPIO
137 + select ATH79_DEV_M25P80
138 + select ATH79_DEV_USB
139 + select ATH79_DEV_WMAC
140 +
141 +config ATH79_MACH_ALFA_NX
142 + bool "ALFA Network N2/N5 board support"
143 + select SOC_AR724X
144 + select ATH79_DEV_AP9X_PCI if PCI
145 + select ATH79_DEV_ETH
146 + select ATH79_DEV_GPIO_BUTTONS
147 + select ATH79_DEV_LEDS_GPIO
148 + select ATH79_DEV_M25P80
149 +
150 +config ATH79_MACH_ALL0258N
151 + bool "Allnet ALL0258N support"
152 + select SOC_AR724X
153 + select ATH79_DEV_AP9X_PCI if PCI
154 + select ATH79_DEV_ETH
155 + select ATH79_DEV_GPIO_BUTTONS
156 + select ATH79_DEV_LEDS_GPIO
157 + select ATH79_DEV_M25P80
158 +
159 +config ATH79_MACH_ALL0315N
160 + bool "Allnet ALL0315N support"
161 + select SOC_AR724X
162 + select ATH79_DEV_AP9X_PCI if PCI
163 + select ATH79_DEV_ETH
164 + select ATH79_DEV_GPIO_BUTTONS
165 + select ATH79_DEV_LEDS_GPIO
166 + select ATH79_DEV_M25P80
167 +
168 +config ATH79_MACH_AP113
169 + bool "Atheros AP113 board support"
170 + select SOC_AR724X
171 + select ATH79_DEV_M25P80
172 + select ATH79_DEV_PB9X_PCI if PCI
173 + select ATH79_DEV_GPIO_BUTTONS
174 + select ATH79_DEV_LEDS_GPIO
175 + select ATH79_DEV_USB
176 + select ATH79_DEV_ETH
177 +
178 config ATH79_MACH_AP121
179 bool "Atheros AP121 reference board"
180 select SOC_AR933X
181 @@ -41,6 +96,24 @@ config ATH79_MACH_AP81
182 Say 'Y' here if you want your kernel to support the
183 Atheros AP81 reference board.
184
185 +config ATH79_MACH_AP83
186 + bool "Atheros AP83 board support"
187 + select SOC_AR913X
188 + select ATH79_DEV_GPIO_BUTTONS
189 + select ATH79_DEV_LEDS_GPIO
190 + select ATH79_DEV_USB
191 + select ATH79_DEV_WMAC
192 +
193 +config ATH79_MACH_AP96
194 + bool "Atheros AP96 board support"
195 + select SOC_AR71XX
196 + select ATH79_DEV_ETH
197 + select ATH79_DEV_AP9X_PCI if PCI
198 + select ATH79_DEV_GPIO_BUTTONS
199 + select ATH79_DEV_LEDS_GPIO
200 + select ATH79_DEV_M25P80
201 + select ATH79_DEV_USB
202 +
203 config ATH79_MACH_DB120
204 bool "Atheros DB120 reference board"
205 select SOC_AR934X
206 @@ -56,6 +129,13 @@ config ATH79_MACH_DB120
207 Say 'Y' here if you want your kernel to support the
208 Atheros DB120 reference board.
209
210 +config ATH79_MACH_PB42
211 + bool "Atheros PB42 board support"
212 + select SOC_AR71XX
213 + select ATH79_DEV_ETH
214 + select ATH79_DEV_GPIO_BUTTONS
215 + select ATH79_DEV_M25P80
216 +
217 config ATH79_MACH_PB44
218 bool "Atheros PB44 reference board"
219 select SOC_AR71XX
220 @@ -68,6 +148,497 @@ config ATH79_MACH_PB44
221 Say 'Y' here if you want your kernel to support the
222 Atheros PB44 reference board.
223
224 +config ATH79_MACH_PB92
225 + bool "Atheros PB92 board support"
226 + select SOC_AR724X
227 + select ATH79_DEV_ETH
228 + select ATH79_DEV_GPIO_BUTTONS
229 + select ATH79_DEV_LEDS_GPIO
230 + select ATH79_DEV_PB9X_PCI if PCI
231 + select ATH79_DEV_USB
232 +
233 +config ATH79_MACH_AW_NR580
234 + bool "AzureWave AW-NR580 board support"
235 + select SOC_AR71XX
236 + select ATH79_DEV_ETH
237 + select ATH79_DEV_GPIO_BUTTONS
238 + select ATH79_DEV_LEDS_GPIO
239 + select ATH79_DEV_M25P80
240 +
241 +config ATH79_MACH_WHR_HP_G300N
242 + bool "Buffalo WHR-HP-G300N board support"
243 + select SOC_AR724X
244 + select ATH79_DEV_ETH
245 + select ATH79_DEV_AP9X_PCI if PCI
246 + select ATH79_DEV_GPIO_BUTTONS
247 + select ATH79_DEV_LEDS_GPIO
248 + select ATH79_DEV_M25P80
249 +
250 +config ATH79_MACH_WLAE_AG300N
251 + bool "Buffalo WLAE-AG300N board support"
252 + select SOC_AR71XX
253 + select ATH79_DEV_ETH
254 + select ATH79_DEV_GPIO_BUTTONS
255 + select ATH79_DEV_LEDS_GPIO
256 + select ATH79_DEV_M25P80
257 +
258 +config ATH79_MACH_WZR_HP_AG300H
259 + bool "Buffalo WZR-HP-AG300H board support"
260 + select SOC_AR71XX
261 + select ATH79_DEV_ETH
262 + select ATH79_DEV_GPIO_BUTTONS
263 + select ATH79_DEV_LEDS_GPIO
264 + select ATH79_DEV_M25P80
265 + select ATH79_DEV_USB
266 +
267 +config ATH79_MACH_WZR_HP_G300NH
268 + bool "Buffalo WZR-HP-G300NH board support"
269 + select SOC_AR913X
270 + select ATH79_DEV_ETH
271 + select ATH79_DEV_GPIO_BUTTONS
272 + select ATH79_DEV_LEDS_GPIO
273 + select ATH79_DEV_USB
274 + select ATH79_DEV_WMAC
275 + select RTL8366_SMI
276 +
277 +config ATH79_MACH_WZR_HP_G300NH2
278 + bool "Buffalo WZR-HP-G300NH2 board support"
279 + select SOC_AR724X
280 + select ATH79_DEV_AP9X_PCI if PCI
281 + select ATH79_DEV_ETH
282 + select ATH79_DEV_GPIO_BUTTONS
283 + select ATH79_DEV_LEDS_GPIO
284 + select ATH79_DEV_M25P80
285 + select ATH79_DEV_USB
286 +
287 +config ATH79_MACH_WZR_HP_G450H
288 + bool "Buffalo WZR-HP-G450H board support"
289 + select SOC_AR724X
290 + select ATH79_DEV_ETH
291 + select ATH79_DEV_AP9X_PCI if PCI
292 + select ATH79_DEV_GPIO_BUTTONS
293 + select ATH79_DEV_LEDS_GPIO
294 + select ATH79_DEV_M25P80
295 + select ATH79_DEV_USB
296 +
297 +config ATH79_MACH_WZR_600DHP
298 + bool "Buffalo WZR-600DHP board support"
299 + select SOC_AR71XX
300 + select ATH79_DEV_ETH
301 + select ATH79_DEV_GPIO_BUTTONS
302 + select ATH79_DEV_LEDS_GPIO
303 + select ATH79_DEV_M25P80
304 + select ATH79_DEV_USB
305 +
306 +config ATH79_MACH_WP543
307 + bool "Compex WP543/WPJ543 board support"
308 + select SOC_AR71XX
309 + select ATH79_DEV_ETH
310 + select ATH79_DEV_GPIO_BUTTONS
311 + select ATH79_DEV_LEDS_GPIO
312 + select ATH79_DEV_M25P80
313 + select ATH79_DEV_USB
314 + select MYLOADER
315 +
316 +config ATH79_MACH_WPE72
317 + bool "Compex WPE72/WPE72NX board support"
318 + select SOC_AR724X
319 + select ATH79_DEV_ETH
320 + select ATH79_DEV_GPIO_BUTTONS
321 + select ATH79_DEV_LEDS_GPIO
322 + select ATH79_DEV_M25P80
323 + select ATH79_DEV_USB
324 + select MYLOADER
325 +
326 +config ATH79_MACH_DIR_600_A1
327 + bool "D-Link DIR-600 A1/DIR-615 E4 support"
328 + select SOC_AR724X
329 + select ATH79_DEV_AP9X_PCI if PCI
330 + select ATH79_DEV_ETH
331 + select ATH79_DEV_GPIO_BUTTONS
332 + select ATH79_DEV_LEDS_GPIO
333 + select ATH79_DEV_M25P80
334 + select ATH79_NVRAM
335 +
336 +config ATH79_MACH_DIR_615_C1
337 + bool "D-Link DIR-615 rev. C1 support"
338 + select SOC_AR913X
339 + select ATH79_DEV_ETH
340 + select ATH79_DEV_GPIO_BUTTONS
341 + select ATH79_DEV_LEDS_GPIO
342 + select ATH79_DEV_M25P80
343 + select ATH79_DEV_WMAC
344 + select ATH79_NVRAM
345 +
346 +config ATH79_MACH_DIR_825_B1
347 + bool "D-Link DIR-825 rev. B1 board support"
348 + select SOC_AR71XX
349 + select ATH79_DEV_ETH
350 + select ATH79_DEV_AP9X_PCI if PCI
351 + select ATH79_DEV_GPIO_BUTTONS
352 + select ATH79_DEV_LEDS_GPIO
353 + select ATH79_DEV_M25P80
354 + select ATH79_DEV_USB
355 +
356 +config ATH79_MACH_EW_DORIN
357 + bool "embedded wireless Dorin Platform support"
358 + select SOC_AR933X
359 + select ATH79_DEV_M25P80
360 + select ATH79_DEV_GPIO_BUTTONS
361 + select ATH79_DEV_LEDS_GPIO
362 + select ATH79_DEV_WMAC
363 + select ATH79_DEV_ETH
364 + help
365 + Say 'Y' here if you want your kernel to support the
366 + Dorin Platform from www.80211.de .
367 +
368 +config ATH79_MACH_JA76PF
369 + bool "jjPlus JA76PF board support"
370 + select SOC_AR71XX
371 + select ATH79_DEV_ETH
372 + select ATH79_DEV_GPIO_BUTTONS
373 + select ATH79_DEV_LEDS_GPIO
374 + select ATH79_DEV_M25P80
375 + select ATH79_DEV_USB
376 +
377 +config ATH79_MACH_JWAP003
378 + bool "jjPlus JWAP003 board support"
379 + select SOC_AR71XX
380 + select ATH79_DEV_ETH
381 + select ATH79_DEV_GPIO_BUTTONS
382 + select ATH79_DEV_M25P80
383 + select ATH79_DEV_USB
384 +
385 +config ATH79_MACH_WRT160NL
386 + bool "Linksys WRT160NL board support"
387 + select SOC_AR913X
388 + select ATH79_DEV_ETH
389 + select ATH79_DEV_GPIO_BUTTONS
390 + select ATH79_DEV_LEDS_GPIO
391 + select ATH79_DEV_M25P80
392 + select ATH79_DEV_USB
393 + select ATH79_DEV_WMAC
394 + select ATH79_NVRAM
395 +
396 +config ATH79_MACH_WRT400N
397 + bool "Linksys WRT400N board support"
398 + select SOC_AR71XX
399 + select ATH79_DEV_ETH
400 + select ATH79_DEV_AP9X_PCI if PCI
401 + select ATH79_DEV_GPIO_BUTTONS
402 + select ATH79_DEV_LEDS_GPIO
403 + select ATH79_DEV_M25P80
404 +
405 +config ATH79_MACH_RB4XX
406 + bool "MikroTik RouterBOARD 4xx series support"
407 + select SOC_AR71XX
408 + select ATH79_DEV_ETH
409 + select ATH79_DEV_GPIO_BUTTONS
410 + select ATH79_DEV_LEDS_GPIO
411 + select ATH79_DEV_USB
412 +
413 +config ATH79_MACH_RB750
414 + bool "MikroTik RouterBOARD 750 support"
415 + select SOC_AR724X
416 + select ATH79_DEV_ETH
417 + select ATH79_DEV_AP9X_PCI if PCI
418 + select ATH79_DEV_USB
419 + select ATH79_ROUTERBOOT
420 + select RLE_DECOMPRESS
421 +
422 +config ATH79_MACH_RB2011
423 + bool "MikroTik RouterBOARD 2011 support"
424 + select SOC_AR934x
425 + select ATH79_DEV_ETH
426 + select ATH79_DEV_NFC
427 + select ATH79_DEV_WMAC
428 + select ATH79_ROUTERBOOT
429 +
430 +config ATH79_MACH_WNDR3700
431 + bool "NETGEAR WNDR3700 board support"
432 + select SOC_AR71XX
433 + select ATH79_DEV_AP9X_PCI if PCI
434 + select ATH79_DEV_ETH
435 + select ATH79_DEV_GPIO_BUTTONS
436 + select ATH79_DEV_LEDS_GPIO
437 + select ATH79_DEV_M25P80
438 + select ATH79_DEV_USB
439 +
440 +config ATH79_MACH_WNDR4300
441 + bool "NETGEAR WNDR4300 board support"
442 + select SOC_AR934X
443 + select ATH79_DEV_AP9X_PCI if PCI
444 + select ATH79_DEV_ETH
445 + select ATH79_DEV_GPIO_BUTTONS
446 + select ATH79_DEV_LEDS_GPIO
447 + select ATH79_DEV_NFC
448 + select ATH79_DEV_USB
449 + select ATH79_DEV_WMAC
450 +
451 +config ATH79_MACH_WNR2000
452 + bool "NETGEAR WNR2000 board support"
453 + select SOC_AR913X
454 + select ATH79_DEV_ETH
455 + select ATH79_DEV_GPIO_BUTTONS
456 + select ATH79_DEV_LEDS_GPIO
457 + select ATH79_DEV_M25P80
458 + select ATH79_DEV_WMAC
459 +
460 +config ATH79_MACH_OM2P
461 + bool "OpenMesh OM2P board support"
462 + select SOC_AR724X
463 + select SOC_AR933X
464 + select ATH79_DEV_AP9X_PCI if PCI
465 + select ATH79_DEV_ETH
466 + select ATH79_DEV_GPIO_BUTTONS
467 + select ATH79_DEV_LEDS_GPIO
468 + select ATH79_DEV_M25P80
469 + select ATH79_DEV_WMAC
470 +
471 +config ATH79_MACH_MR600
472 + bool "OpenMesh MR600 board support"
473 + select SOC_AR934X
474 + select ATH79_DEV_AP9X_PCI if PCI
475 + select ATH79_DEV_ETH
476 + select ATH79_DEV_GPIO_BUTTONS
477 + select ATH79_DEV_LEDS_GPIO
478 + select ATH79_DEV_M25P80
479 + select ATH79_DEV_WMAC
480 +
481 +config ATH79_MACH_MZK_W04NU
482 + bool "Planex MZK-W04NU board support"
483 + select SOC_AR913X
484 + select ATH79_DEV_ETH
485 + select ATH79_DEV_GPIO_BUTTONS
486 + select ATH79_DEV_LEDS_GPIO
487 + select ATH79_DEV_M25P80
488 + select ATH79_DEV_USB
489 + select ATH79_DEV_WMAC
490 +
491 +config ATH79_MACH_MZK_W300NH
492 + bool "Planex MZK-W300NH board support"
493 + select SOC_AR913X
494 + select ATH79_DEV_ETH
495 + select ATH79_DEV_GPIO_BUTTONS
496 + select ATH79_DEV_LEDS_GPIO
497 + select ATH79_DEV_M25P80
498 + select ATH79_DEV_WMAC
499 +
500 +config ATH79_MACH_RW2458N
501 + bool "Redwave RW2458N board support"
502 + select SOC_AR724X
503 + select ATH79_DEV_ETH
504 + select ATH79_DEV_AP9X_PCI if PCI
505 + select ATH79_DEV_GPIO_BUTTONS
506 + select ATH79_DEV_LEDS_GPIO
507 + select ATH79_DEV_M25P80
508 + select ATH79_DEV_USB
509 +
510 +config ATH79_MACH_CAP4200AG
511 + bool "Senao CAP4200AG support"
512 + select SOC_AR934X
513 + select ATH79_DEV_AP9X_PCI if PCI
514 + select ATH79_DEV_ETH
515 + select ATH79_DEV_GPIO_BUTTONS
516 + select ATH79_DEV_LEDS_GPIO
517 + select ATH79_DEV_M25P80
518 + select ATH79_DEV_WMAC
519 +
520 +config ATH79_MACH_EAP7660D
521 + bool "Senao EAP7660D support"
522 + select SOC_AR71XX
523 + select ATH79_DEV_ETH
524 + select ATH79_DEV_GPIO_BUTTONS
525 + select ATH79_DEV_LEDS_GPIO
526 + select ATH79_DEV_M25P80
527 +
528 +config ATH79_MACH_TL_MR11U
529 + bool "TP-LINK TL-MR11U/TL-MR3040 support"
530 + select SOC_AR933X
531 + select ATH79_DEV_ETH
532 + select ATH79_DEV_GPIO_BUTTONS
533 + select ATH79_DEV_LEDS_GPIO
534 + select ATH79_DEV_M25P80
535 + select ATH79_DEV_USB
536 + select ATH79_DEV_WMAC
537 +
538 +config ATH79_MACH_TL_MR3020
539 + bool "TP-LINK TL-MR3020 support"
540 + select SOC_AR933X
541 + select ATH79_DEV_ETH
542 + select ATH79_DEV_GPIO_BUTTONS
543 + select ATH79_DEV_LEDS_GPIO
544 + select ATH79_DEV_M25P80
545 + select ATH79_DEV_USB
546 + select ATH79_DEV_WMAC
547 +
548 +config ATH79_MACH_TL_MR3X20
549 + bool "TP-LINK TL-MR3220/3420 support"
550 + select SOC_AR724X
551 + select ATH79_DEV_AP9X_PCI if PCI
552 + select ATH79_DEV_ETH
553 + select ATH79_DEV_GPIO_BUTTONS
554 + select ATH79_DEV_LEDS_GPIO
555 + select ATH79_DEV_M25P80
556 + select ATH79_DEV_USB
557 +
558 +config ATH79_MACH_TL_WA901ND
559 + bool "TP-LINK TL-WA901ND/TL-WA7510N support"
560 + select SOC_AR724X
561 + select ATH79_DEV_AP9X_PCI if PCI
562 + select ATH79_DEV_ETH
563 + select ATH79_DEV_GPIO_BUTTONS
564 + select ATH79_DEV_LEDS_GPIO
565 + select ATH79_DEV_M25P80
566 +
567 +config ATH79_MACH_TL_WA901ND_V2
568 + bool "TP-LINK TL-WA901ND v2 support"
569 + select SOC_AR913X
570 + select ATH79_DEV_ETH
571 + select ATH79_DEV_GPIO_BUTTONS
572 + select ATH79_DEV_LEDS_GPIO
573 + select ATH79_DEV_M25P80
574 + select ATH79_DEV_WMAC
575 +
576 +config ATH79_MACH_TL_WDR4300
577 + bool "TP-LINK TL-WDR3600/4300/4310 board support"
578 + select SOC_AR934X
579 + select ATH79_DEV_AP9X_PCI if PCI
580 + select ATH79_DEV_ETH
581 + select ATH79_DEV_GPIO_BUTTONS
582 + select ATH79_DEV_LEDS_GPIO
583 + select ATH79_DEV_M25P80
584 + select ATH79_DEV_USB
585 + select ATH79_DEV_WMAC
586 +
587 +config ATH79_MACH_TL_WR703N
588 + bool "TP-LINK TL-WR703N support"
589 + select SOC_AR933X
590 + select ATH79_DEV_ETH
591 + select ATH79_DEV_GPIO_BUTTONS
592 + select ATH79_DEV_LEDS_GPIO
593 + select ATH79_DEV_M25P80
594 + select ATH79_DEV_USB
595 + select ATH79_DEV_WMAC
596 +
597 +config ATH79_MACH_TL_WR741ND
598 + bool "TP-LINK TL-WR741ND support"
599 + select SOC_AR724X
600 + select ATH79_DEV_AP9X_PCI if PCI
601 + select ATH79_DEV_ETH
602 + select ATH79_DEV_GPIO_BUTTONS
603 + select ATH79_DEV_LEDS_GPIO
604 + select ATH79_DEV_M25P80
605 +
606 +config ATH79_MACH_TL_WR741ND_V4
607 + bool "TP-LINK TL-WR741ND v4/TL-MR3220 v2 support"
608 + select SOC_AR933X
609 + select ATH79_DEV_ETH
610 + select ATH79_DEV_GPIO_BUTTONS
611 + select ATH79_DEV_LEDS_GPIO
612 + select ATH79_DEV_M25P80
613 + select ATH79_DEV_USB
614 + select ATH79_DEV_WMAC
615 +
616 +config ATH79_MACH_TL_WR841N_V1
617 + bool "TP-LINK TL-WR841N v1 support"
618 + select SOC_AR71XX
619 + select ATH79_DEV_DSA
620 + select ATH79_DEV_ETH
621 + select ATH79_DEV_GPIO_BUTTONS
622 + select ATH79_DEV_LEDS_GPIO
623 + select ATH79_DEV_M25P80
624 +
625 +config ATH79_MACH_TL_WR841N_V8
626 + bool "TP-LINK TL-WR841N/ND v8 support"
627 + select SOC_AR934X
628 + select ATH79_DEV_ETH
629 + select ATH79_DEV_GPIO_BUTTONS
630 + select ATH79_DEV_LEDS_GPIO
631 + select ATH79_DEV_M25P80
632 + select ATH79_DEV_WMAC
633 +
634 +config ATH79_MACH_TL_WR941ND
635 + bool "TP-LINK TL-WR941ND support"
636 + select SOC_AR913X
637 + select ATH79_DEV_DSA
638 + select ATH79_DEV_ETH
639 + select ATH79_DEV_GPIO_BUTTONS
640 + select ATH79_DEV_LEDS_GPIO
641 + select ATH79_DEV_M25P80
642 + select ATH79_DEV_WMAC
643 +
644 +config ATH79_MACH_TL_WR1041N_V2
645 + bool "TP-LINK TL-WR1041N v2 support"
646 + select SOC_AR934X
647 + select ATH79_DEV_AP9X_PCI if PCI
648 + select ATH79_DEV_ETH
649 + select ATH79_DEV_GPIO_BUTTONS
650 + select ATH79_DEV_LEDS_GPIO
651 + select ATH79_DEV_M25P80
652 + select ATH79_DEV_USB
653 + select ATH79_DEV_WMAC
654 +
655 +config ATH79_MACH_TL_WR1043ND
656 + bool "TP-LINK TL-WR1043ND support"
657 + select SOC_AR913X
658 + select ATH79_DEV_ETH
659 + select ATH79_DEV_GPIO_BUTTONS
660 + select ATH79_DEV_LEDS_GPIO
661 + select ATH79_DEV_M25P80
662 + select ATH79_DEV_USB
663 + select ATH79_DEV_WMAC
664 +
665 +config ATH79_MACH_TL_WR2543N
666 + bool "TP-LINK TL-WR2543N/ND support"
667 + select SOC_AR724X
668 + select ATH79_DEV_AP9X_PCI if PCI
669 + select ATH79_DEV_ETH
670 + select ATH79_DEV_GPIO_BUTTONS
671 + select ATH79_DEV_LEDS_GPIO
672 + select ATH79_DEV_M25P80
673 + select ATH79_DEV_USB
674 +
675 +config ATH79_MACH_TEW_632BRP
676 + bool "TRENDnet TEW-632BRP support"
677 + select SOC_AR913X
678 + select ATH79_DEV_ETH
679 + select ATH79_DEV_GPIO_BUTTONS
680 + select ATH79_DEV_LEDS_GPIO
681 + select ATH79_DEV_M25P80
682 + select ATH79_DEV_WMAC
683 + select ATH79_NVRAM
684 +
685 +config ATH79_MACH_TEW_673GRU
686 + bool "TRENDnet TEW-673GRU support"
687 + select SOC_AR71XX
688 + select ATH79_DEV_AP9X_PCI if PCI
689 + select ATH79_DEV_ETH
690 + select ATH79_DEV_GPIO_BUTTONS
691 + select ATH79_DEV_LEDS_GPIO
692 + select ATH79_DEV_M25P80
693 + select ATH79_DEV_USB
694 + select ATH79_NVRAM
695 +
696 +config ATH79_MACH_TEW_712BR
697 + bool "TRENDnet TEW-712BR support"
698 + select SOC_AR933X
699 + select ATH79_DEV_ETH
700 + select ATH79_DEV_GPIO_BUTTONS
701 + select ATH79_DEV_LEDS_GPIO
702 + select ATH79_DEV_M25P80
703 + select ATH79_DEV_WMAC
704 + select ATH79_NVRAM
705 +
706 +config ATH79_MACH_UBNT
707 + bool "Ubiquiti AR71xx based boards support"
708 + select SOC_AR71XX
709 + select ATH79_DEV_ETH
710 + select ATH79_DEV_GPIO_BUTTONS
711 + select ATH79_DEV_LEDS_GPIO
712 + select ATH79_DEV_M25P80
713 + select ATH79_DEV_USB
714 +
715 config ATH79_MACH_UBNT_XM
716 bool "Ubiquiti Networks XM/UniFi boards"
717 select SOC_AR724X
718 @@ -83,6 +654,24 @@ config ATH79_MACH_UBNT_XM
719 Say 'Y' here if you want your kernel to support the
720 Ubiquiti Networks XM (rev 1.0) board.
721
722 +config ATH79_MACH_ZCN_1523H
723 + bool "Zcomax ZCN-1523H support"
724 + select SOC_AR724X
725 + select ATH79_DEV_AP9X_PCI if PCI
726 + select ATH79_DEV_ETH
727 + select ATH79_DEV_GPIO_BUTTONS
728 + select ATH79_DEV_LEDS_GPIO
729 + select ATH79_DEV_M25P80
730 +
731 +config ATH79_MACH_NBG460N
732 + bool "Zyxel NBG460N/550N/550NH board support"
733 + select SOC_AR913X
734 + select ATH79_DEV_ETH
735 + select ATH79_DEV_GPIO_BUTTONS
736 + select ATH79_DEV_LEDS_GPIO
737 + select ATH79_DEV_M25P80
738 + select ATH79_DEV_WMAC
739 +
740 endmenu
741
742 config SOC_AR71XX
743 @@ -118,10 +707,6 @@ config SOC_QCA955X
744 select PCI_AR724X if PCI
745 def_bool n
746
747 -config ATH79_DEV_M25P80
748 - select ATH79_DEV_SPI
749 - def_bool n
750 -
751 config ATH79_DEV_AP9X_PCI
752 select ATH79_PCI_ATH9K_FIXUP
753 def_bool n
754 @@ -132,7 +717,14 @@ config ATH79_DEV_DSA
755 config ATH79_DEV_ETH
756 def_bool n
757
758 -config PCI_AR724X
759 +config ATH79_DEV_M25P80
760 + select ATH79_DEV_SPI
761 + def_bool n
762 +
763 +config ATH79_DEV_DSA
764 + def_bool n
765 +
766 +config ATH79_DEV_ETH
767 def_bool n
768
769 config ATH79_DEV_GPIO_BUTTONS
770 @@ -164,4 +756,7 @@ config ATH79_PCI_ATH9K_FIXUP
771 config ATH79_ROUTERBOOT
772 def_bool n
773
774 +config PCI_AR724X
775 + def_bool n
776 +
777 endif
778 --- a/arch/mips/ath79/Makefile
779 +++ b/arch/mips/ath79/Makefile
780 @@ -38,9 +38,72 @@ obj-$(CONFIG_ATH79_ROUTERBOOT) += route
781 #
782 # Machines
783 #
784 +obj-$(CONFIG_ATH79_MACH_ALFA_AP96) += mach-alfa-ap96.o
785 +obj-$(CONFIG_ATH79_MACH_ALFA_NX) += mach-alfa-nx.o
786 +obj-$(CONFIG_ATH79_MACH_ALL0258N) += mach-all0258n.o
787 +obj-$(CONFIG_ATH79_MACH_ALL0315N) += mach-all0315n.o
788 +obj-$(CONFIG_ATH79_MACH_AP113) += mach-ap113.o
789 obj-$(CONFIG_ATH79_MACH_AP121) += mach-ap121.o
790 obj-$(CONFIG_ATH79_MACH_AP136) += mach-ap136.o
791 obj-$(CONFIG_ATH79_MACH_AP81) += mach-ap81.o
792 +obj-$(CONFIG_ATH79_MACH_AP83) += mach-ap83.o
793 +obj-$(CONFIG_ATH79_MACH_AP96) += mach-ap96.o
794 +obj-$(CONFIG_ATH79_MACH_AW_NR580) += mach-aw-nr580.o
795 +obj-$(CONFIG_ATH79_MACH_CAP4200AG) += mach-cap4200ag.o
796 obj-$(CONFIG_ATH79_MACH_DB120) += mach-db120.o
797 +obj-$(CONFIG_ATH79_MACH_DIR_600_A1) += mach-dir-600-a1.o
798 +obj-$(CONFIG_ATH79_MACH_DIR_615_C1) += mach-dir-615-c1.o
799 +obj-$(CONFIG_ATH79_MACH_DIR_825_B1) += mach-dir-825-b1.o
800 +obj-$(CONFIG_ATH79_MACH_EW_DORIN) += mach-ew-dorin.o
801 +obj-$(CONFIG_ATH79_MACH_EAP7660D) += mach-eap7660d.o
802 +obj-$(CONFIG_ATH79_MACH_JA76PF) += mach-ja76pf.o
803 +obj-$(CONFIG_ATH79_MACH_JWAP003) += mach-jwap003.o
804 +obj-$(CONFIG_ATH79_MACH_HORNET_UB) += mach-hornet-ub.o
805 +obj-$(CONFIG_ATH79_MACH_MR600) += mach-mr600.o
806 +obj-$(CONFIG_ATH79_MACH_MZK_W04NU) += mach-mzk-w04nu.o
807 +obj-$(CONFIG_ATH79_MACH_MZK_W300NH) += mach-mzk-w300nh.o
808 +obj-$(CONFIG_ATH79_MACH_NBG460N) += mach-nbg460n.o
809 +obj-$(CONFIG_ATH79_MACH_OM2P) += mach-om2p.o
810 +obj-$(CONFIG_ATH79_MACH_PB42) += mach-pb42.o
811 obj-$(CONFIG_ATH79_MACH_PB44) += mach-pb44.o
812 +obj-$(CONFIG_ATH79_MACH_PB92) += mach-pb92.o
813 +obj-$(CONFIG_ATH79_MACH_RB4XX) += mach-rb4xx.o
814 +obj-$(CONFIG_ATH79_MACH_RB750) += mach-rb750.o
815 +obj-$(CONFIG_ATH79_MACH_RB2011) += mach-rb2011.o
816 +obj-$(CONFIG_ATH79_MACH_RW2458N) += mach-rw2458n.o
817 +obj-$(CONFIG_ATH79_MACH_TEW_632BRP) += mach-tew-632brp.o
818 +obj-$(CONFIG_ATH79_MACH_TEW_673GRU) += mach-tew-673gru.o
819 +obj-$(CONFIG_ATH79_MACH_TEW_712BR) += mach-tew-712br.o
820 +obj-$(CONFIG_ATH79_MACH_TL_MR11U) += mach-tl-mr11u.o
821 +obj-$(CONFIG_ATH79_MACH_TL_MR3020) += mach-tl-mr3020.o
822 +obj-$(CONFIG_ATH79_MACH_TL_MR3X20) += mach-tl-mr3x20.o
823 +obj-$(CONFIG_ATH79_MACH_TL_WA901ND) += mach-tl-wa901nd.o
824 +obj-$(CONFIG_ATH79_MACH_TL_WA901ND_V2) += mach-tl-wa901nd-v2.o
825 +obj-$(CONFIG_ATH79_MACH_TL_WDR4300) += mach-tl-wdr4300.o
826 +obj-$(CONFIG_ATH79_MACH_TL_WR741ND) += mach-tl-wr741nd.o
827 +obj-$(CONFIG_ATH79_MACH_TL_WR741ND_V4) += mach-tl-wr741nd-v4.o
828 +obj-$(CONFIG_ATH79_MACH_TL_WR841N_V1) += mach-tl-wr841n.o
829 +obj-$(CONFIG_ATH79_MACH_TL_WR841N_V8) += mach-tl-wr841n-v8.o
830 +obj-$(CONFIG_ATH79_MACH_TL_WR941ND) += mach-tl-wr941nd.o
831 +obj-$(CONFIG_ATH79_MACH_TL_WR1041N_V2) += mach-tl-wr1041n-v2.o
832 +obj-$(CONFIG_ATH79_MACH_TL_WR1043ND) += mach-tl-wr1043nd.o
833 +obj-$(CONFIG_ATH79_MACH_TL_WR2543N) += mach-tl-wr2543n.o
834 +obj-$(CONFIG_ATH79_MACH_TL_WR703N) += mach-tl-wr703n.o
835 +obj-$(CONFIG_ATH79_MACH_UBNT) += mach-ubnt.o
836 obj-$(CONFIG_ATH79_MACH_UBNT_XM) += mach-ubnt-xm.o
837 +obj-$(CONFIG_ATH79_MACH_WHR_HP_G300N) += mach-whr-hp-g300n.o
838 +obj-$(CONFIG_ATH79_MACH_WLAE_AG300N) += mach-wlae-ag300n.o
839 +obj-$(CONFIG_ATH79_MACH_WNDR3700) += mach-wndr3700.o
840 +obj-$(CONFIG_ATH79_MACH_WNDR4300) += mach-wndr4300.o
841 +obj-$(CONFIG_ATH79_MACH_WNR2000) += mach-wnr2000.o
842 +obj-$(CONFIG_ATH79_MACH_WP543) += mach-wp543.o
843 +obj-$(CONFIG_ATH79_MACH_WPE72) += mach-wpe72.o
844 +obj-$(CONFIG_ATH79_MACH_WRT160NL) += mach-wrt160nl.o
845 +obj-$(CONFIG_ATH79_MACH_WRT400N) += mach-wrt400n.o
846 +obj-$(CONFIG_ATH79_MACH_WZR_HP_G300NH) += mach-wzr-hp-g300nh.o
847 +obj-$(CONFIG_ATH79_MACH_WZR_HP_G300NH2) += mach-wzr-hp-g300nh2.o
848 +obj-$(CONFIG_ATH79_MACH_WZR_HP_AG300H) += mach-wzr-hp-ag300h.o
849 +obj-$(CONFIG_ATH79_MACH_WZR_HP_G450H) += mach-wzr-hp-g450h.o
850 +obj-$(CONFIG_ATH79_MACH_WZR_600DHP) += mach-wzr-hp-ag300h.o
851 +obj-$(CONFIG_ATH79_MACH_ZCN_1523H) += mach-zcn-1523h.o
852 +
853 --- a/arch/mips/ath79/prom.c
854 +++ b/arch/mips/ath79/prom.c
855 @@ -180,6 +180,10 @@ void __init prom_init(void)
856 ath79_prom_append_cmdline("board", env);
857 }
858 }
859 +
860 + if (strstr(arcs_cmdline, "board=750Gr3") ||
861 + strstr(arcs_cmdline, "board=2011L"))
862 + ath79_prom_append_cmdline("console", "ttyS0,115200");
863 }
864
865 void __init prom_free_prom_memory(void)