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