Signed-off-by: Alexander Couzens <lyn...@fe80.eu> --- target/linux/ar71xx/image/Makefile | 92 ++++++++++++++++++-------------------- 1 file changed, 44 insertions(+), 48 deletions(-)
diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile index cb11104..b7b24df 100644 --- a/target/linux/ar71xx/image/Makefile +++ b/target/linux/ar71xx/image/Makefile @@ -73,6 +73,32 @@ define Build/mktplinkfw-initramfs @mv $@.new $@ endef +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 $@ +endef + +# using the CMDLINE here would bloat the loader with 512kb +# models like the cpe510 doesn't support such big kernels +define Build/loader-elf + rm -rf $@.src + $(MAKE) -C lzma-loader \ + PKG_BUILD_DIR="$@.src" \ + TARGET_DIR="$(dir $@)" LOADER_NAME="$(notdir $@)" \ + BOARD="$(BOARDNAME)" \ + LZMA_TEXT_START=0x80a00000 LOADADDR=0x80060000 \ + $(1) compile loader.elf + mv "$@.elf" "$@" + rm -rf $@.src +endef + define Build/loader-common rm -rf $@.src $(MAKE) -C lzma-loader \ @@ -93,6 +119,10 @@ define Build/loader-kernel $(call Build/loader-common,LOADER_DATA="$@") endef +define Build/loader-kernel-elf + $(call Build/loader-elf,LOADER_DATA="$@") +endef + define Build/loader-okli dd if=$(KDIR)/loader-$(1).gz bs=7680 conv=sync of="$@.new" cat "$@" >> "$@.new" @@ -103,7 +133,7 @@ define Build/copy-file cat "$(1)" > "$@" endef -DEVICE_VARS += TPLINK_HWID TPLINK_HWREV TPLINK_FLASHLAYOUT TPLINK_HEADER_VERSION +DEVICE_VARS += TPLINK_HWID TPLINK_HWREV TPLINK_FLASHLAYOUT TPLINK_HEADER_VERSION TPLINK_BOARD_NAME # UBNT_BOARD e.g. one of (XS2, XS5, RS, XM) # UBNT_TYPE e.g. one of (BZ, XM, XW) @@ -310,6 +340,19 @@ $(Device/tplink) IMAGE_SIZE := 15872k endef +define Device/cpe210-220-510-520 + 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) + IMAGE_SIZE := 7680k + BOARDNAME := CPE510 + TPLINK_BOARD_NAME := CPE510 + KERNEL := kernel-bin | patch-cmdline | lzma | loader-kernel-elf + KERNEL_INITRAMFS := copy-file $(KDIR)/vmlinux-initramfs.bin.lzma | loader-kernel-elf + IMAGES := sysupgrade.bin factory.bin + IMAGE/sysupgrade.bin := append-rootfs | tplink-safeloader sysupgrade + IMAGE/factory.bin := append-rootfs | tplink-safeloader factory +endef +TARGET_DEVICES += cpe210-220-510-520 + define Device/tl-wdr4300-v1 $(Device/tplink-8mlzma) BOARDNAME = TL-WDR4300 @@ -1491,28 +1534,6 @@ define Image/BuildLoader endef # -# Embed patched lzma-compressed kernel inside lzma-loader. -# -# Specifying the command line via the lzma-loader doesn't work with some -# models (like the TP-LINK CPE series), so this version first patches the -# command line in the image and then builds the loader around it. -# -# $(1), suffix of output filename, e.g. generic, lowercase board name, etc. -# $(2), suffix of target file to build, e.g. bin, gz, elf -# $(3), kernel command line to pass from lzma-loader to kernel -# $(4), unused here -# $(5), suffix of kernel filename, e.g. -initramfs, or empty -define Image/BuildLoaderPatched - $(call PatchKernelLzma,$(1),$(3)) - -rm -rf $(KDIR)/lzma-loader - $(LOADER_MAKE) LOADER=loader-$(1).$(2) \ - LZMA_TEXT_START=0x80a00000 LOADADDR=0x80060000 \ - LOADER_DATA="$(KDIR_TMP)/vmlinux-$(1)$(5).bin.lzma" BOARD="$(1)" \ - compile loader.$(2) - -$(CP) $(KDIR)/loader-$(1).$(2) $(KDIR)/loader-$(1)$(5).$(2) -endef - -# # Build lzma-loader alone which will search for lzma-compressed kernel identified by # uImage header with magic "OKLI" at boot time. # @@ -1561,7 +1582,6 @@ cameo_ap123_mtdlayout_4M=mtdparts=spi0.0:64k(u-boot)ro,64k(nvram)ro,3712k(firmwa cameo_db120_mtdlayout=mtdparts=spi0.0:64k(uboot)ro,64k(nvram)ro,15936k(firmware),192k(lang)ro,64k(mac)ro,64k(art)ro cameo_db120_mtdlayout_8M=mtdparts=spi0.0:64k(uboot)ro,64k(nvram)ro,7872k(firmware),128k(lang)ro,64k(art)ro cap4200ag_mtdlayout=mtdparts=spi0.0:256k(u-boot),64k(u-boot-env),320k(custom)ro,1536k(kernel),12096k(rootfs),2048k(failsafe),64k(art),13632k@0xa0000(firmware) -cpe510_mtdlayout=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) eap300v2_mtdlayout=mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env),320k(custom),13632k(firmware),2048k(failsafe),64k(art)ro db120_mtdlayout=mtdparts=spi0.0:256k(u-boot)ro,64k(u-boot-env)ro,6336k(rootfs),1408k(kernel),64k(nvram),64k(art)ro,7744k@0x50000(firmware) dgl_5500_mtdlayout=mtdparts=spi0.0:192k(u-boot)ro,64k(nvram)ro,15296k(firmware),192k(lang)ro,512k(my-dlink)ro,64k(mac)ro,64k(art)ro @@ -2019,28 +2039,6 @@ define Image/Build/Senao $(call sysupname,$(1),$(2)) endef -Image/Build/TPLINK-SAFELOADER/loader = $(call Image/BuildLoaderPatched,$(1),elf,$(2) $(3)) - -define Image/Build/TPLINK-SAFELOADER - [ -e "$(KDIR)/loader-$(2).elf" ] - - -$(STAGING_DIR_HOST)/bin/tplink-safeloader \ - -B $(5) \ - -k $(KDIR)/loader-$(2).elf \ - -r $(KDIR)/root.$(1) \ - -V $(REVISION) \ - -j \ - -o $(call factoryname,$(1),$(2)) - -$(STAGING_DIR_HOST)/bin/tplink-safeloader \ - -B $(5) \ - -k $(KDIR)/loader-$(2).elf \ - -r $(KDIR)/root.$(1) \ - -V $(REVISION) \ - -j -S \ - -o $(call sysupname,$(1),$(2)) -endef - - define Image/Build/CyberTAN echo -n '' > $(KDIR_TMP)/empty.bin $(STAGING_DIR_HOST)/bin/trx -o $(KDIR)/image.tmp \ @@ -2481,8 +2479,6 @@ $(eval $(call SingleProfile,Seama,64k,QIHOO360,qihoo-c301,QIHOO-C301,ttyS0,11520 $(eval $(call SingleProfile,Senao,squashfs-only,EAP300V2,eap300v2,EAP300V2,ttyS0,115200,$$(eap300v2_mtdlayout))) -$(eval $(call SingleProfile,TPLINK-SAFELOADER,64kraw,CPE510,cpe210-220-510-520,CPE510,ttyS0,115200,$$(cpe510_mtdlayout),CPE510)) - $(eval $(call SingleProfile,WHRHPG300N,64kraw,WHRG301N,whr-g301n,WHR-G301N,ttyS0,115200,$$(whrhpg300n_mtdlayout),WHR-G301N)) $(eval $(call SingleProfile,WHRHPG300N,64kraw,WHRHPG300N,whr-hp-g300n,WHR-HP-G300N,ttyS0,115200,$$(whrhpg300n_mtdlayout),WHR-HP-G300N)) $(eval $(call SingleProfile,WHRHPG300N,64kraw,WHRHPGN,whr-hp-gn,WHR-HP-GN,ttyS0,115200,$$(whrhpg300n_mtdlayout),WHR-HP-GN)) -- 2.7.2 _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel