ar71xx: Add support to TP-Link EAP120
[oweals/openwrt.git] / target / linux / ar71xx / image / tp-link.mk
1 DEVICE_VARS += TPLINK_HWID TPLINK_HWREV TPLINK_FLASHLAYOUT TPLINK_HEADER_VERSION TPLINK_BOARD_NAME
2
3 # combine kernel and rootfs into one image
4 # mktplinkfw <type> <optional extra arguments to mktplinkfw binary>
5 # <type> is "sysupgrade" or "factory"
6 #
7 # -a align the rootfs start on an <align> bytes boundary
8 # -j add jffs2 end-of-filesystem markers
9 # -s strip padding from end of the image
10 # -X reserve <size> bytes in the firmware image (hexval prefixed with 0x)
11 define Build/mktplinkfw
12         -$(STAGING_DIR_HOST)/bin/mktplinkfw \
13                 -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -F $(TPLINK_FLASHLAYOUT) -N OpenWrt -V $(REVISION) \
14                 -m $(TPLINK_HEADER_VERSION) \
15                 -k $(IMAGE_KERNEL) \
16                 -r $@ \
17                 -o $@.new \
18                 -j -X 0x40000 \
19                 -a $(call rootfs_align,$(FILESYSTEM)) \
20                 $(wordlist 2,$(words $(1)),$(1)) \
21                 $(if $(findstring sysupgrade,$(word 1,$(1))),-s) && mv $@.new $@ || rm -f $@
22 endef
23
24 # mktplinkfw-initramfs <optional extra arguments to mktplinkfw binary>
25 #
26 # -c combined image
27 define Build/mktplinkfw-initramfs
28         $(STAGING_DIR_HOST)/bin/mktplinkfw \
29                 -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -F $(TPLINK_FLASHLAYOUT) -N OpenWrt -V $(REVISION) $(1) \
30                 -m $(TPLINK_HEADER_VERSION) \
31                 -k $@ \
32                 -o $@.new \
33                 -s -S \
34                 -c
35         @mv $@.new $@
36 endef
37
38 define Device/tplink
39   TPLINK_HWREV := 0x1
40   TPLINK_HEADER_VERSION := 1
41   LOADER_TYPE := gz
42   KERNEL := kernel-bin | patch-cmdline | lzma
43   KERNEL_INITRAMFS := kernel-bin | patch-cmdline | lzma | mktplinkfw-initramfs
44   IMAGES := sysupgrade.bin factory.bin
45   IMAGE/sysupgrade.bin := append-rootfs | mktplinkfw sysupgrade
46   IMAGE/factory.bin := append-rootfs | mktplinkfw factory
47 endef
48
49 define Device/tplink-nolzma
50 $(Device/tplink)
51   LOADER_FLASH_OFFS := 0x22000
52   COMPILE := loader-$(1).gz
53   COMPILE/loader-$(1).gz := loader-okli-compile
54   KERNEL := copy-file $(KDIR)/vmlinux.bin.lzma | uImage lzma -M 0x4f4b4c49 | loader-okli $(1)
55   KERNEL_INITRAMFS := copy-file $(KDIR)/vmlinux-initramfs.bin.lzma | loader-kernel-cmdline | mktplinkfw-initramfs
56 endef
57
58 define Device/tplink-4m
59 $(Device/tplink-nolzma)
60   TPLINK_FLASHLAYOUT := 4M
61   IMAGE_SIZE := 3904k
62 endef
63
64 define Device/tplink-8m
65 $(Device/tplink-nolzma)
66   TPLINK_FLASHLAYOUT := 8M
67   IMAGE_SIZE := 7936k
68 endef
69
70 define Device/tplink-4mlzma
71 $(Device/tplink)
72   TPLINK_FLASHLAYOUT := 4Mlzma
73   IMAGE_SIZE := 3904k
74 endef
75
76 define Device/tplink-8mlzma
77 $(Device/tplink)
78   TPLINK_FLASHLAYOUT := 8Mlzma
79   IMAGE_SIZE := 7936k
80 endef
81
82 define Device/tplink-16mlzma
83 $(Device/tplink)
84   TPLINK_FLASHLAYOUT := 16Mlzma
85   IMAGE_SIZE := 15872k
86 endef
87
88 define Device/cpe510-520
89   DEVICE_TITLE := TP-LINK CPE510/520
90   DEVICE_PACKAGES := rssileds
91   MTDPARTS := spi0.0:128k(u-boot)ro,64k(pation-table)ro,64k(product-info)ro,1536k(kernel),6144k(rootfs),192k(config)ro,64k(ART)ro,7680k@0x40000(firmware)
92   IMAGE_SIZE := 7680k
93   BOARDNAME := CPE510
94   TPLINK_BOARD_NAME := CPE510
95   DEVICE_PROFILE := CPE510
96   LOADER_TYPE := elf
97   KERNEL := kernel-bin | patch-cmdline | lzma | loader-kernel
98   IMAGES := sysupgrade.bin factory.bin
99   IMAGE/sysupgrade.bin := append-rootfs | tplink-safeloader sysupgrade
100   IMAGE/factory.bin := append-rootfs | tplink-safeloader factory
101 endef
102
103 define Device/cpe210-220
104 $(Device/cpe510-520)
105   DEVICE_TITLE := TP-LINK CPE210/220
106   DEVICE_PACKAGES := rssileds
107   BOARDNAME := CPE210
108   TPLINK_BOARD_NAME := CPE210
109 endef
110 TARGET_DEVICES += cpe210-220 cpe510-520
111
112 define Device/eap120
113   DEVICE_TITLE := TP-LINK EAP120
114   MTDPARTS := spi0.0:128k(u-boot)ro,64k(pation-table)ro,64k(product-info)ro,1536k(kernel),14336k(rootfs),192k(config)ro,64k(ART)ro,15872k@0x40000(firmware)
115   IMAGE_SIZE := 15872k
116   BOARDNAME := EAP120
117   TPLINK_BOARD_NAME := EAP120
118   DEVICE_PROFILE := EAP120
119   LOADER_TYPE := elf
120   KERNEL := kernel-bin | patch-cmdline | lzma | loader-kernel
121   IMAGES := sysupgrade.bin factory.bin
122   IMAGE/sysupgrade.bin := append-rootfs | tplink-safeloader sysupgrade
123   IMAGE/factory.bin := append-rootfs | tplink-safeloader factory
124 endef
125 TARGET_DEVICES += eap120
126
127 define Device/tl-wdr4300-v1
128 $(Device/tplink-8mlzma)
129   DEVICE_TITLE := TP-LINK TL-WDR4300 v1
130   DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
131   BOARDNAME := TL-WDR4300
132   DEVICE_PROFILE := TLWDR4300
133   TPLINK_HWID := 0x43000001
134   IMAGE/factory.bin := append-rootfs | mktplinkfw factory -C US
135 endef
136
137 define Device/tl-wdr3500-v1
138 $(Device/tplink-8mlzma)
139   DEVICE_TITLE := TP-LINK TL-WDR3500 v1
140   DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
141   BOARDNAME := TL-WDR3500
142   DEVICE_PROFILE := TLWDR4300
143   TPLINK_HWID := 0x35000001
144 endef
145
146 define Device/tl-wdr3600-v1
147 $(Device/tplink-8mlzma)
148   DEVICE_TITLE := TP-LINK TL-WDR3600 v1
149   DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
150   BOARDNAME := TL-WDR4300
151   DEVICE_PROFILE := TLWDR4300
152   TPLINK_HWID := 0x36000001
153   IMAGE/factory.bin := append-rootfs | mktplinkfw factory -C US
154 endef
155
156 define Device/tl-wdr4300-v1-il
157 $(Device/tplink-8mlzma)
158   DEVICE_TITLE := TP-LINK TL-WDR4300 v1 IL
159   DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
160   BOARDNAME := TL-WDR4300
161   DEVICE_PROFILE := TLWDR4300
162   TPLINK_HWID := 0x43008001
163 endef
164
165 define Device/tl-wdr4310-v1
166 $(Device/tplink-8mlzma)
167   DEVICE_TITLE := TP-LINK TL-WDR4310 v1
168   DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
169   BOARDNAME := TL-WDR4300
170   DEVICE_PROFILE = TLWDR4300
171   TPLINK_HWID := 0x43100001
172 endef
173
174 define Device/mw4530r-v1
175 $(Device/tl-wdr4300-v1)
176   DEVICE_TITLE := Mercury MW4530R v1
177   TPLINK_HWID := 0x45300001
178 endef
179 TARGET_DEVICES += tl-wdr3500-v1 tl-wdr3600-v1 tl-wdr4300-v1 tl-wdr4300-v1-il tl-wdr4310-v1 mw4530r-v1
180
181 define Device/tl-wdr6500-v2
182 $(Device/tplink-8mlzma)
183   DEVICE_TITLE := TP-LINK TL-WDR6500v2
184   DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev kmod-ath10k ath10k-firmware-qca988x
185   KERNEL := kernel-bin | patch-cmdline | lzma | uImage lzma
186   KERNEL_INITRAMFS := kernel-bin | patch-cmdline | lzma | uImage lzma | mktplinkfw-initramfs
187   BOARDNAME = TL-WDR6500-v2
188   DEVICE_PROFILE = TLWDR6500V2
189   TPLINK_HWID := 0x65000002
190   TPLINK_HEADER_VERSION := 2
191 endef
192 TARGET_DEVICES += tl-wdr6500-v2
193
194 define Device/tl-wdr3320-v2
195 $(Device/tplink-4mlzma)
196   DEVICE_TITLE := TP-LINK TL-WDR3320v2
197   DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
198   BOARDNAME = TL-WDR3320-v2
199   DEVICE_PROFILE = TLWDR3320V2
200   TPLINK_HWID := 0x33200002
201   TPLINK_HEADER_VERSION := 2
202 endef
203 TARGET_DEVICES += tl-wdr3320-v2
204
205 define Device/archer-c5-v1
206     $(Device/tplink-16mlzma)
207     DEVICE_TITLE := TP-LINK Archer C5
208     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev kmod-ath10k ath10k-firmware-qca988x
209     BOARDNAME := ARCHER-C5
210     DEVICE_PROFILE := ARCHERC7
211     TPLINK_HWID := 0xc5000001
212 endef
213
214 define Device/archer-c7-v1
215     $(Device/tplink-8mlzma)
216     DEVICE_TITLE := TP-LINK Archer C7 v1
217     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev kmod-ath10k ath10k-firmware-qca988x
218     BOARDNAME := ARCHER-C7
219     DEVICE_PROFILE := ARCHERC7
220     TPLINK_HWID := 0x75000001
221 endef
222
223 define Device/archer-c7-v2
224     $(Device/tplink-16mlzma)
225     DEVICE_TITLE := TP-LINK Archer C7 v2
226     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev kmod-ath10k ath10k-firmware-qca988x
227     BOARDNAME := ARCHER-C7-V2
228     DEVICE_PROFILE := ARCHERC7
229     TPLINK_HWID := 0xc7000002
230     IMAGES := sysupgrade.bin factory.bin factory-us.bin factory-eu.bin
231     IMAGE/factory-us.bin := append-rootfs | mktplinkfw factory -C US
232     IMAGE/factory-eu.bin := append-rootfs | mktplinkfw factory -C EU
233 endef
234
235 define Device/archer-c7-v2-il
236     $(Device/tplink-16mlzma)
237     DEVICE_TITLE := TP-LINK Archer C7 v2 IL
238     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev kmod-ath10k ath10k-firmware-qca988x
239     BOARDNAME := ARCHER-C7-V2
240     DEVICE_PROFILE := ARCHERC7
241     TPLINK_HWID := 0xc7000002
242     TPLINK_HWREV := 0x494c0001
243 endef
244
245 define Device/tl-wdr7500-v3
246     $(Device/tplink-8mlzma)
247     DEVICE_TITLE := TP-LINK Archer C7 v3
248     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev kmod-ath10k ath10k-firmware-qca988x
249     BOARDNAME := ARCHER-C7
250     DEVICE_PROFILE := ARCHERC7
251     TPLINK_HWID := 0x75000003
252 endef
253 TARGET_DEVICES += archer-c5-v1 archer-c7-v1 archer-c7-v2 archer-c7-v2-il tl-wdr7500-v3
254
255 define Device/tl-mr10u-v1
256     $(Device/tplink-4mlzma)
257     DEVICE_TITLE := TP-LINK TL-MR10U
258     DEVICE_PACKAGES := kmod-usb-core kmod-usb2
259     BOARDNAME := TL-MR10U
260     DEVICE_PROFILE := TLMR10U
261     TPLINK_HWID := 0x00100101
262     CONSOLE := ttyATH0,115200
263 endef
264
265 define Device/tl-mr11u-v1
266     $(Device/tplink-4mlzma)
267     DEVICE_TITLE := TP-LINK TL-MR11U
268     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
269     BOARDNAME := TL-MR11U
270     DEVICE_PROFILE := TLMR11U
271     TPLINK_HWID := 0x00110101
272     CONSOLE := ttyATH0,115200
273 endef
274
275 define Device/tl-mr11u-v2
276     $(Device/tplink-4mlzma)
277     DEVICE_TITLE := TP-LINK TL-MR11U v2
278     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
279     BOARDNAME := TL-MR11U
280     DEVICE_PROFILE := TLMR11U
281     TPLINK_HWID := 0x00110102
282     CONSOLE := ttyATH0,115200
283 endef
284
285 define Device/tl-mr12u-v1
286     $(Device/tplink-4mlzma)
287     DEVICE_TITLE := TP-LINK TL-MR12U
288     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
289     BOARDNAME := TL-MR13U
290     DEVICE_PROFILE := TLMR12U
291     TPLINK_HWID := 0x00120101
292     CONSOLE := ttyATH0,115200
293 endef
294
295 define Device/tl-mr13u-v1
296     $(Device/tplink-4mlzma)
297     DEVICE_TITLE := TP-LINK TL-MR13U
298     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
299     BOARDNAME := TL-MR13U
300     DEVICE_PROFILE := TLMR13U
301     TPLINK_HWID := 0x00130101
302     CONSOLE := ttyATH0,115200
303 endef
304 TARGET_DEVICES += tl-mr10u-v1 tl-mr11u-v1 tl-mr11u-v2 tl-mr12u-v1 tl-mr13u-v1
305
306 define Device/tl-mr3020-v1
307     $(Device/tplink-4mlzma)
308     DEVICE_TITLE := TP-LINK TL-MR3020
309     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
310     BOARDNAME := TL-MR3020
311     DEVICE_PROFILE := TLMR3020
312     TPLINK_HWID := 0x30200001
313     CONSOLE := ttyATH0,115200
314 endef
315
316 define Device/tl-mr3040-v1
317     $(Device/tplink-4mlzma)
318     DEVICE_TITLE := TP-LINK TL-MR3040
319     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
320     BOARDNAME := TL-MR3040
321     DEVICE_PROFILE := TLMR3040
322     TPLINK_HWID := 0x30400001
323     CONSOLE := ttyATH0,115200
324 endef
325
326 define Device/tl-mr3040-v2
327     $(Device/tplink-4mlzma)
328     DEVICE_TITLE := TP-LINK TL-MR3040
329     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
330     BOARDNAME := TL-MR3040-v2
331     DEVICE_PROFILE := TLMR3040
332     TPLINK_HWID := 0x30400002
333     CONSOLE := ttyATH0,115200
334 endef
335
336 define Device/tl-mr3220-v1
337     $(Device/tplink-4m)
338     DEVICE_TITLE := TP-LINK TL-MR3220
339     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
340     BOARDNAME := TL-MR3220
341     DEVICE_PROFILE := TLMR3220
342     TPLINK_HWID := 0x32200001
343 endef
344
345 define Device/tl-mr3220-v2
346     $(Device/tplink-4mlzma)
347     DEVICE_TITLE := TP-LINK TL-MR3220 v2
348     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
349     BOARDNAME := TL-MR3220-v2
350     DEVICE_PROFILE := TLMR3220
351     TPLINK_HWID := 0x32200002
352     CONSOLE := ttyATH0,115200
353 endef
354
355 define Device/tl-mr3420-v1
356     $(Device/tplink-4m)
357     DEVICE_TITLE := TP-LINK TL-MR3420
358     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
359     BOARDNAME := TL-MR3420
360     DEVICE_PROFILE := TLMR3420
361     TPLINK_HWID := 0x34200001
362 endef
363
364 define Device/tl-mr3420-v2
365     $(Device/tplink-4mlzma)
366     DEVICE_TITLE := TP-LINK TL-MR3420 v2
367     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
368     BOARDNAME := TL-MR3420-v2
369     DEVICE_PROFILE := TLMR3420
370     TPLINK_HWID := 0x34200002
371 endef
372 TARGET_DEVICES += tl-mr3020-v1 tl-mr3040-v1 tl-mr3040-v2 tl-mr3220-v1 tl-mr3220-v2 tl-mr3420-v1 tl-mr3420-v2
373
374 define Device/tl-wr703n-v1
375     $(Device/tplink-4mlzma)
376     DEVICE_TITLE := TP-LINK TL-WR703N
377     DEVICE_PACKAGES := kmod-usb-core kmod-usb2
378     BOARDNAME := TL-WR703N
379     DEVICE_PROFILE := TLWR703
380     TPLINK_HWID := 0x07030101
381     CONSOLE := ttyATH0,115200
382 endef
383
384 define Device/tl-wr710n-v1
385     $(Device/tplink-8mlzma)
386     DEVICE_TITLE := TP-LINK TL-WR710N
387     DEVICE_PACKAGES := kmod-usb-core kmod-usb2
388     BOARDNAME := TL-WR710N
389     DEVICE_PROFILE := TLWR710
390     TPLINK_HWID := 0x07100001
391     CONSOLE := ttyATH0,115200
392 endef
393
394 define Device/tl-wr710n-v2
395     $(Device/tplink-4mlzma)
396     DEVICE_TITLE := TP-LINK TL-WR710N v2
397     DEVICE_PACKAGES := kmod-usb-core kmod-usb2
398     BOARDNAME := TL-WR710N v2
399     DEVICE_PROFILE := TLWR710
400     TPLINK_HWID := 0x07100002
401     CONSOLE := ttyATH0,115200
402 endef
403
404 define Device/tl-wr710n-v2.1
405     $(Device/tplink-8mlzma)
406     DEVICE_TITLE := TP-LINK TL-WR710N v2.1
407     DEVICE_PACKAGES := kmod-usb-core kmod-usb2
408     BOARDNAME := TL-WR710N v2.1
409     DEVICE_PROFILE := TLWR710
410     TPLINK_HWID := 0x07100002
411     TPLINK_HWREV := 0x00000002
412     CONSOLE := ttyATH0,115200
413 endef
414
415 define Device/tl-wr720n-v3
416     $(Device/tplink-4mlzma)
417     DEVICE_TITLE := TP-LINK TL-WR720N v3
418     DEVICE_PACKAGES := kmod-usb-core kmod-usb2
419     BOARDNAME := TL-WR720N-v3
420     DEVICE_PROFILE := TLWR720
421     TPLINK_HWID := 0x07200103
422     CONSOLE := ttyATH0,115200
423 endef
424
425 define Device/tl-wr720n-v4
426     $(Device/tplink-4mlzma)
427     DEVICE_TITLE := TP-LINK TL-WR720N v4
428     DEVICE_PACKAGES := kmod-usb-core kmod-usb2
429     BOARDNAME := TL-WR720N-v3
430     DEVICE_PROFILE := TLWR720
431     TPLINK_HWID := 0x07200104
432     CONSOLE := ttyATH0,115200
433 endef
434 TARGET_DEVICES += tl-wr703n-v1 tl-wr710n-v1 tl-wr710n-v2 tl-wr710n-v2.1 tl-wr720n-v3 tl-wr720n-v4
435
436 define Device/tl-wr740n-v1
437     $(Device/tplink-4m)
438     DEVICE_TITLE := TP-LINK TL-WR740N/ND v1
439     BOARDNAME := TL-WR741ND
440     DEVICE_PROFILE := TLWR740
441     TPLINK_HWID := 0x07400001
442 endef
443
444 define Device/tl-wr740n-v3
445     $(Device/tplink-4m)
446     DEVICE_TITLE := TP-LINK TL-WR740N/ND v3
447     BOARDNAME := TL-WR741ND
448     DEVICE_PROFILE := TLWR740
449     TPLINK_HWID := 0x07400003
450 endef
451
452 define Device/tl-wr740n-v4
453     $(Device/tplink-4mlzma)
454     DEVICE_TITLE := TP-LINK TL-WR740N/ND v4
455     BOARDNAME := TL-WR741ND-v4
456     DEVICE_PROFILE := TLWR740
457     TPLINK_HWID := 0x07400004
458     CONSOLE := ttyATH0,115200
459 endef
460
461 define Device/tl-wr740n-v5
462     $(Device/tplink-4mlzma)
463     DEVICE_TITLE := TP-LINK TL-WR740N/ND v5
464     BOARDNAME := TL-WR741ND-v4
465     DEVICE_PROFILE := TLWR740
466     TPLINK_HWID := 0x07400005
467     CONSOLE := ttyATH0,115200
468 endef
469
470 define Device/tl-wr740n-v6
471     $(Device/tplink-4mlzma)
472     DEVICE_TITLE := TP-LINK TL-WR740N/ND v6
473     BOARDNAME := TL-WR841N-v9
474     DEVICE_PROFILE := TLWR740
475     TPLINK_HWID := 0x07400006
476 endef
477
478 define Device/tl-wr741nd-v1
479     $(Device/tplink-4m)
480     DEVICE_TITLE := TP-LINK TL-WR741N/ND v1
481     BOARDNAME := TL-WR741ND
482     DEVICE_PROFILE := TLWR741
483     TPLINK_HWID := 0x07410001
484 endef
485
486 define Device/tl-wr741nd-v2
487     $(Device/tplink-4m)
488     DEVICE_TITLE := TP-LINK TL-WR741N/ND v2
489     BOARDNAME := TL-WR741ND
490     DEVICE_PROFILE := TLWR741
491     TPLINK_HWID := 0x07410001
492 endef
493
494 define Device/tl-wr741nd-v4
495     $(Device/tplink-4mlzma)
496     DEVICE_TITLE := TP-LINK TL-WR741N/ND v4
497     BOARDNAME := TL-WR741ND-v4
498     DEVICE_PROFILE := TLWR741
499     TPLINK_HWID := 0x07410004
500     CONSOLE := ttyATH0,115200
501 endef
502
503 define Device/tl-wr741nd-v5
504     $(Device/tplink-4mlzma)
505     DEVICE_TITLE := TP-LINK TL-WR741N/ND v5
506     BOARDNAME := TL-WR741ND-v4
507     DEVICE_PROFILE := TLWR741
508     TPLINK_HWID := 0x07400005
509     CONSOLE := ttyATH0,115200
510 endef
511
512 define Device/tl-wr810n
513     $(Device/tplink-8mlzma)
514     DEVICE_TITLE := TP-Link TL-WR810N
515     DEVICE_PACKAGES := kmod-usb-core kmod-usb2
516     BOARDNAME := TL-WR810N
517     DEVICE_PROFILE := TLWR810
518     TPLINK_HWID := 0x08100001
519 endef
520 TARGET_DEVICES += tl-wr810n
521
522 define Device/tl-wr743nd-v1
523     $(Device/tplink-4m)
524     DEVICE_TITLE := TP-LINK TL-WR743N/ND v1
525     BOARDNAME := TL-WR741ND
526     DEVICE_PROFILE := TLWR743
527     TPLINK_HWID := 0x07430001
528 endef
529
530 define Device/tl-wr743nd-v2
531     $(Device/tplink-4mlzma)
532     DEVICE_TITLE := TP-LINK TL-WR743N/ND v2
533     BOARDNAME := TL-WR741ND-v4
534     DEVICE_PROFILE := TLWR743
535     TPLINK_HWID := 0x07430002
536     CONSOLE := ttyATH0,115200
537 endef
538 TARGET_DEVICES += tl-wr740n-v1 tl-wr740n-v3 tl-wr740n-v4 tl-wr740n-v5 tl-wr740n-v6 tl-wr741nd-v1 tl-wr741nd-v2 tl-wr741nd-v4 tl-wr741nd-v5 tl-wr743nd-v1 tl-wr743nd-v2
539
540 define Device/tl-wr841-v1.5
541     $(Device/tplink-4m)
542     DEVICE_TITLE := TP-LINK TL-WR841N/ND v1.5
543     BOARDNAME := TL-WR841N-v1.5
544     DEVICE_PROFILE := TLWR841
545     TPLINK_HWID := 0x08410002
546     TPLINK_HWREV := 2
547 endef
548
549 define Device/tl-wr841-v3
550     $(Device/tplink-4m)
551     DEVICE_TITLE := TP-LINK TL-WR841N/ND v3
552     BOARDNAME := TL-WR941ND
553     DEVICE_PROFILE := TLWR841
554     TPLINK_HWID := 0x08410003
555     TPLINK_HWREV := 3
556 endef
557
558 define Device/tl-wr841-v5
559     $(Device/tplink-4m)
560     DEVICE_TITLE := TP-LINK TL-WR841N/ND v5
561     BOARDNAME := TL-WR741ND
562     DEVICE_PROFILE := TLWR841
563     TPLINK_HWID := 0x08410005
564 endef
565
566 define Device/tl-wr841-v7
567     $(Device/tplink-4m)
568     DEVICE_TITLE := TP-LINK TL-WR841N/ND v7
569     BOARDNAME := TL-WR841N-v7
570     DEVICE_PROFILE := TLWR841
571     TPLINK_HWID := 0x08410007
572 endef
573
574 define Device/tl-wr841-v8
575     $(Device/tplink-4mlzma)
576     DEVICE_TITLE := TP-LINK TL-WR841N/ND v8
577     BOARDNAME := TL-WR841N-v8
578     DEVICE_PROFILE := TLWR841
579     TPLINK_HWID := 0x08410008
580 endef
581
582 define Device/tl-wr841-v9
583     $(Device/tplink-4mlzma)
584     DEVICE_TITLE := TP-LINK TL-WR841N/ND v9
585     BOARDNAME := TL-WR841N-v9
586     DEVICE_PROFILE := TLWR841
587     TPLINK_HWID := 0x08410009
588 endef
589
590 define Device/tl-wr841-v10
591     $(Device/tplink-4mlzma)
592     DEVICE_TITLE := TP-LINK TL-WR841N/ND v10
593     BOARDNAME := TL-WR841N-v9
594     DEVICE_PROFILE := TLWR841
595     TPLINK_HWID := 0x08410010
596 endef
597
598 define Device/tl-wr841-v11
599    $(Device/tplink-4mlzma)
600    DEVICE_TITLE := TP-LINK TL-WR841N/ND v11
601    BOARDNAME := TL-WR841N-v11
602    DEVICE_PROFILE := TLWR841
603    TPLINK_HWID := 0x08410011
604 endef
605
606 define Device/tl-wr842n-v1
607     $(Device/tplink-8m)
608     DEVICE_TITLE := TP-LINK TL-WR842N/ND v1
609     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
610     BOARDNAME := TL-MR3420
611     DEVICE_PROFILE := TLWR842
612     TPLINK_HWID := 0x08420001
613 endef
614
615 define Device/tl-wr842n-v2
616     $(Device/tplink-8mlzma)
617     DEVICE_TITLE := TP-LINK TL-WR842N/ND v2
618     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
619     BOARDNAME := TL-WR842N-v2
620     DEVICE_PROFILE := TLWR842
621     TPLINK_HWID := 0x8420002
622 endef
623
624 define Device/tl-wr842n-v3
625     $(Device/tplink-16mlzma)
626     DEVICE_TITLE := TP-LINK TL-WR842N/ND v3
627     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
628     BOARDNAME := TL-WR842N-v3
629     DEVICE_PROFILE := TLWR842
630     TPLINK_HWID := 0x08420003
631 endef
632
633 define Device/tl-wr843nd-v1
634     $(Device/tplink-4mlzma)
635     DEVICE_TITLE := TP-LINK TL-WR843N/ND
636     BOARDNAME := TL-WR841N-v8
637     DEVICE_PROFILE := TLWR843
638     TPLINK_HWID := 0x08430001
639 endef
640
641 define Device/tl-wr847n-v8
642     $(Device/tplink-4mlzma)
643     DEVICE_TITLE := TP-LINK TL-WR847N/ND v8
644     BOARDNAME := TL-WR841N-v8
645     DEVICE_PROFILE := TLWR841
646     TPLINK_HWID := 0x08470008
647 endef
648 TARGET_DEVICES += tl-wr841-v1.5 tl-wr841-v3 tl-wr841-v5 tl-wr841-v7 tl-wr841-v8 tl-wr841-v9 tl-wr841-v10 tl-wr841-v11 tl-wr842n-v1 tl-wr842n-v2 tl-wr842n-v3 tl-wr843nd-v1 tl-wr847n-v8
649
650 define Device/tl-wr941nd-v2
651     $(Device/tplink-4m)
652     DEVICE_TITLE := TP-LINK TL-WR941N/ND v2
653     BOARDNAME := TL-WR941ND
654     DEVICE_PROFILE := TLWR941
655     TPLINK_HWID := 0x09410002
656     TPLINK_HWREV := 2
657 endef
658
659 define Device/tl-wr941nd-v3
660     $(Device/tplink-4m)
661     DEVICE_TITLE := TP-LINK TL-WR941N/ND v3
662     BOARDNAME := TL-WR941ND
663     DEVICE_PROFILE := TLWR941
664     TPLINK_HWID := 0x09410002
665     TPLINK_HWREV := 2
666 endef
667
668 define Device/tl-wr941nd-v4
669     $(Device/tplink-4m)
670     DEVICE_TITLE := TP-LINK TL-WR941N/ND v4
671     BOARDNAME := TL-WR741ND
672     DEVICE_PROFILE := TLWR941
673     TPLINK_HWID := 0x09410004
674 endef
675
676 define Device/tl-wr941nd-v5
677     $(Device/tplink-4mlzma)
678     DEVICE_TITLE := TP-LINK TL-WR941N/ND v5
679     BOARDNAME := TL-WR941ND-v5
680     DEVICE_PROFILE := TLWR941
681     TPLINK_HWID := 0x09410005
682 endef
683
684 define Device/tl-wr941nd-v6
685     $(Device/tplink-4mlzma)
686     DEVICE_TITLE := TP-LINK TL-WR941N/ND v6
687     BOARDNAME := TL-WR941ND-v6
688     DEVICE_PROFILE := TLWR941
689     TPLINK_HWID := 0x09410006
690 endef
691
692 # Chinese version (unlike European) is similar to the TL-WDR3500
693 define Device/tl-wr941nd-v6-cn
694     $(Device/tplink-4mlzma)
695     DEVICE_TITLE := TP-LINK TL-WR941N/ND v6 (CN)
696     BOARDNAME := TL-WDR3500
697     DEVICE_PROFILE := TLWR941
698     TPLINK_HWID := 0x09410006
699 endef
700 TARGET_DEVICES += tl-wr941nd-v2 tl-wr941nd-v3 tl-wr941nd-v4 tl-wr941nd-v5 tl-wr941nd-v6 tl-wr941nd-v6-cn
701
702 define Device/tl-wr1041n-v2
703     $(Device/tplink-4mlzma)
704     DEVICE_TITLE := TP-LINK TL-WR1041N
705     BOARDNAME := TL-WR1041N-v2
706     DEVICE_PROFILE := TLWR1041
707     TPLINK_HWID := 0x10410002
708 endef
709 TARGET_DEVICES += tl-wr1041n-v2
710
711 define Device/tl-wr1043nd-v1
712     $(Device/tplink-8m)
713     DEVICE_TITLE := TP-LINK TL-WR1043N/ND v1
714     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
715     BOARDNAME := TL-WR1043ND
716     DEVICE_PROFILE := TLWR1043
717     TPLINK_HWID := 0x10430001
718 endef
719
720 define Device/tl-wr1043nd-v2
721     $(Device/tplink-8mlzma)
722     DEVICE_TITLE := TP-LINK TL-WR1043N/ND v2
723     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
724     BOARDNAME := TL-WR1043ND-v2
725     DEVICE_PROFILE := TLWR1043
726     TPLINK_HWID := 0x10430002
727 endef
728
729 define Device/tl-wr1043nd-v3
730     $(Device/tplink-8mlzma)
731     DEVICE_TITLE := TP-LINK TL-WR1043N/ND v3
732     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
733     BOARDNAME := TL-WR1043ND-v2
734     DEVICE_PROFILE := TLWR1043
735     TPLINK_HWID := 0x10430003
736 endef
737 TARGET_DEVICES += tl-wr1043nd-v1 tl-wr1043nd-v2 tl-wr1043nd-v3
738
739 define Device/tl-wr2543-v1
740     $(Device/tplink-8mlzma)
741     DEVICE_TITLE := TP-LINK TL-WR2543N/ND
742     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
743     BOARDNAME := TL-WR2543N
744     DEVICE_PROFILE := TLWR2543
745     TPLINK_HWID := 0x25430001
746     IMAGE/sysupgrade.bin := append-rootfs | mktplinkfw sysupgrade -v 3.13.99
747     IMAGE/factory.bin := append-rootfs | mktplinkfw factory -v 3.13.99
748 endef
749 TARGET_DEVICES += tl-wr2543-v1
750
751 define Device/tl-wdr4900-v2
752     $(Device/tplink-8mlzma)
753     DEVICE_TITLE := TP-LINK TL-WDR4900v2
754     DEVICE_PACKAGES := kmod-usb-core kmod-usb2 kmod-ledtrig-usbdev
755     BOARDNAME := TL-WDR4900-v2
756     DEVICE_PROFILE := TLWDR4900V2
757     TPLINK_HWID := 0x49000002
758 endef
759 TARGET_DEVICES += tl-wdr4900-v2
760
761 define Device/tl-wa701nd-v1
762     $(Device/tplink-4m)
763     DEVICE_TITLE := TP-LINK TL-WA701N/ND v1
764     BOARDNAME := TL-WA901ND
765     DEVICE_PROFILE := TLWA701
766     TPLINK_HWID := 0x07010001
767 endef
768
769 define Device/tl-wa701nd-v2
770     $(Device/tplink-4mlzma)
771     DEVICE_TITLE := TP-LINK TL-WA701N/ND v2
772     BOARDNAME := TL-WA701ND-v2
773     DEVICE_PROFILE := TLWA701
774     TPLINK_HWID := 0x07010002
775     CONSOLE := ttyATH0,115200
776 endef
777
778 define Device/tl-wa730re-v1
779     $(Device/tplink-4m)
780     DEVICE_TITLE := TP-LINK TL-WA730RE
781     BOARDNAME := TL-WA901ND
782     DEVICE_PROFILE := TLWA730RE
783     TPLINK_HWID := 0x07300001
784 endef
785
786 define Device/tl-wa750re-v1
787     $(Device/tplink-4mlzma)
788     DEVICE_TITLE := TP-LINK TL-WA750RE
789     DEVICE_PACKAGES := rssileds
790     BOARDNAME := TL-WA750RE
791     DEVICE_PROFILE := TLWA750
792     TPLINK_HWID := 0x07500001
793 endef
794
795 define Device/tl-wa7510n
796     $(Device/tplink-4m)
797     DEVICE_TITLE := TP-LINK TL-WA7510N
798     BOARDNAME := TL-WA7510N
799     DEVICE_PROFILE := TLWA7510
800     TPLINK_HWID := 0x75100001
801 endef
802 TARGET_DEVICES += tl-wa701nd-v1 tl-wa701nd-v2 tl-wa730re-v1 tl-wa750re-v1 tl-wa7510n
803
804 define Device/tl-wa801nd-v1
805     $(Device/tplink-4m)
806     DEVICE_TITLE := TP-LINK TL-WA801N/ND v1
807     BOARDNAME := TL-WA901ND
808     DEVICE_PROFILE := TLWA801
809     TPLINK_HWID := 0x08010001
810 endef
811
812 define Device/tl-wa801nd-v2
813     $(Device/tplink-4mlzma)
814     DEVICE_TITLE := TP-LINK TL-WA801N/ND v2
815     BOARDNAME := TL-WA801ND-v2
816     DEVICE_PROFILE := TLWA801
817     TPLINK_HWID := 0x08010002
818 endef
819
820 define Device/tl-wa801nd-v3
821     $(Device/tplink-4mlzma)
822     DEVICE_TITLE := TP-LINK TL-WA801N/ND v3
823     BOARDNAME := TL-WA801ND-v3
824     DEVICE_PROFILE := TLWA801
825     TPLINK_HWID := 0x08010003
826 endef
827
828 define Device/tl-wa830re-v1
829     $(Device/tplink-4m)
830     DEVICE_TITLE := TP-LINK TL-WA830RE
831     BOARDNAME := TL-WA901ND
832     DEVICE_PROFILE := TLWA830
833     TPLINK_HWID := 0x08300010
834 endef
835
836 define Device/tl-wa830re-v2
837     $(Device/tplink-4mlzma)
838     DEVICE_TITLE := TP-LINK TL-WA830RE
839     BOARDNAME := TL-WA830RE-v2
840     DEVICE_PROFILE := TLWA830
841     TPLINK_HWID := 0x08300002
842 endef
843
844 define Device/tl-wa850re-v1
845     $(Device/tplink-4mlzma)
846     DEVICE_TITLE := TP-LINK TL-WA850RE
847     BOARDNAME := TL-WA850RE
848     DEVICE_PROFILE := TLWA850
849     TPLINK_HWID := 0x08500001
850 endef
851
852 define Device/tl-wa860re-v1
853     $(Device/tplink-4mlzma)
854     DEVICE_TITLE := TP-LINK TL-WA860RE
855     BOARDNAME := TL-WA860RE
856     DEVICE_PROFILE := TLWA860
857     TPLINK_HWID := 0x08600001
858 endef
859 TARGET_DEVICES += tl-wa801nd-v1 tl-wa801nd-v2 tl-wa801nd-v3 tl-wa830re-v1 tl-wa830re-v2 tl-wa850re-v1 tl-wa860re-v1
860
861 define Device/tl-wa901nd-v1
862     $(Device/tplink-4m)
863     DEVICE_TITLE := TP-LINK TL-WA901N/ND v1
864     BOARDNAME := TL-WA901ND
865     DEVICE_PROFILE := TLWA901
866     TPLINK_HWID := 0x09010001
867 endef
868
869 define Device/tl-wa901nd-v2
870     $(Device/tplink-4m)
871     DEVICE_TITLE := TP-LINK TL-WA901N/ND v2
872     BOARDNAME := TL-WA901ND-v2
873     DEVICE_PROFILE := TLWA901
874     TPLINK_HWID := 0x09010002
875 endef
876
877 define Device/tl-wa901nd-v3
878     $(Device/tplink-4mlzma)
879     DEVICE_TITLE := TP-LINK TL-WA901N/ND v3
880     BOARDNAME := TL-WA901ND-v3
881     DEVICE_PROFILE := TLWA901
882     TPLINK_HWID := 0x09010003
883 endef
884
885 define Device/tl-wa901nd-v4
886     $(Device/tplink-4mlzma)
887     DEVICE_TITLE := TP-LINK TL-WA901N/ND v4
888     BOARDNAME := TL-WA901ND-v4
889     DEVICE_PROFILE := TLWA901
890     TPLINK_HWID := 0x09010004
891     IMAGE/factory.bin := append-rootfs | mktplinkfw factory -C EU
892 endef
893
894 TARGET_DEVICES += tl-wa901nd-v1 tl-wa901nd-v2 tl-wa901nd-v3 tl-wa901nd-v4
895
896 define Device/tl-wa7210n-v2
897     $(Device/tplink-4mlzma)
898     DEVICE_TITLE := TP-LINK TL-WA7210N
899     DEVICE_PACKAGES := rssileds kmod-ledtrig-netdev
900     BOARDNAME := TL-WA7210N-v2
901     DEVICE_PROFILE := TLWA7210
902     TPLINK_HWID := 0x72100002
903     CONSOLE := ttyATH0,115200
904 endef
905 TARGET_DEVICES += tl-wa7210n-v2