aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/image-commands.mk22
-rw-r--r--target/linux/ath79/image/common-tp-link.mk27
-rw-r--r--target/linux/ath79/image/generic-tp-link.mk8
-rw-r--r--target/linux/ath79/image/tiny-tp-link.mk14
-rw-r--r--target/linux/mpc85xx/image/Makefile31
-rw-r--r--target/linux/ramips/image/mt7620.mk21
6 files changed, 41 insertions, 82 deletions
diff --git a/include/image-commands.mk b/include/image-commands.mk
index 5dfd6a2c2f..3b091f26ac 100644
--- a/include/image-commands.mk
+++ b/include/image-commands.mk
@@ -3,6 +3,10 @@
IMAGE_KERNEL = $(word 1,$^)
IMAGE_ROOTFS = $(word 2,$^)
+define rootfs_align
+$(patsubst %-256k,0x40000,$(patsubst %-128k,0x20000,$(patsubst %-64k,0x10000,$(patsubst squashfs%,0x4,$(patsubst root.%,%,$(1))))))
+endef
+
define Build/uImage
mkimage -A $(LINUX_KARCH) \
-O linux -T kernel \
@@ -335,6 +339,24 @@ define Build/tplink-v1-header
@mv $@.new $@
endef
+# combine kernel and rootfs into one image
+# mktplinkfw <type> <optional extra arguments to mktplinkfw binary>
+# <type> is "sysupgrade" or "factory"
+#
+# -a align the rootfs start on an <align> bytes boundary
+# -j add jffs2 end-of-filesystem markers
+# -s strip padding from end of the image
+# -X reserve <size> bytes in the firmware image (hexval prefixed with 0x)
+define Build/tplink-v1-image
+ -$(STAGING_DIR_HOST)/bin/mktplinkfw \
+ -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -F $(TPLINK_FLASHLAYOUT) \
+ -N "$(VERSION_DIST)" -V $(REVISION) -m $(TPLINK_HEADER_VERSION) \
+ -k $(IMAGE_KERNEL) -r $(IMAGE_ROOTFS) -o $@.new -j -X 0x40000 \
+ -a $(call rootfs_align,$(FILESYSTEM)) \
+ $(wordlist 2,$(words $(1)),$(1)) \
+ $(if $(findstring sysupgrade,$(word 1,$(1))),-s) && mv $@.new $@ || rm -f $@
+endef
+
define Build/tplink-v2-header
$(STAGING_DIR_HOST)/bin/mktplinkfw2 \
-c -H $(TPLINK_HWID) -W $(TPLINK_HWREV) -L $(KERNEL_LOADADDR) \
diff --git a/target/linux/ath79/image/common-tp-link.mk b/target/linux/ath79/image/common-tp-link.mk
index 0dc58191a8..1c7ff0e567 100644
--- a/target/linux/ath79/image/common-tp-link.mk
+++ b/target/linux/ath79/image/common-tp-link.mk
@@ -1,28 +1,6 @@
DEVICE_VARS += TPLINK_HWID TPLINK_HWREV TPLINK_FLASHLAYOUT TPLINK_HEADER_VERSION
DEVICE_VARS += TPLINK_BOARD_NAME TPLINK_BOARD_ID
-define rootfs_align
-$(patsubst %-256k,0x40000,$(patsubst %-128k,0x20000,$(patsubst %-64k,0x10000,$(patsubst squashfs%,0x4,$(patsubst root.%,%,$(1))))))
-endef
-
-# combine kernel and rootfs into one image
-# mktplinkfw <type> <optional extra arguments to mktplinkfw binary>
-# <type> is "sysupgrade" or "factory"
-#
-# -a align the rootfs start on an <align> bytes boundary
-# -j add jffs2 end-of-filesystem markers
-# -s strip padding from end of the image
-# -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) -m $(TPLINK_HEADER_VERSION) \
- -k $(IMAGE_KERNEL) -r $@ -o $@.new -j -X 0x40000 \
- -a $(call rootfs_align,$(FILESYSTEM)) \
- $(wordlist 2,$(words $(1)),$(1)) \
- $(if $(findstring sysupgrade,$(word 1,$(1))),-s) && mv $@.new $@ || rm -f $@
-endef
-
# mktplinkfw-combined
#
# -c combined image
@@ -50,9 +28,8 @@ define Device/tplink
KERNEL := kernel-bin | append-dtb | lzma
KERNEL_INITRAMFS := kernel-bin | append-dtb | lzma | tplink-v1-header
IMAGES += factory.bin
- IMAGE/sysupgrade.bin := append-rootfs | mktplinkfw sysupgrade | \
- append-metadata
- IMAGE/factory.bin := append-rootfs | mktplinkfw factory
+ IMAGE/sysupgrade.bin := tplink-v1-image sysupgrade | append-metadata
+ IMAGE/factory.bin := tplink-v1-image factory
endef
define Device/tplink-nolzma
diff --git a/target/linux/ath79/image/generic-tp-link.mk b/target/linux/ath79/image/generic-tp-link.mk
index 603cacdaf2..a7266f05a9 100644
--- a/target/linux/ath79/image/generic-tp-link.mk
+++ b/target/linux/ath79/image/generic-tp-link.mk
@@ -157,8 +157,8 @@ define Device/tplink_archer-c7-v2
TPLINK_HWID := 0xc7000002
SUPPORTED_DEVICES += archer-c7
IMAGES += factory-us.bin factory-eu.bin
- IMAGE/factory-us.bin := append-rootfs | mktplinkfw factory -C US
- IMAGE/factory-eu.bin := append-rootfs | mktplinkfw factory -C EU
+ IMAGE/factory-us.bin := tplink-v1-image factory -C US
+ IMAGE/factory-eu.bin := tplink-v1-image factory -C EU
endef
TARGET_DEVICES += tplink_archer-c7-v2
@@ -502,9 +502,9 @@ define Device/tplink_tl-wr2543-v1
DEVICE_VARIANT := v1
DEVICE_PACKAGES := kmod-usb2 kmod-usb-ledtrig-usbport
TPLINK_HWID := 0x25430001
- IMAGE/sysupgrade.bin := append-rootfs | mktplinkfw sysupgrade -v 3.13.99 | \
+ IMAGE/sysupgrade.bin := tplink-v1-image sysupgrade -v 3.13.99 | \
append-metadata | check-size $$$$(IMAGE_SIZE)
- IMAGE/factory.bin := append-rootfs | mktplinkfw factory -v 3.13.99
+ IMAGE/factory.bin := tplink-v1-image factory -v 3.13.99
SUPPORTED_DEVICES += tl-wr2543-v1
endef
TARGET_DEVICES += tplink_tl-wr2543-v1
diff --git a/target/linux/ath79/image/tiny-tp-link.mk b/target/linux/ath79/image/tiny-tp-link.mk
index 172f22f320..070ede9721 100644
--- a/target/linux/ath79/image/tiny-tp-link.mk
+++ b/target/linux/ath79/image/tiny-tp-link.mk
@@ -198,8 +198,8 @@ define Device/tplink_tl-wr841-v11
TPLINK_HWID := 0x08410011
SUPPORTED_DEVICES += tl-wr841n-v11
IMAGES += factory-us.bin factory-eu.bin
- IMAGE/factory-us.bin := append-rootfs | mktplinkfw factory -C US
- IMAGE/factory-eu.bin := append-rootfs | mktplinkfw factory -C EU
+ IMAGE/factory-us.bin := tplink-v1-image factory -C US
+ IMAGE/factory-eu.bin := tplink-v1-image factory -C EU
endef
TARGET_DEVICES += tplink_tl-wr841-v11
@@ -211,8 +211,8 @@ define Device/tplink_tl-wr841-v12
TPLINK_HWID := 0x08410012
SUPPORTED_DEVICES += tl-wr841n-v11
IMAGES += factory-us.bin factory-eu.bin
- IMAGE/factory-us.bin := append-rootfs | mktplinkfw factory -C US
- IMAGE/factory-eu.bin := append-rootfs | mktplinkfw factory -C EU
+ IMAGE/factory-us.bin := tplink-v1-image factory -C US
+ IMAGE/factory-eu.bin := tplink-v1-image factory -C EU
endef
TARGET_DEVICES += tplink_tl-wr841-v12
@@ -234,9 +234,9 @@ define Device/tplink_tl-wr940n-v4
TPLINK_HWID := 0x09400004
SUPPORTED_DEVICES += tl-wr940n-v4
IMAGES += factory-us.bin factory-eu.bin factory-br.bin
- IMAGE/factory-us.bin := append-rootfs | mktplinkfw factory -C US
- IMAGE/factory-eu.bin := append-rootfs | mktplinkfw factory -C EU
- IMAGE/factory-br.bin := append-rootfs | mktplinkfw factory -C BR
+ IMAGE/factory-us.bin := tplink-v1-image factory -C US
+ IMAGE/factory-eu.bin := tplink-v1-image factory -C EU
+ IMAGE/factory-br.bin := tplink-v1-image factory -C BR
endef
TARGET_DEVICES += tplink_tl-wr940n-v4
diff --git a/target/linux/mpc85xx/image/Makefile b/target/linux/mpc85xx/image/Makefile
index 5ca16909e7..98fe51c7e9 100644
--- a/target/linux/mpc85xx/image/Makefile
+++ b/target/linux/mpc85xx/image/Makefile
@@ -5,36 +5,12 @@
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/image.mk
-DEVICE_VARS += TPLINK_HWID TPLINK_HWREV TPLINK_FLASHLAYOUT
-
-define rootfs_align
-$(patsubst %-256k,0x40000,$(patsubst %-128k,0x20000,$(patsubst %-64k,0x10000,$(patsubst squashfs%,0x4,$(patsubst root.%,%,$(1))))))
-endef
+DEVICE_VARS += TPLINK_HWID TPLINK_HWREV TPLINK_FLASHLAYOUT TPLINK_HEADER_VERSION
define Build/copy-file
cat "$(1)" > "$@"
endef
-# combine kernel and rootfs into one image
-# mktplinkfw <type> <optional extra arguments to mktplinkfw binary>
-# <type> is "sysupgrade" or "factory"
-#
-# -a align the rootfs start on an <align> bytes boundary
-# -j add jffs2 end-of-filesystem markers
-# -s strip padding from end of the image
-# -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) \
- -k $(IMAGE_KERNEL) \
- -r $@ \
- -o $@.new \
- -j -X 0x40000 \
- -a $(call rootfs_align,$(FILESYSTEM)) \
- $(wordlist 2,$(words $(1)),$(1)) \
- $(if $(findstring sysupgrade,$(word 1,$(1))),-s) && mv $@.new $@ || rm -f $@
-endef
-
define Device/Default
PROFILES := Default
DEVICE_DTS := $(lastword $(subst _, ,$(1)))
@@ -51,6 +27,7 @@ define Device/tplink_tl-wdr4900-v1
DEVICE_VENDOR := TP-Link
DEVICE_MODEL := TL-WDR4900
DEVICE_VARIANT := v1
+ TPLINK_HEADER_VERSION := 1
TPLINK_HWID := 0x49000001
TPLINK_HWREV := 1
TPLINK_FLASHLAYOUT := 16Mppc
@@ -64,8 +41,8 @@ define Device/tplink_tl-wdr4900-v1
ARTIFACTS := fdt.bin
ARTIFACT/fdt.bin := append-dtb
IMAGES := fdt.bin factory.bin sysupgrade.bin
- IMAGE/sysupgrade.bin := append-rootfs | mktplinkfw sysupgrade | append-metadata
- IMAGE/factory.bin := append-rootfs | mktplinkfw factory
+ IMAGE/sysupgrade.bin := tplink-v1-image sysupgrade | append-metadata
+ IMAGE/factory.bin := tplink-v1-image factory
endef
TARGET_DEVICES += tplink_tl-wdr4900-v1
diff --git a/target/linux/ramips/image/mt7620.mk b/target/linux/ramips/image/mt7620.mk
index 698d1b5da2..72310f9e7e 100644
--- a/target/linux/ramips/image/mt7620.mk
+++ b/target/linux/ramips/image/mt7620.mk
@@ -16,23 +16,6 @@ define Build/elecom-header
--owner=0 --group=0 -f $@ -C $(KDIR) v_0.0.0.bin v_0.0.0.md5
endef
-# combine kernel and rootfs into one image
-# mktplinkfw <type> <optional extra arguments to mktplinkfw binary>
-# <type> is "sysupgrade" or "factory"
-#
-# -a align the rootfs start on an <align> bytes boundary
-# -j add jffs2 end-of-filesystem markers
-# -s strip padding from end of the image
-# -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) -m $(TPLINK_HEADER_VERSION) \
- -k $(IMAGE_KERNEL) -r $(IMAGE_ROOTFS) -o $@.new -j -X 0x40000 -a 0x4 \
- $(wordlist 2,$(words $(1)),$(1)) \
- $(if $(findstring sysupgrade,$(word 1,$(1))),-s) && mv $@.new $@ || rm -f $@
-endef
-
define Device/aigale_ai-br100
SOC := mt7620a
IMAGE_SIZE := 7936k
@@ -962,8 +945,8 @@ define Device/tplink_re200-v1
DEVICE_VARIANT := v1
DEVICE_PACKAGES := kmod-mt76x0e
IMAGES += factory.bin
- IMAGE/sysupgrade.bin := mktplinkfw sysupgrade -e -O | append-metadata
- IMAGE/factory.bin := mktplinkfw factory -e -O
+ IMAGE/sysupgrade.bin := tplink-v1-image sysupgrade -e -O | append-metadata
+ IMAGE/factory.bin := tplink-v1-image factory -e -O
IMAGE_SIZE := 7936k
KERNEL := $(KERNEL_DTB)
KERNEL_INITRAMFS := $(KERNEL_DTB) | tplink-v1-header -e -O