ar71xx: support for D-LINK DIR-615 rev. E4
[openwrt/openwrt.git] / target / linux / ar71xx / patches-3.2 / 610-MIPS-ath79-openwrt-machines.patch
1 --- a/arch/mips/ath79/machtypes.h
2 +++ b/arch/mips/ath79/machtypes.h
3 @@ -16,17 +16,81 @@
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_AP113, /* Atheros AP113 reference board */
11 ATH79_MACH_AP121, /* Atheros AP121 reference board */
12 ATH79_MACH_AP121_MINI, /* Atheros AP121-MINI reference board */
13 ATH79_MACH_AP81, /* Atheros AP81 reference board */
14 + ATH79_MACH_AP83, /* Atheros AP83 */
15 + ATH79_MACH_AP96, /* Atheros AP96 */
16 + ATH79_MACH_AW_NR580, /* AzureWave AW-NR580 */
17 ATH79_MACH_DB120, /* Atheros DB120 reference board */
18 ATH79_MACH_PB44, /* Atheros PB44 reference board */
19 + ATH79_MACH_DIR_600_A1, /* D-Link DIR-600 rev. A1 */
20 + ATH79_MACH_DIR_615_C1, /* D-Link DIR-615 rev. C1 */
21 + ATH79_MACH_DIR_615_E4, /* D-Link DIR-615 rev. E4 */
22 + ATH79_MACH_DIR_825_B1, /* D-Link DIR-825 rev. B1 */
23 + ATH79_MACH_EAP7660D, /* Senao EAP7660D */
24 + ATH79_MACH_JA76PF, /* jjPlus JA76PF */
25 + ATH79_MACH_JWAP003, /* jjPlus JWAP003 */
26 + ATH79_MACH_HORNET_UB, /* ALFA Networks Hornet-UB */
27 + ATH79_MACH_MZK_W04NU, /* Planex MZK-W04NU */
28 + ATH79_MACH_MZK_W300NH, /* Planex MZK-W300NH */
29 + ATH79_MACH_NBG460N, /* Zyxel NBG460N/550N/550NH */
30 + ATH79_MACH_OM2P, /* OpenMesh OM2P */
31 + ATH79_MACH_PB42, /* Atheros PB42 */
32 + ATH79_MACH_PB92, /* Atheros PB92 */
33 + ATH79_MACH_RB_411, /* MikroTik RouterBOARD 411/411A/411AH */
34 + ATH79_MACH_RB_411U, /* MikroTik RouterBOARD 411U */
35 + ATH79_MACH_RB_433, /* MikroTik RouterBOARD 433/433AH */
36 + ATH79_MACH_RB_433U, /* MikroTik RouterBOARD 433UAH */
37 + ATH79_MACH_RB_450G, /* MikroTik RouterBOARD 450G */
38 + ATH79_MACH_RB_450, /* MikroTik RouterBOARD 450 */
39 + ATH79_MACH_RB_493, /* Mikrotik RouterBOARD 493/493AH */
40 + ATH79_MACH_RB_493G, /* Mikrotik RouterBOARD 493G */
41 + ATH79_MACH_RB_750, /* MikroTik RouterBOARD 750 */
42 + ATH79_MACH_RW2458N, /* Redwave RW2458N */
43 + ATH79_MACH_TEW_632BRP, /* TRENDnet TEW-632BRP */
44 + ATH79_MACH_TL_MR11U, /* TP-LINK TL-MR11U */
45 + ATH79_MACH_TL_MR3020, /* TP-LINK TL-MR3020 */
46 + ATH79_MACH_TL_MR3220, /* TP-LINK TL-MR3220 */
47 + ATH79_MACH_TL_MR3420, /* TP-LINK TL-MR3420 */
48 + ATH79_MACH_TL_WA901ND, /* TP-LINK TL-WA901ND */
49 + ATH79_MACH_TL_WA901ND_V2, /* TP-LINK TL-WA901ND v2 */
50 + ATH79_MACH_TL_WR1043ND, /* TP-LINK TL-WR1041ND */
51 + ATH79_MACH_TL_WR2543N, /* TP-LINK TL-WR2543N/ND */
52 + ATH79_MACH_TL_WR703N, /* TP-LINK TL-WR703N */
53 + ATH79_MACH_TL_WR741ND, /* TP-LINK TL-WR741ND */
54 + ATH79_MACH_TL_WR741ND_V4, /* TP-LINK TL-WR741ND v4*/
55 + ATH79_MACH_TL_WR841N_V1, /* TP-LINK TL-WR841N v1 */
56 + ATH79_MACH_TL_WR841N_V7, /* TP-LINK TL-WR841N/ND v7 */
57 + ATH79_MACH_TL_WR941ND, /* TP-LINK TL-WR941ND */
58 ATH79_MACH_UBNT_AIRROUTER, /* Ubiquiti AirRouter */
59 ATH79_MACH_UBNT_BULLET_M, /* Ubiquiti Bullet M */
60 + ATH79_MACH_UBNT_LSSR71, /* Ubiquiti LS-SR71 */
61 + ATH79_MACH_UBNT_LSX, /* Ubiquiti LSX */
62 ATH79_MACH_UBNT_NANO_M, /* Ubiquiti NanoStation M */
63 ATH79_MACH_UBNT_ROCKET_M, /* Ubiquiti Rocket M */
64 + ATH79_MACH_UBNT_RSPRO, /* Ubiquiti RouterStation Pro */
65 + ATH79_MACH_UBNT_RS, /* Ubiquiti RouterStation */
66 ATH79_MACH_UBNT_UNIFI, /* Ubiquiti Unifi */
67 ATH79_MACH_UBNT_XM, /* Ubiquiti Networks XM board rev 1.0 */
68 + ATH79_MACH_WHR_G301N, /* Buffalo WHR-G301N */
69 + ATH79_MACH_WHR_HP_G300N, /* Buffalo WHR-HP-G300N */
70 + ATH79_MACH_WHR_HP_GN, /* Buffalo WHR-HP-GN */
71 + ATH79_MACH_WNDR3700, /* NETGEAR WNDR3700/WNDR3800/WNDRMAC */
72 + ATH79_MACH_WNR2000, /* NETGEAR WNR2000 */
73 + ATH79_MACH_WP543, /* Compex WP543 */
74 + ATH79_MACH_WPE72, /* Compex WPE72 */
75 + ATH79_MACH_WRT160NL, /* Linksys WRT160NL */
76 + ATH79_MACH_WRT400N, /* Linksys WRT400N */
77 + ATH79_MACH_WZR_HP_AG300H, /* Buffalo WZR-HP-AG300H */
78 + ATH79_MACH_WZR_HP_G300NH, /* Buffalo WZR-HP-G300NH */
79 + ATH79_MACH_WZR_HP_G300NH2, /* Buffalo WZR-HP-G300NH2 */
80 + ATH79_MACH_WZR_HP_G450H, /* Buffalo WZR-HP-G450H */
81 + ATH79_MACH_ZCN_1523H_2, /* Zcomax ZCN-1523H-2-xx */
82 };
83
84 #endif /* _ATH79_MACHTYPE_H */
85 --- a/arch/mips/ath79/Kconfig
86 +++ b/arch/mips/ath79/Kconfig
87 @@ -2,6 +2,52 @@ if ATH79
88
89 menu "Atheros AR71XX/AR724X/AR913X machine selection"
90
91 +config ATH79_MACH_ALFA_AP96
92 + bool "ALFA Network AP96 board support"
93 + select SOC_AR71XX
94 + select ATH79_DEV_ETH
95 + select ATH79_DEV_GPIO_BUTTONS
96 + select ATH79_DEV_SPI
97 + select ATH79_DEV_USB
98 +
99 +config ATH79_MACH_HORNET_UB
100 + bool "ALFA Network Hornet-UB board support"
101 + select SOC_AR933X
102 + select ATH79_DEV_ETH
103 + select ATH79_DEV_GPIO_BUTTONS
104 + select ATH79_DEV_LEDS_GPIO
105 + select ATH79_DEV_M25P80
106 + select ATH79_DEV_USB
107 + select ATH79_DEV_WMAC
108 +
109 +config ATH79_MACH_ALFA_NX
110 + bool "ALFA Network N2/N5 board support"
111 + select SOC_AR724X
112 + select ATH79_DEV_AP9X_PCI if PCI
113 + select ATH79_DEV_ETH
114 + select ATH79_DEV_GPIO_BUTTONS
115 + select ATH79_DEV_LEDS_GPIO
116 + select ATH79_DEV_M25P80
117 +
118 +config ATH79_MACH_ALL0258N
119 + bool "Allnet ALL0258N support"
120 + select SOC_AR724X
121 + select ATH79_DEV_AP9X_PCI if PCI
122 + select ATH79_DEV_ETH
123 + select ATH79_DEV_GPIO_BUTTONS
124 + select ATH79_DEV_LEDS_GPIO
125 + select ATH79_DEV_M25P80
126 +
127 +config ATH79_MACH_AP113
128 + bool "Atheros AP113 board support"
129 + select SOC_AR724X
130 + select ATH79_DEV_M25P80
131 + select ATH79_DEV_PB9X_PCI if PCI
132 + select ATH79_DEV_GPIO_BUTTONS
133 + select ATH79_DEV_LEDS_GPIO
134 + select ATH79_DEV_USB
135 + select ATH79_DEV_ETH
136 +
137 config ATH79_MACH_AP121
138 bool "Atheros AP121 reference board"
139 select SOC_AR933X
140 @@ -28,6 +74,36 @@ config ATH79_MACH_AP81
141 Say 'Y' here if you want your kernel to support the
142 Atheros AP81 reference board.
143
144 +config ATH79_MACH_AP83
145 + bool "Atheros AP83 board support"
146 + select SOC_AR913X
147 + select ATH79_DEV_GPIO_BUTTONS
148 + select ATH79_DEV_LEDS_GPIO
149 + select ATH79_DEV_USB
150 + select ATH79_DEV_WMAC
151 +
152 +config ATH79_MACH_AP96
153 + bool "Atheros AP96 board support"
154 + select SOC_AR71XX
155 + select ATH79_DEV_ETH
156 + select ATH79_DEV_AP9X_PCI if PCI
157 + select ATH79_DEV_GPIO_BUTTONS
158 + select ATH79_DEV_LEDS_GPIO
159 + select ATH79_DEV_M25P80
160 + select ATH79_DEV_USB
161 +
162 +config ATH79_MACH_AP121
163 + bool "Atheros AP121 reference board"
164 + select SOC_AR933X
165 + select ATH79_DEV_GPIO_BUTTONS
166 + select ATH79_DEV_LEDS_GPIO
167 + select ATH79_DEV_SPI
168 + select ATH79_DEV_USB
169 + select ATH79_DEV_WMAC
170 + help
171 + Say 'Y' here if you want your kernel to support the
172 + Atheros AP121 reference board.
173 +
174 config ATH79_MACH_DB120
175 bool "Atheros DB120 reference board"
176 select SOC_AR934X
177 @@ -42,6 +118,13 @@ config ATH79_MACH_DB120
178 Say 'Y' here if you want your kernel to support the
179 Atheros DB120 reference board.
180
181 +config ATH79_MACH_PB42
182 + bool "Atheros PB42 board support"
183 + select SOC_AR71XX
184 + select ATH79_DEV_ETH
185 + select ATH79_DEV_GPIO_BUTTONS
186 + select ATH79_DEV_M25P80
187 +
188 config ATH79_MACH_PB44
189 bool "Atheros PB44 reference board"
190 select SOC_AR71XX
191 @@ -54,6 +137,379 @@ config ATH79_MACH_PB44
192 Say 'Y' here if you want your kernel to support the
193 Atheros PB44 reference board.
194
195 +config ATH79_MACH_PB92
196 + bool "Atheros PB92 board support"
197 + select SOC_AR724X
198 + select ATH79_DEV_ETH
199 + select ATH79_DEV_GPIO_BUTTONS
200 + select ATH79_DEV_LEDS_GPIO
201 + select ATH79_DEV_PB9X_PCI if PCI
202 + select ATH79_DEV_USB
203 +
204 +config ATH79_MACH_AW_NR580
205 + bool "AzureWave AW-NR580 board support"
206 + select SOC_AR71XX
207 + select ATH79_DEV_ETH
208 + select ATH79_DEV_GPIO_BUTTONS
209 + select ATH79_DEV_LEDS_GPIO
210 + select ATH79_DEV_M25P80
211 +
212 +config ATH79_MACH_WHR_HP_G300N
213 + bool "Buffalo WHR-HP-G300N board support"
214 + select SOC_AR724X
215 + select ATH79_DEV_ETH
216 + select ATH79_DEV_AP9X_PCI if PCI
217 + select ATH79_DEV_GPIO_BUTTONS
218 + select ATH79_DEV_LEDS_GPIO
219 + select ATH79_DEV_M25P80
220 +
221 +config ATH79_MACH_WZR_HP_AG300H
222 + bool "Buffalo WZR-HP-AG300H board support"
223 + select SOC_AR71XX
224 + select ATH79_DEV_ETH
225 + select ATH79_DEV_GPIO_BUTTONS
226 + select ATH79_DEV_LEDS_GPIO
227 + select ATH79_DEV_M25P80
228 + select ATH79_DEV_USB
229 +
230 +config ATH79_MACH_WZR_HP_G300NH
231 + bool "Buffalo WZR-HP-G300NH board support"
232 + select SOC_AR913X
233 + select ATH79_DEV_ETH
234 + select ATH79_DEV_GPIO_BUTTONS
235 + select ATH79_DEV_LEDS_GPIO
236 + select ATH79_DEV_USB
237 + select ATH79_DEV_WMAC
238 + select RTL8366_SMI
239 +
240 +config ATH79_MACH_WZR_HP_G300NH2
241 + bool "Buffalo WZR-HP-G300NH2 board support"
242 + select SOC_AR724X
243 + select ATH79_DEV_AP9X_PCI if PCI
244 + select ATH79_DEV_ETH
245 + select ATH79_DEV_GPIO_BUTTONS
246 + select ATH79_DEV_LEDS_GPIO
247 + select ATH79_DEV_M25P80
248 + select ATH79_DEV_USB
249 +
250 +config ATH79_MACH_WZR_HP_G450H
251 + bool "Buffalo WZR-HP-G450H board support"
252 + select SOC_AR724X
253 + select ATH79_DEV_ETH
254 + select ATH79_DEV_AP9X_PCI if PCI
255 + select ATH79_DEV_GPIO_BUTTONS
256 + select ATH79_DEV_LEDS_GPIO
257 + select ATH79_DEV_M25P80
258 + select ATH79_DEV_USB
259 +
260 +config ATH79_MACH_WP543
261 + bool "Compex WP543/WPJ543 board support"
262 + select SOC_AR71XX
263 + select ATH79_DEV_ETH
264 + select ATH79_DEV_GPIO_BUTTONS
265 + select ATH79_DEV_LEDS_GPIO
266 + select ATH79_DEV_M25P80
267 + select ATH79_DEV_USB
268 + select MYLOADER
269 +
270 +config ATH79_MACH_WPE72
271 + bool "Compex WPE72/WPE72NX board support"
272 + select SOC_AR724X
273 + select ATH79_DEV_ETH
274 + select ATH79_DEV_GPIO_BUTTONS
275 + select ATH79_DEV_LEDS_GPIO
276 + select ATH79_DEV_M25P80
277 + select ATH79_DEV_USB
278 + select MYLOADER
279 +
280 +config ATH79_MACH_DIR_600_A1
281 + bool "D-Link DIR-600 rev. A1 support"
282 + select SOC_AR724X
283 + select ATH79_DEV_AP9X_PCI if PCI
284 + select ATH79_DEV_ETH
285 + select ATH79_DEV_GPIO_BUTTONS
286 + select ATH79_DEV_LEDS_GPIO
287 + select ATH79_DEV_M25P80
288 + select ATH79_NVRAM
289 +
290 +config ATH79_MACH_DIR_615_C1
291 + bool "D-Link DIR-615 rev. C1 support"
292 + select SOC_AR913X
293 + select ATH79_DEV_ETH
294 + select ATH79_DEV_GPIO_BUTTONS
295 + select ATH79_DEV_LEDS_GPIO
296 + select ATH79_DEV_M25P80
297 + select ATH79_DEV_WMAC
298 + select ATH79_NVRAM
299 +
300 +config ATH79_MACH_DIR_615_E4
301 + bool "D-Link DIR-615 rev. E4 support"
302 + select SOC_AR724X
303 + select ATH79_DEV_AP9X_PCI if PCI
304 + select ATH79_DEV_ETH
305 + select ATH79_DEV_GPIO_BUTTONS
306 + select ATH79_DEV_LEDS_GPIO
307 + select ATH79_DEV_M25P80
308 + select ATH79_NVRAM
309 +
310 +config ATH79_MACH_DIR_825_B1
311 + bool "D-Link DIR-825 rev. B1 board support"
312 + select SOC_AR71XX
313 + select ATH79_DEV_ETH
314 + select ATH79_DEV_AP9X_PCI if PCI
315 + select ATH79_DEV_GPIO_BUTTONS
316 + select ATH79_DEV_LEDS_GPIO
317 + select ATH79_DEV_M25P80
318 + select ATH79_DEV_USB
319 +
320 +config ATH79_MACH_JA76PF
321 + bool "jjPlus JA76PF board support"
322 + select SOC_AR71XX
323 + select ATH79_DEV_ETH
324 + select ATH79_DEV_GPIO_BUTTONS
325 + select ATH79_DEV_LEDS_GPIO
326 + select ATH79_DEV_M25P80
327 + select ATH79_DEV_USB
328 +
329 +config ATH79_MACH_JWAP003
330 + bool "jjPlus JWAP003 board support"
331 + select SOC_AR71XX
332 + select ATH79_DEV_ETH
333 + select ATH79_DEV_GPIO_BUTTONS
334 + select ATH79_DEV_M25P80
335 + select ATH79_DEV_USB
336 +
337 +config ATH79_MACH_WRT160NL
338 + bool "Linksys WRT160NL board support"
339 + select SOC_AR913X
340 + select ATH79_DEV_ETH
341 + select ATH79_DEV_GPIO_BUTTONS
342 + select ATH79_DEV_LEDS_GPIO
343 + select ATH79_DEV_M25P80
344 + select ATH79_DEV_USB
345 + select ATH79_DEV_WMAC
346 + select ATH79_NVRAM
347 +
348 +config ATH79_MACH_WRT400N
349 + bool "Linksys WRT400N board support"
350 + select SOC_AR71XX
351 + select ATH79_DEV_ETH
352 + select ATH79_DEV_AP9X_PCI if PCI
353 + select ATH79_DEV_GPIO_BUTTONS
354 + select ATH79_DEV_LEDS_GPIO
355 +
356 +config ATH79_MACH_RB4XX
357 + bool "MikroTik RouterBOARD 4xx series support"
358 + select SOC_AR71XX
359 + select ATH79_DEV_ETH
360 + select ATH79_DEV_GPIO_BUTTONS
361 + select ATH79_DEV_LEDS_GPIO
362 + select ATH79_DEV_USB
363 +
364 +config ATH79_MACH_RB750
365 + bool "MikroTik RouterBOARD 750 support"
366 + select SOC_AR724X
367 + select ATH79_DEV_ETH
368 +
369 +config ATH79_MACH_WNDR3700
370 + bool "NETGEAR WNDR3700 board support"
371 + select SOC_AR71XX
372 + select ATH79_DEV_AP9X_PCI if PCI
373 + select ATH79_DEV_ETH
374 + select ATH79_DEV_GPIO_BUTTONS
375 + select ATH79_DEV_LEDS_GPIO
376 + select ATH79_DEV_M25P80
377 + select ATH79_DEV_USB
378 +
379 +config ATH79_MACH_WNR2000
380 + bool "NETGEAR WNR2000 board support"
381 + select SOC_AR913X
382 + select ATH79_DEV_ETH
383 + select ATH79_DEV_GPIO_BUTTONS
384 + select ATH79_DEV_LEDS_GPIO
385 + select ATH79_DEV_M25P80
386 + select ATH79_DEV_WMAC
387 +
388 +config ATH79_MACH_OM2P
389 + bool "OpenMesh OM2P board support"
390 + select SOC_AR724X
391 + select ATH79_DEV_AP9X_PCI if PCI
392 + select ATH79_DEV_ETH
393 + select ATH79_DEV_GPIO_BUTTONS
394 + select ATH79_DEV_LEDS_GPIO
395 + select ATH79_DEV_M25P80
396 +
397 +config ATH79_MACH_MZK_W04NU
398 + bool "Planex MZK-W04NU board support"
399 + select SOC_AR913X
400 + select ATH79_DEV_ETH
401 + select ATH79_DEV_GPIO_BUTTONS
402 + select ATH79_DEV_LEDS_GPIO
403 + select ATH79_DEV_M25P80
404 + select ATH79_DEV_USB
405 + select ATH79_DEV_WMAC
406 +
407 +config ATH79_MACH_MZK_W300NH
408 + bool "Planex MZK-W300NH board support"
409 + select SOC_AR913X
410 + select ATH79_DEV_ETH
411 + select ATH79_DEV_GPIO_BUTTONS
412 + select ATH79_DEV_LEDS_GPIO
413 + select ATH79_DEV_M25P80
414 + select ATH79_DEV_WMAC
415 +
416 +config ATH79_MACH_RW2458N
417 + bool "Redwave RW2458N board support"
418 + select SOC_AR724X
419 + select ATH79_DEV_ETH
420 + select ATH79_DEV_AP9X_PCI if PCI
421 + select ATH79_DEV_GPIO_BUTTONS
422 + select ATH79_DEV_LEDS_GPIO
423 + select ATH79_DEV_M25P80
424 + select ATH79_DEV_USB
425 +
426 +config ATH79_MACH_EAP7660D
427 + bool "Senao EAP7660D support"
428 + select SOC_AR71XX
429 + select ATH79_DEV_ETH
430 + select ATH79_DEV_GPIO_BUTTONS
431 + select ATH79_DEV_LEDS_GPIO
432 + select ATH79_DEV_M25P80
433 +
434 +config ATH79_MACH_TL_MR11U
435 + bool "TP-LINK TL-MR11U support"
436 + select SOC_AR933X
437 + select ATH79_DEV_ETH
438 + select ATH79_DEV_GPIO_BUTTONS
439 + select ATH79_DEV_LEDS_GPIO
440 + select ATH79_DEV_M25P80
441 + select ATH79_DEV_USB
442 + select ATH79_DEV_WMAC
443 +
444 +config ATH79_MACH_TL_MR3020
445 + bool "TP-LINK TL-MR3020 support"
446 + select SOC_AR933X
447 + select ATH79_DEV_ETH
448 + select ATH79_DEV_GPIO_BUTTONS
449 + select ATH79_DEV_LEDS_GPIO
450 + select ATH79_DEV_M25P80
451 + select ATH79_DEV_USB
452 + select ATH79_DEV_WMAC
453 +
454 +config ATH79_MACH_TL_MR3X20
455 + bool "TP-LINK TL-MR3220/3420 support"
456 + select SOC_AR724X
457 + select ATH79_DEV_AP9X_PCI if PCI
458 + select ATH79_DEV_ETH
459 + select ATH79_DEV_GPIO_BUTTONS
460 + select ATH79_DEV_LEDS_GPIO
461 + select ATH79_DEV_M25P80
462 + select ATH79_DEV_USB
463 +
464 +config ATH79_MACH_TL_WA901ND
465 + bool "TP-LINK TL-WA901ND support"
466 + select SOC_AR724X
467 + select ATH79_DEV_AP9X_PCI if PCI
468 + select ATH79_DEV_ETH
469 + select ATH79_DEV_GPIO_BUTTONS
470 + select ATH79_DEV_LEDS_GPIO
471 + select ATH79_DEV_M25P80
472 +
473 +config ATH79_MACH_TL_WA901ND_V2
474 + bool "TP-LINK TL-WA901ND v2 support"
475 + select SOC_AR913X
476 + select ATH79_DEV_ETH
477 + select ATH79_DEV_GPIO_BUTTONS
478 + select ATH79_DEV_LEDS_GPIO
479 + select ATH79_DEV_M25P80
480 + select ATH79_DEV_WMAC
481 +
482 +config ATH79_MACH_TL_WR703N
483 + bool "TP-LINK TL-WR703N support"
484 + select SOC_AR933X
485 + select ATH79_DEV_ETH
486 + select ATH79_DEV_GPIO_BUTTONS
487 + select ATH79_DEV_LEDS_GPIO
488 + select ATH79_DEV_M25P80
489 + select ATH79_DEV_USB
490 + select ATH79_DEV_WMAC
491 +
492 +config ATH79_MACH_TL_WR741ND
493 + bool "TP-LINK TL-WR741ND support"
494 + select SOC_AR724X
495 + select ATH79_DEV_AP9X_PCI if PCI
496 + select ATH79_DEV_ETH
497 + select ATH79_DEV_GPIO_BUTTONS
498 + select ATH79_DEV_LEDS_GPIO
499 + select ATH79_DEV_M25P80
500 +
501 +config ATH79_MACH_TL_WR741ND_V4
502 + bool "TP-LINK TL-WR741ND v4 support"
503 + select SOC_AR933X
504 + select ATH79_DEV_ETH
505 + select ATH79_DEV_GPIO_BUTTONS
506 + select ATH79_DEV_LEDS_GPIO
507 + select ATH79_DEV_M25P80
508 + select ATH79_DEV_WMAC
509 +
510 +config ATH79_MACH_TL_WR841N_V1
511 + bool "TP-LINK TL-WR841N v1 support"
512 + select SOC_AR71XX
513 + select ATH79_DEV_DSA
514 + select ATH79_DEV_ETH
515 + select ATH79_DEV_GPIO_BUTTONS
516 + select ATH79_DEV_LEDS_GPIO
517 + select ATH79_DEV_M25P80
518 +
519 +config ATH79_MACH_TL_WR941ND
520 + bool "TP-LINK TL-WR941ND support"
521 + select SOC_AR913X
522 + select ATH79_DEV_DSA
523 + select ATH79_DEV_ETH
524 + select ATH79_DEV_GPIO_BUTTONS
525 + select ATH79_DEV_LEDS_GPIO
526 + select ATH79_DEV_M25P80
527 + select ATH79_DEV_WMAC
528 +
529 +config ATH79_MACH_TL_WR1043ND
530 + bool "TP-LINK TL-WR1043ND support"
531 + select SOC_AR913X
532 + select ATH79_DEV_ETH
533 + select ATH79_DEV_GPIO_BUTTONS
534 + select ATH79_DEV_LEDS_GPIO
535 + select ATH79_DEV_M25P80
536 + select ATH79_DEV_USB
537 + select ATH79_DEV_WMAC
538 +
539 +config ATH79_MACH_TL_WR2543N
540 + bool "TP-LINK TL-WR2543N/ND support"
541 + select SOC_AR724X
542 + select ATH79_DEV_AP9X_PCI if PCI
543 + select ATH79_DEV_ETH
544 + select ATH79_DEV_GPIO_BUTTONS
545 + select ATH79_DEV_LEDS_GPIO
546 + select ATH79_DEV_M25P80
547 + select ATH79_DEV_USB
548 +
549 +config ATH79_MACH_TEW_632BRP
550 + bool "TRENDnet TEW-632BRP support"
551 + select SOC_AR913X
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_WMAC
557 + select ATH79_NVRAM
558 +
559 +config ATH79_MACH_UBNT
560 + bool "Ubiquiti AR71xx based boards support"
561 + select SOC_AR71XX
562 + select ATH79_DEV_ETH
563 + select ATH79_DEV_GPIO_BUTTONS
564 + select ATH79_DEV_LEDS_GPIO
565 + select ATH79_DEV_M25P80
566 + select ATH79_DEV_USB
567 +
568 config ATH79_MACH_UBNT_XM
569 bool "Ubiquiti Networks XM (rev 1.0) board"
570 select SOC_AR724X
571 @@ -67,6 +523,24 @@ config ATH79_MACH_UBNT_XM
572 Say 'Y' here if you want your kernel to support the
573 Ubiquiti Networks XM (rev 1.0) board.
574
575 +config ATH79_MACH_ZCN_1523H
576 + bool "Zcomax ZCN-1523H support"
577 + select SOC_AR724X
578 + select ATH79_DEV_AP9X_PCI if PCI
579 + select ATH79_DEV_ETH
580 + select ATH79_DEV_GPIO_BUTTONS
581 + select ATH79_DEV_LEDS_GPIO
582 + select ATH79_DEV_M25P80
583 +
584 +config ATH79_MACH_NBG460N
585 + bool "Zyxel NBG460N/550N/550NH board support"
586 + select SOC_AR913X
587 + select ATH79_DEV_ETH
588 + select ATH79_DEV_GPIO_BUTTONS
589 + select ATH79_DEV_LEDS_GPIO
590 + select ATH79_DEV_M25P80
591 + select ATH79_DEV_WMAC
592 +
593 endmenu
594
595 config SOC_AR71XX
596 @@ -96,10 +570,6 @@ config SOC_AR934X
597 select PCI_AR724X if PCI
598 def_bool n
599
600 -config ATH79_DEV_M25P80
601 - select ATH79_DEV_SPI
602 - def_bool n
603 -
604 config ATH79_DEV_AP9X_PCI
605 select ATH79_PCI_ATH9K_FIXUP
606 def_bool n
607 @@ -110,7 +580,14 @@ config ATH79_DEV_DSA
608 config ATH79_DEV_ETH
609 def_bool n
610
611 -config PCI_AR724X
612 +config ATH79_DEV_M25P80
613 + select ATH79_DEV_SPI
614 + def_bool n
615 +
616 +config ATH79_DEV_DSA
617 + def_bool n
618 +
619 +config ATH79_DEV_ETH
620 def_bool n
621
622 config ATH79_DEV_GPIO_BUTTONS
623 @@ -135,4 +612,7 @@ config ATH79_NVRAM
624 config ATH79_PCI_ATH9K_FIXUP
625 def_bool n
626
627 +config PCI_AR724X
628 + def_bool n
629 +
630 endif
631 --- a/arch/mips/ath79/Makefile
632 +++ b/arch/mips/ath79/Makefile
633 @@ -36,8 +36,57 @@ obj-$(CONFIG_ATH79_PCI_ATH9K_FIXUP) += p
634 #
635 # Machines
636 #
637 +obj-$(CONFIG_ATH79_MACH_ALFA_AP96) += mach-alfa-ap96.o
638 +obj-$(CONFIG_ATH79_MACH_ALFA_NX) += mach-alfa-nx.o
639 +obj-$(CONFIG_ATH79_MACH_ALL0258N) += mach-all0258n.o
640 +obj-$(CONFIG_ATH79_MACH_AP113) += mach-ap113.o
641 obj-$(CONFIG_ATH79_MACH_AP121) += mach-ap121.o
642 obj-$(CONFIG_ATH79_MACH_AP81) += mach-ap81.o
643 +obj-$(CONFIG_ATH79_MACH_AP83) += mach-ap83.o
644 +obj-$(CONFIG_ATH79_MACH_AP96) += mach-ap96.o
645 +obj-$(CONFIG_ATH79_MACH_AW_NR580) += mach-aw-nr580.o
646 obj-$(CONFIG_ATH79_MACH_DB120) += mach-db120.o
647 +obj-$(CONFIG_ATH79_MACH_DIR_600_A1) += mach-dir-600-a1.o
648 +obj-$(CONFIG_ATH79_MACH_DIR_615_C1) += mach-dir-615-c1.o
649 +obj-$(CONFIG_ATH79_MACH_DIR_615_E4) += mach-dir-615-e4.o
650 +obj-$(CONFIG_ATH79_MACH_DIR_825_B1) += mach-dir-825-b1.o
651 +obj-$(CONFIG_ATH79_MACH_EAP7660D) += mach-eap7660d.o
652 +obj-$(CONFIG_ATH79_MACH_JA76PF) += mach-ja76pf.o
653 +obj-$(CONFIG_ATH79_MACH_JWAP003) += mach-jwap003.o
654 +obj-$(CONFIG_ATH79_MACH_HORNET_UB) += mach-hornet-ub.o
655 +obj-$(CONFIG_ATH79_MACH_MZK_W04NU) += mach-mzk-w04nu.o
656 +obj-$(CONFIG_ATH79_MACH_MZK_W300NH) += mach-mzk-w300nh.o
657 +obj-$(CONFIG_ATH79_MACH_NBG460N) += mach-nbg460n.o
658 +obj-$(CONFIG_ATH79_MACH_OM2P) += mach-om2p.o
659 +obj-$(CONFIG_ATH79_MACH_PB42) += mach-pb42.o
660 obj-$(CONFIG_ATH79_MACH_PB44) += mach-pb44.o
661 +obj-$(CONFIG_ATH79_MACH_PB92) += mach-pb92.o
662 +obj-$(CONFIG_ATH79_MACH_RB4XX) += mach-rb4xx.o
663 +obj-$(CONFIG_ATH79_MACH_RB750) += mach-rb750.o
664 +obj-$(CONFIG_ATH79_MACH_RW2458N) += mach-rw2458n.o
665 +obj-$(CONFIG_ATH79_MACH_TEW_632BRP) += mach-tew-632brp.o
666 +obj-$(CONFIG_ATH79_MACH_TL_MR11U) += mach-tl-mr11u.o
667 +obj-$(CONFIG_ATH79_MACH_TL_MR3020) += mach-tl-mr3020.o
668 +obj-$(CONFIG_ATH79_MACH_TL_MR3X20) += mach-tl-mr3x20.o
669 +obj-$(CONFIG_ATH79_MACH_TL_WA901ND) += mach-tl-wa901nd.o
670 +obj-$(CONFIG_ATH79_MACH_TL_WA901ND_V2) += mach-tl-wa901nd-v2.o
671 +obj-$(CONFIG_ATH79_MACH_TL_WR741ND) += mach-tl-wr741nd.o
672 +obj-$(CONFIG_ATH79_MACH_TL_WR741ND_V4) += mach-tl-wr741nd-v4.o
673 +obj-$(CONFIG_ATH79_MACH_TL_WR841N_V1) += mach-tl-wr841n.o
674 +obj-$(CONFIG_ATH79_MACH_TL_WR941ND) += mach-tl-wr941nd.o
675 +obj-$(CONFIG_ATH79_MACH_TL_WR1043ND) += mach-tl-wr1043nd.o
676 +obj-$(CONFIG_ATH79_MACH_TL_WR2543N) += mach-tl-wr2543n.o
677 +obj-$(CONFIG_ATH79_MACH_TL_WR703N) += mach-tl-wr703n.o
678 +obj-$(CONFIG_ATH79_MACH_UBNT) += mach-ubnt.o
679 obj-$(CONFIG_ATH79_MACH_UBNT_XM) += mach-ubnt-xm.o
680 +obj-$(CONFIG_ATH79_MACH_WHR_HP_G300N) += mach-whr-hp-g300n.o
681 +obj-$(CONFIG_ATH79_MACH_WNDR3700) += mach-wndr3700.o
682 +obj-$(CONFIG_ATH79_MACH_WNR2000) += mach-wnr2000.o
683 +obj-$(CONFIG_ATH79_MACH_WP543) += mach-wp543.o
684 +obj-$(CONFIG_ATH79_MACH_WPE72) += mach-wpe72.o
685 +obj-$(CONFIG_ATH79_MACH_WRT160NL) += mach-wrt160nl.o
686 +obj-$(CONFIG_ATH79_MACH_WRT400N) += mach-wrt400n.o
687 +obj-$(CONFIG_ATH79_MACH_WZR_HP_G300NH) += mach-wzr-hp-g300nh.o
688 +obj-$(CONFIG_ATH79_MACH_WZR_HP_G300NH2) += mach-wzr-hp-g300nh2.o
689 +obj-$(CONFIG_ATH79_MACH_WZR_HP_AG300H) += mach-wzr-hp-ag300h.o
690 +obj-$(CONFIG_ATH79_MACH_WZR_HP_G450H) += mach-wzr-hp-g450h.o