ar71xx/image: allow builds of loader without cmdline injecting

On most platforms the cmdline is supplied by the loader to the kernel.
When using an elf loader with cmdline the size is bloated by 512k.
For loader-elf platforms like the cpe510 better use loader-elf but patch
the cmdline into the kernel.

wdr1043: Tested loader still works using sysupgade image.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>

SVN-Revision: 49080
This commit is contained in:
John Crispin 2016-03-23 12:52:47 +00:00
parent 5bac8f0fd4
commit e0a3a84521

View File

@ -78,7 +78,7 @@ define Build/loader-common
$(MAKE) -C lzma-loader \
PKG_BUILD_DIR="$@.src" \
TARGET_DIR="$(dir $@)" LOADER_NAME="$(notdir $@)" \
KERNEL_CMDLINE="$(CMDLINE)" BOARD="$(BOARDNAME)" \
BOARD="$(BOARDNAME)" \
LZMA_TEXT_START=0x80a00000 LOADADDR=0x80060000 \
$(1) compile loader.$(LOADER_TYPE)
mv "$@.$(LOADER_TYPE)" "$@"
@ -86,13 +86,17 @@ define Build/loader-common
endef
define Build/loader-okli-compile
$(call Build/loader-common,FLASH_OFFS=$(LOADER_FLASH_OFFS) FLASH_MAX=0)
$(call Build/loader-common,FLASH_OFFS=$(LOADER_FLASH_OFFS) FLASH_MAX=0 KERNEL_CMDLINE="$(CMDLINE)")
endef
define Build/loader-kernel
$(call Build/loader-common,LOADER_DATA="$@")
endef
define Build/loader-kernel-cmdline
$(call Build/loader-common,LOADER_DATA="$@" KERNEL_CMDLINE="$(CMDLINE)")
endef
define Build/loader-okli
dd if=$(KDIR)/loader-$(1).gz bs=7680 conv=sync of="$@.new"
cat "$@" >> "$@.new"
@ -278,7 +282,7 @@ $(Device/tplink)
COMPILE := loader-$(1).gz
COMPILE/loader-$(1).gz := loader-okli-compile
KERNEL := copy-file $(KDIR)/vmlinux.bin.lzma | uImage lzma -M 0x4f4b4c49 | loader-okli $(1)
KERNEL_INITRAMFS := copy-file $(KDIR)/vmlinux-initramfs.bin.lzma | loader-kernel | mktplinkfw-initramfs
KERNEL_INITRAMFS := copy-file $(KDIR)/vmlinux-initramfs.bin.lzma | loader-kernel-cmdline | mktplinkfw-initramfs
endef
define Device/tplink-4m