# -X reserve <size> bytes in the firmware image (hexval prefixed with 0x)
define Build/mktplinkfw
-$(STAGING_DIR_HOST)/bin/mktplinkfw \
- -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -F $(TPLINK_FLASHLAYOUT) -N OpenWrt -V $(REVISION) $2 \
+ -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -F $(TPLINK_FLASHLAYOUT) -N OpenWrt -V $(REVISION) \
-m $(TPLINK_HEADER_VERSION) \
-k $(word 1,$^) \
-r $@ \
-o $@.new \
-j -X 0x40000 \
-a $(call rootfs_align,$(FILESYSTEM)) \
- $(if $(findstring sysupgrade,$1),-s) && mv $@.new $@ || rm -f $@
+ $(wordlist 2,$(words $(1)),$(1)) \
+ $(if $(findstring sysupgrade,$(word 1,$(1))),-s) && mv $@.new $@ || rm -f $@
endef
# mktplinkfw-initramfs <optional extra arguments to mktplinkfw binary>
# -c combined image
define Build/mktplinkfw-initramfs
$(STAGING_DIR_HOST)/bin/mktplinkfw \
- -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -F $(TPLINK_FLASHLAYOUT) -N OpenWrt -V $(REVISION) $2 \
+ -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -F $(TPLINK_FLASHLAYOUT) -N OpenWrt -V $(REVISION) $(1) \
-m $(TPLINK_HEADER_VERSION) \
-k $@ \
-o $@.new \
define Build/tplink-safeloader
-$(STAGING_DIR_HOST)/bin/tplink-safeloader \
- -B $(TPLINK_BOARD_NAME) \
- -V $(REVISION) \
- -k $(word 1,$^) \
- -r $@ \
- -o $@.new \
- $2 \
- -j \
- $(if $(findstring sysupgrade,$1),-S) && mv $@.new $@ || rm -f $@
+ -B $(TPLINK_BOARD_NAME) \
+ -V $(REVISION) \
+ -k $(word 1,$^) \
+ -r $@ \
+ -o $@.new \
+ -j \
+ $(wordlist 2,$(words $(1)),$(1)) \
+ $(if $(findstring sysupgrade,$(word 1,$(1))),-S) && mv $@.new $@ || rm -f $@
endef
define Build/loader-common
define Device/archer-c7-v2
$(Device/tplink-16mlzma)
- BOARDNAME := ARCHER-C7
+ BOARDNAME := ARCHER-C7-V2
DEVICE_PROFILE := ARCHERC7
TPLINK_HWID := 0xc7000002
+ IMAGE/factory.bin := append-rootfs | mktplinkfw factory -C US
endef
define Device/tl-wdr7500-v3
endef
TARGET_DEVICES += minibox-v1
+define Device/omy-g1
+ $(Device/tplink-16mlzma)
+ BOARDNAME := OMY-G1
+ DEVICE_PROFILE := OMYG1
+ TPLINK_HWID := 0x06660101
+endef
+
define Device/omy-x1
$(Device/tplink-8mlzma)
BOARDNAME := OMY-X1
DEVICE_PROFILE := OMYX1
TPLINK_HWID := 0x06660201
endef
-TARGET_DEVICES += omy-x1
+TARGET_DEVICES += omy-g1 omy-x1
define Device/onion-omega
$(Device/tplink-16mlzma)
CONSOLE := ttyATH0,115200
endef
+define Device/tl-wr740n-v6
+ $(Device/tplink-4mlzma)
+ BOARDNAME := TL-WR841N-v9
+ DEVICE_PROFILE := TLWR740
+ TPLINK_HWID := 0x07400006
+endef
+
define Device/tl-wr741nd-v1
$(Device/tplink-4m)
BOARDNAME := TL-WR741ND
CONSOLE := ttyATH0,115200
endef
+define Device/tl-wr810n
+ $(Device/tplink-8mlzma)
+ BOARDNAME := TL-WR810N
+ DEVICE_PROFILE := TLWR810
+ TPLINK_HWID := 0x08100001
+endef
+TARGET_DEVICES += tl-wr810n
+
define Device/tl-wr743nd-v1
$(Device/tplink-4m)
BOARDNAME := TL-WR741ND
TPLINK_HWID := 0x07430002
CONSOLE := ttyATH0,115200
endef
-TARGET_DEVICES += tl-wr740n-v1 tl-wr740n-v3 tl-wr740n-v4 tl-wr740n-v5 tl-wr741nd-v1 tl-wr741nd-v2 tl-wr741nd-v4 tl-wr741nd-v5 tl-wr743nd-v1 tl-wr743nd-v2
+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
define Device/tl-wr841-v1.5
$(Device/tplink-4m)
TPLINK_HWID := 0x8420002
endef
+define Device/tl-wr842n-v3
+ $(Device/tplink-16mlzma)
+ BOARDNAME := TL-WR842N-v3
+ DEVICE_PROFILE := TLWR842
+ TPLINK_HWID := 0x08420003
+endef
+
define Device/tl-wr843nd-v1
$(Device/tplink-4mlzma)
BOARDNAME := TL-WR841N-v8
DEVICE_PROFILE := TLWR841
TPLINK_HWID := 0x08470008
endef
-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-wr843nd-v1 tl-wr847n-v8
+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
define Device/tl-wr941nd-v2
$(Device/tplink-4m)
BOARDNAME := TL-WR2543N
DEVICE_PROFILE := TLWR2543
TPLINK_HWID := 0x25430001
- IMAGE/sysupgrade.bin := append-rootfs | mktplinkfw sysupgrade "-v 3.13.99"
- IMAGE/factory.bin := append-rootfs | mktplinkfw factory "-v 3.13.99"
+ IMAGE/sysupgrade.bin := append-rootfs | mktplinkfw sysupgrade -v 3.13.99
+ IMAGE/factory.bin := append-rootfs | mktplinkfw factory -v 3.13.99
endef
TARGET_DEVICES += tl-wr2543-v1
DEVICE_PROFILE := TLWA901
TPLINK_HWID := 0x09010003
endef
-TARGET_DEVICES += tl-wa901nd-v1 tl-wa901nd-v2 tl-wa901nd-v3
+
+define Device/tl-wa901nd-v4
+ $(Device/tplink-4mlzma)
+ BOARDNAME := TL-WA901ND-v4
+ DEVICE_PROFILE := TLWA901
+ TPLINK_HWID := 0x09010004
+endef
+
+TARGET_DEVICES += tl-wa901nd-v1 tl-wa901nd-v2 tl-wa901nd-v3 tl-wa901nd-v4
define Device/tl-wa7210n-v2
$(Device/tplink-4mlzma)
IMAGE/sysupgrade.bin = append-kernel $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
endef
+define Device/ubnt-unifiac
+ DEVICE_PROFILE := UBNT
+ IMAGE_SIZE := 7744k
+ MTDPARTS = spi0.0:384k(u-boot)ro,64k(u-boot-env)ro,7744k(firmware),7744k(ubnt-airos)ro,128k(bs)ro,256k(cfg)ro,64k(EEPROM)ro
+ IMAGES := sysupgrade.bin
+ IMAGE/sysupgrade.bin = append-kernel $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
+endef
+
define Device/rw2458n
$(Device/ubnt-xm)
BOARDNAME := RW2458N
DEVICE_PROFILE := UBNT UBNTUNIFI
endef
-define Device/ubnt-unifiac
- DEVICE_PROFILE := UBNT UBNTUNIFIAC
- IMAGE_SIZE := 7744k
- MTDPARTS = spi0.0:384k(u-boot)ro,64k(u-boot-env)ro,7744k(firmware),7744k(ubnt-airos)ro,128k(bs)ro,256k(cfg)ro,64k(EEPROM)ro
- IMAGES := sysupgrade.bin
- IMAGE/sysupgrade.bin = append-kernel $$$$(BLOCKSIZE) | append-rootfs | pad-rootfs | check-size $$$$(IMAGE_SIZE)
- BOARDNAME := UBNT-UF-AC
+define Device/ubnt-unifiac-lite
+ $(Device/ubnt-unifiac)
+ DEVICE_PROFILE := UBNT UBNTUNIFIACLITE
+ BOARDNAME := UBNT-UF-AC-LITE
+endef
+
+define Device/ubnt-unifiac-pro
+ $(Device/ubnt-unifiac)
+ DEVICE_PROFILE := UBNT UBNTUNIFIACPRO
+ BOARDNAME := UBNT-UF-AC-PRO
endef
define Device/ubnt-unifi-outdoor
BOARDNAME := UBNT-U20
DEVICE_PROFILE := UBNT UBNTUNIFIOUTDOOR
endef
-TARGET_DEVICES += ubnt-unifi ubnt-unifiac ubnt-unifi-outdoor
+TARGET_DEVICES += ubnt-unifi ubnt-unifiac-lite ubnt-unifiac-pro ubnt-unifi-outdoor
define Device/ubnt-nano-m-xw
$(Device/ubnt-xw)