[OpenWrt-Devel] [PATCH v2 2/3] ar71xx/image: allow builds of loader without cmdline injecting

John Crispin blogic at openwrt.org
Wed Mar 9 00:15:50 EST 2016



On 08/03/2016 00:37, Alexander Couzens wrote:
> 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 at fe80.eu>
> ---
>  target/linux/ar71xx/image/Makefile | 10 +++++++---
>  1 file changed, 7 insertions(+), 3 deletions(-)
> 
> diff --git a/target/linux/ar71xx/image/Makefile b/target/linux/ar71xx/image/Makefile
> index 068d293..723ce9d 100644
> --- a/target/linux/ar71xx/image/Makefile
> +++ b/target/linux/ar71xx/image/Makefile
> @@ -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


the above will break. did not check if there are more invocations of
loader-common. you really should check all of them. please mae sure the
patch generates no regressions

	John

>  
> +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
> 
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list