ar71xx: add preliminary support for 3.3
[15.05/openwrt.git] / target / linux / ar71xx / patches-3.3 / 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,369 @@ 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 A1/DIR-615 E4 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_825_B1
301 +       bool "D-Link DIR-825 rev. B1 board support"
302 +       select SOC_AR71XX
303 +       select ATH79_DEV_ETH
304 +       select ATH79_DEV_AP9X_PCI if PCI
305 +       select ATH79_DEV_GPIO_BUTTONS
306 +       select ATH79_DEV_LEDS_GPIO
307 +       select ATH79_DEV_M25P80
308 +       select ATH79_DEV_USB
309 +
310 +config ATH79_MACH_JA76PF
311 +       bool "jjPlus JA76PF board support"
312 +       select SOC_AR71XX
313 +       select ATH79_DEV_ETH
314 +       select ATH79_DEV_GPIO_BUTTONS
315 +       select ATH79_DEV_LEDS_GPIO
316 +       select ATH79_DEV_M25P80
317 +       select ATH79_DEV_USB
318 +
319 +config ATH79_MACH_JWAP003
320 +       bool "jjPlus JWAP003 board support"
321 +       select SOC_AR71XX
322 +       select ATH79_DEV_ETH
323 +       select ATH79_DEV_GPIO_BUTTONS
324 +       select ATH79_DEV_M25P80
325 +       select ATH79_DEV_USB
326 +
327 +config ATH79_MACH_WRT160NL
328 +       bool "Linksys WRT160NL board support"
329 +       select SOC_AR913X
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_DEV_USB
335 +       select ATH79_DEV_WMAC
336 +       select ATH79_NVRAM
337 +
338 +config ATH79_MACH_WRT400N
339 +       bool "Linksys WRT400N board support"
340 +       select SOC_AR71XX
341 +       select ATH79_DEV_ETH
342 +       select ATH79_DEV_AP9X_PCI if PCI
343 +       select ATH79_DEV_GPIO_BUTTONS
344 +       select ATH79_DEV_LEDS_GPIO
345 +
346 +config ATH79_MACH_RB4XX
347 +       bool "MikroTik RouterBOARD 4xx series support"
348 +       select SOC_AR71XX
349 +       select ATH79_DEV_ETH
350 +       select ATH79_DEV_GPIO_BUTTONS
351 +       select ATH79_DEV_LEDS_GPIO
352 +       select ATH79_DEV_USB
353 +
354 +config ATH79_MACH_RB750
355 +       bool "MikroTik RouterBOARD 750 support"
356 +       select SOC_AR724X
357 +       select ATH79_DEV_ETH
358 +
359 +config ATH79_MACH_WNDR3700
360 +       bool "NETGEAR WNDR3700 board support"
361 +       select SOC_AR71XX
362 +       select ATH79_DEV_AP9X_PCI if PCI
363 +       select ATH79_DEV_ETH
364 +       select ATH79_DEV_GPIO_BUTTONS
365 +       select ATH79_DEV_LEDS_GPIO
366 +       select ATH79_DEV_M25P80
367 +       select ATH79_DEV_USB
368 +
369 +config ATH79_MACH_WNR2000
370 +       bool "NETGEAR WNR2000 board support"
371 +       select SOC_AR913X
372 +       select ATH79_DEV_ETH
373 +       select ATH79_DEV_GPIO_BUTTONS
374 +       select ATH79_DEV_LEDS_GPIO
375 +       select ATH79_DEV_M25P80
376 +       select ATH79_DEV_WMAC
377 +
378 +config ATH79_MACH_OM2P
379 +       bool "OpenMesh OM2P board support"
380 +       select SOC_AR724X
381 +       select ATH79_DEV_AP9X_PCI if PCI
382 +       select ATH79_DEV_ETH
383 +       select ATH79_DEV_GPIO_BUTTONS
384 +       select ATH79_DEV_LEDS_GPIO
385 +       select ATH79_DEV_M25P80
386 +
387 +config ATH79_MACH_MZK_W04NU
388 +       bool "Planex MZK-W04NU board support"
389 +       select SOC_AR913X
390 +       select ATH79_DEV_ETH
391 +       select ATH79_DEV_GPIO_BUTTONS
392 +       select ATH79_DEV_LEDS_GPIO
393 +       select ATH79_DEV_M25P80
394 +       select ATH79_DEV_USB
395 +       select ATH79_DEV_WMAC
396 +
397 +config ATH79_MACH_MZK_W300NH
398 +       bool "Planex MZK-W300NH 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_WMAC
405 +
406 +config ATH79_MACH_RW2458N
407 +       bool "Redwave RW2458N board support"
408 +       select SOC_AR724X
409 +       select ATH79_DEV_ETH
410 +       select ATH79_DEV_AP9X_PCI if PCI
411 +       select ATH79_DEV_GPIO_BUTTONS
412 +       select ATH79_DEV_LEDS_GPIO
413 +       select ATH79_DEV_M25P80
414 +       select ATH79_DEV_USB
415 +
416 +config ATH79_MACH_EAP7660D
417 +       bool "Senao EAP7660D support"
418 +       select SOC_AR71XX
419 +       select ATH79_DEV_ETH
420 +       select ATH79_DEV_GPIO_BUTTONS
421 +       select ATH79_DEV_LEDS_GPIO
422 +       select ATH79_DEV_M25P80
423 +
424 +config ATH79_MACH_TL_MR11U
425 +       bool "TP-LINK TL-MR11U support"
426 +       select SOC_AR933X
427 +       select ATH79_DEV_ETH
428 +       select ATH79_DEV_GPIO_BUTTONS
429 +       select ATH79_DEV_LEDS_GPIO
430 +       select ATH79_DEV_M25P80
431 +       select ATH79_DEV_USB
432 +       select ATH79_DEV_WMAC
433 +
434 +config ATH79_MACH_TL_MR3020
435 +       bool "TP-LINK TL-MR3020 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_MR3X20
445 +       bool "TP-LINK TL-MR3220/3420 support"
446 +       select SOC_AR724X
447 +       select ATH79_DEV_AP9X_PCI if PCI
448 +       select ATH79_DEV_ETH
449 +       select ATH79_DEV_GPIO_BUTTONS
450 +       select ATH79_DEV_LEDS_GPIO
451 +       select ATH79_DEV_M25P80
452 +       select ATH79_DEV_USB
453 +
454 +config ATH79_MACH_TL_WA901ND
455 +       bool "TP-LINK TL-WA901ND 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 +
463 +config ATH79_MACH_TL_WA901ND_V2
464 +       bool "TP-LINK TL-WA901ND v2 support"
465 +       select SOC_AR913X
466 +       select ATH79_DEV_ETH
467 +       select ATH79_DEV_GPIO_BUTTONS
468 +       select ATH79_DEV_LEDS_GPIO
469 +       select ATH79_DEV_M25P80
470 +       select ATH79_DEV_WMAC
471 +
472 +config ATH79_MACH_TL_WR703N
473 +       bool "TP-LINK TL-WR703N support"
474 +       select SOC_AR933X
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_USB
480 +       select ATH79_DEV_WMAC
481 +
482 +config ATH79_MACH_TL_WR741ND
483 +       bool "TP-LINK TL-WR741ND support"
484 +       select SOC_AR724X
485 +       select ATH79_DEV_AP9X_PCI if PCI
486 +       select ATH79_DEV_ETH
487 +       select ATH79_DEV_GPIO_BUTTONS
488 +       select ATH79_DEV_LEDS_GPIO
489 +       select ATH79_DEV_M25P80
490 +
491 +config ATH79_MACH_TL_WR741ND_V4
492 +       bool "TP-LINK TL-WR741ND v4 support"
493 +       select SOC_AR933X
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_TL_WR841N_V1
501 +       bool "TP-LINK TL-WR841N v1 support"
502 +       select SOC_AR71XX
503 +       select ATH79_DEV_DSA
504 +       select ATH79_DEV_ETH
505 +       select ATH79_DEV_GPIO_BUTTONS
506 +       select ATH79_DEV_LEDS_GPIO
507 +       select ATH79_DEV_M25P80
508 +
509 +config ATH79_MACH_TL_WR941ND
510 +       bool "TP-LINK TL-WR941ND support"
511 +       select SOC_AR913X
512 +       select ATH79_DEV_DSA
513 +       select ATH79_DEV_ETH
514 +       select ATH79_DEV_GPIO_BUTTONS
515 +       select ATH79_DEV_LEDS_GPIO
516 +       select ATH79_DEV_M25P80
517 +       select ATH79_DEV_WMAC
518 +
519 +config ATH79_MACH_TL_WR1043ND
520 +       bool "TP-LINK TL-WR1043ND support"
521 +       select SOC_AR913X
522 +       select ATH79_DEV_ETH
523 +       select ATH79_DEV_GPIO_BUTTONS
524 +       select ATH79_DEV_LEDS_GPIO
525 +       select ATH79_DEV_M25P80
526 +       select ATH79_DEV_USB
527 +       select ATH79_DEV_WMAC
528 +
529 +config ATH79_MACH_TL_WR2543N
530 +       bool "TP-LINK TL-WR2543N/ND support"
531 +       select SOC_AR724X
532 +       select ATH79_DEV_AP9X_PCI if PCI
533 +       select ATH79_DEV_ETH
534 +       select ATH79_DEV_GPIO_BUTTONS
535 +       select ATH79_DEV_LEDS_GPIO
536 +       select ATH79_DEV_M25P80
537 +       select ATH79_DEV_USB
538 +
539 +config ATH79_MACH_TEW_632BRP
540 +       bool "TRENDnet TEW-632BRP support"
541 +       select SOC_AR913X
542 +       select ATH79_DEV_ETH
543 +       select ATH79_DEV_GPIO_BUTTONS
544 +       select ATH79_DEV_LEDS_GPIO
545 +       select ATH79_DEV_M25P80
546 +       select ATH79_DEV_WMAC
547 +       select ATH79_NVRAM
548 +
549 +config ATH79_MACH_UBNT
550 +       bool "Ubiquiti AR71xx based boards support"
551 +       select SOC_AR71XX
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_UBNT_XM
559         bool "Ubiquiti Networks XM (rev 1.0) board"
560         select SOC_AR724X
561 @@ -67,6 +513,24 @@ config ATH79_MACH_UBNT_XM
562           Say 'Y' here if you want your kernel to support the
563           Ubiquiti Networks XM (rev 1.0) board.
564  
565 +config ATH79_MACH_ZCN_1523H
566 +       bool "Zcomax ZCN-1523H support"
567 +       select SOC_AR724X
568 +       select ATH79_DEV_AP9X_PCI if PCI
569 +       select ATH79_DEV_ETH
570 +       select ATH79_DEV_GPIO_BUTTONS
571 +       select ATH79_DEV_LEDS_GPIO
572 +       select ATH79_DEV_M25P80
573 +
574 +config ATH79_MACH_NBG460N
575 +       bool "Zyxel NBG460N/550N/550NH board support"
576 +       select SOC_AR913X
577 +       select ATH79_DEV_ETH
578 +       select ATH79_DEV_GPIO_BUTTONS
579 +       select ATH79_DEV_LEDS_GPIO
580 +       select ATH79_DEV_M25P80
581 +       select ATH79_DEV_WMAC
582 +
583  endmenu
584  
585  config SOC_AR71XX
586 @@ -96,10 +560,6 @@ config SOC_AR934X
587         select PCI_AR724X if PCI
588         def_bool n
589  
590 -config ATH79_DEV_M25P80
591 -       select ATH79_DEV_SPI
592 -       def_bool n
593 -
594  config ATH79_DEV_AP9X_PCI
595         select ATH79_PCI_ATH9K_FIXUP
596         def_bool n
597 @@ -110,7 +570,14 @@ config ATH79_DEV_DSA
598  config ATH79_DEV_ETH
599         def_bool n
600  
601 -config PCI_AR724X
602 +config ATH79_DEV_M25P80
603 +       select ATH79_DEV_SPI
604 +       def_bool n
605 +
606 +config ATH79_DEV_DSA
607 +       def_bool n
608 +
609 +config ATH79_DEV_ETH
610         def_bool n
611  
612  config ATH79_DEV_GPIO_BUTTONS
613 @@ -135,4 +602,7 @@ config ATH79_NVRAM
614  config ATH79_PCI_ATH9K_FIXUP
615         def_bool n
616  
617 +config PCI_AR724X
618 +       def_bool n
619 +
620  endif
621 --- a/arch/mips/ath79/Makefile
622 +++ b/arch/mips/ath79/Makefile
623 @@ -36,8 +36,56 @@ obj-$(CONFIG_ATH79_PCI_ATH9K_FIXUP)  += p
624  #
625  # Machines
626  #
627 +obj-$(CONFIG_ATH79_MACH_ALFA_AP96)     += mach-alfa-ap96.o
628 +obj-$(CONFIG_ATH79_MACH_ALFA_NX)       += mach-alfa-nx.o
629 +obj-$(CONFIG_ATH79_MACH_ALL0258N)      += mach-all0258n.o
630 +obj-$(CONFIG_ATH79_MACH_AP113)         += mach-ap113.o
631  obj-$(CONFIG_ATH79_MACH_AP121)         += mach-ap121.o
632  obj-$(CONFIG_ATH79_MACH_AP81)          += mach-ap81.o
633 +obj-$(CONFIG_ATH79_MACH_AP83)          += mach-ap83.o
634 +obj-$(CONFIG_ATH79_MACH_AP96)          += mach-ap96.o
635 +obj-$(CONFIG_ATH79_MACH_AW_NR580)      += mach-aw-nr580.o
636  obj-$(CONFIG_ATH79_MACH_DB120)         += mach-db120.o
637 +obj-$(CONFIG_ATH79_MACH_DIR_600_A1)    += mach-dir-600-a1.o
638 +obj-$(CONFIG_ATH79_MACH_DIR_615_C1)    += mach-dir-615-c1.o
639 +obj-$(CONFIG_ATH79_MACH_DIR_825_B1)    += mach-dir-825-b1.o
640 +obj-$(CONFIG_ATH79_MACH_EAP7660D)      += mach-eap7660d.o
641 +obj-$(CONFIG_ATH79_MACH_JA76PF)                += mach-ja76pf.o
642 +obj-$(CONFIG_ATH79_MACH_JWAP003)       += mach-jwap003.o
643 +obj-$(CONFIG_ATH79_MACH_HORNET_UB)     += mach-hornet-ub.o
644 +obj-$(CONFIG_ATH79_MACH_MZK_W04NU)     += mach-mzk-w04nu.o
645 +obj-$(CONFIG_ATH79_MACH_MZK_W300NH)    += mach-mzk-w300nh.o
646 +obj-$(CONFIG_ATH79_MACH_NBG460N)       += mach-nbg460n.o
647 +obj-$(CONFIG_ATH79_MACH_OM2P)          += mach-om2p.o
648 +obj-$(CONFIG_ATH79_MACH_PB42)          += mach-pb42.o
649  obj-$(CONFIG_ATH79_MACH_PB44)          += mach-pb44.o
650 +obj-$(CONFIG_ATH79_MACH_PB92)          += mach-pb92.o
651 +obj-$(CONFIG_ATH79_MACH_RB4XX)         += mach-rb4xx.o
652 +obj-$(CONFIG_ATH79_MACH_RB750)         += mach-rb750.o
653 +obj-$(CONFIG_ATH79_MACH_RW2458N)       += mach-rw2458n.o
654 +obj-$(CONFIG_ATH79_MACH_TEW_632BRP)    += mach-tew-632brp.o
655 +obj-$(CONFIG_ATH79_MACH_TL_MR11U)      += mach-tl-mr11u.o
656 +obj-$(CONFIG_ATH79_MACH_TL_MR3020)     += mach-tl-mr3020.o
657 +obj-$(CONFIG_ATH79_MACH_TL_MR3X20)     += mach-tl-mr3x20.o
658 +obj-$(CONFIG_ATH79_MACH_TL_WA901ND)    += mach-tl-wa901nd.o
659 +obj-$(CONFIG_ATH79_MACH_TL_WA901ND_V2) += mach-tl-wa901nd-v2.o
660 +obj-$(CONFIG_ATH79_MACH_TL_WR741ND)    += mach-tl-wr741nd.o
661 +obj-$(CONFIG_ATH79_MACH_TL_WR741ND_V4) += mach-tl-wr741nd-v4.o
662 +obj-$(CONFIG_ATH79_MACH_TL_WR841N_V1)  += mach-tl-wr841n.o
663 +obj-$(CONFIG_ATH79_MACH_TL_WR941ND)    += mach-tl-wr941nd.o
664 +obj-$(CONFIG_ATH79_MACH_TL_WR1043ND)   += mach-tl-wr1043nd.o
665 +obj-$(CONFIG_ATH79_MACH_TL_WR2543N)    += mach-tl-wr2543n.o
666 +obj-$(CONFIG_ATH79_MACH_TL_WR703N)     += mach-tl-wr703n.o
667 +obj-$(CONFIG_ATH79_MACH_UBNT)          += mach-ubnt.o
668  obj-$(CONFIG_ATH79_MACH_UBNT_XM)       += mach-ubnt-xm.o
669 +obj-$(CONFIG_ATH79_MACH_WHR_HP_G300N)  += mach-whr-hp-g300n.o
670 +obj-$(CONFIG_ATH79_MACH_WNDR3700)      += mach-wndr3700.o
671 +obj-$(CONFIG_ATH79_MACH_WNR2000)       += mach-wnr2000.o
672 +obj-$(CONFIG_ATH79_MACH_WP543)         += mach-wp543.o
673 +obj-$(CONFIG_ATH79_MACH_WPE72)         += mach-wpe72.o
674 +obj-$(CONFIG_ATH79_MACH_WRT160NL)      += mach-wrt160nl.o
675 +obj-$(CONFIG_ATH79_MACH_WRT400N)       += mach-wrt400n.o
676 +obj-$(CONFIG_ATH79_MACH_WZR_HP_G300NH) += mach-wzr-hp-g300nh.o
677 +obj-$(CONFIG_ATH79_MACH_WZR_HP_G300NH2)        += mach-wzr-hp-g300nh2.o
678 +obj-$(CONFIG_ATH79_MACH_WZR_HP_AG300H) += mach-wzr-hp-ag300h.o
679 +obj-$(CONFIG_ATH79_MACH_WZR_HP_G450H)  += mach-wzr-hp-g450h.o