- Bad image type replacement for aarch64
- Fix DTB path in fitimage.its
- 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

Signed-off-by: Thomas Perrot <[email protected]>
---
 meta/classes/kernel-fitimage.bbclass |  6 +++++-
 meta/classes/kernel-uboot.bbclass    | 11 ++++++++---
 meta/classes/kernel.bbclass          |  4 +++-
 3 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/meta/classes/kernel-fitimage.bbclass 
b/meta/classes/kernel-fitimage.bbclass
index 2630b47316..abbc309b09 100644
--- a/meta/classes/kernel-fitimage.bbclass
+++ b/meta/classes/kernel-fitimage.bbclass
@@ -7,8 +7,11 @@ python __anonymous () {
         depends = "%s u-boot-mkimage-native dtc-native" % depends
         d.setVar("DEPENDS", depends)
 
-        if d.getVar("UBOOT_ARCH") == "x86":
+        uarch = d.getVar("UBOOT_ARCH")
+        if uarch == "x86":
             replacementtype = "bzImage"
+        elif uarch == "arm64":
+            replacementtype = "Image"
         else:
             replacementtype = "zImage"
 
@@ -351,6 +354,7 @@ fitimage_assemble() {
                                DTB_PATH="arch/${ARCH}/boot/${DTB}"
                        fi
 
+                       DTB=$(echo "${DTB}" | tr '/' '_')
                        DTBS="${DTBS} ${DTB}"
                        fitimage_emit_section_dtb ${1} ${DTB} ${DTB_PATH}
                done
diff --git a/meta/classes/kernel-uboot.bbclass 
b/meta/classes/kernel-uboot.bbclass
index 868e97d7a7..940f91d90e 100644
--- a/meta/classes/kernel-uboot.bbclass
+++ b/meta/classes/kernel-uboot.bbclass
@@ -1,12 +1,17 @@
 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"
        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
 
        ${OBJCOPY} -O binary -R .note -R .comment -S "${vmlinux_path}" linux.bin
diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass
index ce2cab65ae..14677ac0fc 100644
--- a/meta/classes/kernel.bbclass
+++ b/meta/classes/kernel.bbclass
@@ -219,7 +219,9 @@ do_bundle_initramfs () {
                # Backing up kernel image relies on its type(regular file or 
symbolic link)
                tmp_path=""
                for type in ${KERNEL_IMAGETYPES} ; do
-                       if [ -h ${KERNEL_OUTPUT_DIR}/$type ] ; then
+                       if [ "$type" = "fitImage" ] ; then
+                               continue
+                       elif [ -h ${KERNEL_OUTPUT_DIR}/$type ] ; then
                                linkpath=`readlink -n 
${KERNEL_OUTPUT_DIR}/$type`
                                realpath=`readlink -fn 
${KERNEL_OUTPUT_DIR}/$type`
                                mv -f $realpath $realpath.bak
-- 
2.13.6

-- 
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to