[OE-core] [meta][PATCH 1/2] Fix some issues in the fitImage generation

André Draszik git at andred.net
Wed Oct 25 10:13:27 UTC 2017


On Wed, 2017-10-25 at 09:32 +0200, Thomas Perrot wrote:
> - Bad image type replacement for aarch64
> - Fix DTB path in fitimage.its

It doesn't look like the DTB bit is still relevant in this commit.

> - Ignore fitImage type in do_bundle_initramfs task because the packaging
> is made by do_assemble_fitimage_initramfs
> - the images for arm64 are not compressed the linux_comp variable must
> therefore be none

I think it would also make sense to split this into multiple commits, as
your aarch64 fixes and fitimage fixes aren't directly related.

> Signed-off-by: Thomas Perrot <thomas.perrot at tupi.fr>
> ---
>  meta/classes/kernel-fitimage.bbclass |  7 +++++--
>  meta/classes/kernel-uboot.bbclass    | 11 ++++++++---
>  meta/classes/kernel.bbclass          |  4 +++-
>  3 files changed, 16 insertions(+), 6 deletions(-)
> 
> diff --git a/meta/classes/kernel-fitimage.bbclass b/meta/classes/kernel-
> fitimage.bbclass
> index 179185b6b2..0789ba611f 100644
> --- a/meta/classes/kernel-fitimage.bbclass
> +++ b/meta/classes/kernel-fitimage.bbclass
> @@ -7,10 +7,13 @@ python __anonymous () {
>          depends = "%s u-boot-mkimage-native dtc-native" % depends
>          d.setVar("DEPENDS", depends)
>  
> -        if d.getVar("UBOOT_ARCH") == "mips":
> +        uarch = d.getVar("UBOOT_ARCH")
> +        if uarch == "mips":
>              replacementtype = "vmlinuz.bin"
> -        elif d.getVar("UBOOT_ARCH") == "x86":
> +        elif uarch == "x86":
>              replacementtype = "bzImage"
> +        elif uarch == "arm64":
> +            replacementtype = "Image"

Can you keep these tests in alphabetical order please?

>          else:
>              replacementtype = "zImage"
>  
> diff --git a/meta/classes/kernel-uboot.bbclass b/meta/classes/kernel-
> uboot.bbclass
> index 87f02654fa..06d293039a 100644
> --- a/meta/classes/kernel-uboot.bbclass
> +++ b/meta/classes/kernel-uboot.bbclass
> @@ -1,5 +1,5 @@
>  uboot_prep_kimage() {
> -	if [ -e arch/${ARCH}/boot/compressed/vmlinux ]; then
> +	if [ -e arch/${ARCH}/boot/compressed/vmlinux ] ; then
>  		vmlinux_path="arch/${ARCH}/boot/compressed/vmlinux"
>  		linux_suffix=""
>  		linux_comp="none"
> @@ -11,8 +11,13 @@ uboot_prep_kimage() {
>  		linux_comp="none"
>  	else
>  		vmlinux_path="vmlinux"
> -		linux_suffix=".gz"
> -		linux_comp="gzip"
> +		if [ "${ARCH}" = "arm64" ] ; then
> +			linux_suffix=""
> +			linux_comp="none"
> +		else
> +			linux_suffix=".gz"
> +			linux_comp="gzip"
> +		fi
>  	fi

I believe U-Boot supports decompression on any architecture independent of
kernel decompression support. It also supports multiple decompressors, not
just gzip. It would make sense to rather be able to configure the
compression method for U-Boot in a more generic way (including turning it
off completely) for any supported target.


Cheers,
Andre'




More information about the Openembedded-core mailing list