summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorAndrej Valek <andrej.valek@siemens.com>2021-10-16 22:01:47 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-10-18 13:48:17 +0100
commitea92f2ee9100c945ea3d9ebddff1214d86ac4c02 (patch)
tree377f9aebdecbeffd9d3a3636a67c5bedd03000ed /meta
parent2b5f5e295e9a2765809929fda4e0a76c77e4a6fe (diff)
downloadpoky-ea92f2ee9100c945ea3d9ebddff1214d86ac4c02.tar.gz
kernel-fitimage: use correct kernel image
Even if initramfs_bundle_path was used, a wrong compression was reflected in output its template file. Use linux.bin as universal kernel image. The linux.bin file covers both cases because it's beying created from vmlinux. We know, that vmlinux is created inside compressed directory already, so no external compression will be used. (From OE-Core rev: 27fbbeaf972bb7e2535c1b23375cfa9d66b69db6) Signed-off-by: Andrej Valek <andrej.valek@siemens.com> Signed-off-by: Walter Schweizer <walter.schweizer@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/classes/kernel-fitimage.bbclass17
-rw-r--r--meta/lib/oeqa/selftest/cases/fitimage.py8
2 files changed, 5 insertions, 20 deletions
diff --git a/meta/classes/kernel-fitimage.bbclass b/meta/classes/kernel-fitimage.bbclass
index 886ed13029..8718ce7e16 100644
--- a/meta/classes/kernel-fitimage.bbclass
+++ b/meta/classes/kernel-fitimage.bbclass
@@ -495,22 +495,7 @@ fitimage_assemble() {
495 fitimage_emit_section_maint $1 imagestart 495 fitimage_emit_section_maint $1 imagestart
496 496
497 uboot_prep_kimage 497 uboot_prep_kimage
498 498 fitimage_emit_section_kernel $1 $kernelcount linux.bin "$linux_comp"
499 if [ "${INITRAMFS_IMAGE_BUNDLE}" = "1" ]; then
500 initramfs_bundle_path="arch/"${UBOOT_ARCH}"/boot/"${KERNEL_IMAGETYPE_REPLACEMENT}".initramfs"
501 if [ -e "$initramfs_bundle_path" ]; then
502
503 #
504 # Include the kernel/rootfs bundle.
505 #
506
507 fitimage_emit_section_kernel $1 $kernelcount "$initramfs_bundle_path" "$linux_comp"
508 else
509 bbwarn "$initramfs_bundle_pat not found."
510 fi
511 else
512 fitimage_emit_section_kernel $1 $kernelcount linux.bin "$linux_comp"
513 fi
514 499
515 # 500 #
516 # Step 2: Prepare a DTB image section 501 # Step 2: Prepare a DTB image section
diff --git a/meta/lib/oeqa/selftest/cases/fitimage.py b/meta/lib/oeqa/selftest/cases/fitimage.py
index 184c8778d2..f6f6a8e795 100644
--- a/meta/lib/oeqa/selftest/cases/fitimage.py
+++ b/meta/lib/oeqa/selftest/cases/fitimage.py
@@ -742,6 +742,7 @@ UBOOT_MKIMAGE_DTCOPTS = "-I dts -O dtb -p 2000"
742UBOOT_EXTLINUX = "0" 742UBOOT_EXTLINUX = "0"
743FIT_GENERATE_KEYS = "1" 743FIT_GENERATE_KEYS = "1"
744KERNEL_IMAGETYPE_REPLACEMENT = "zImage" 744KERNEL_IMAGETYPE_REPLACEMENT = "zImage"
745FIT_KERNEL_COMP_ALG = "none"
745FIT_HASH_ALG = "sha256" 746FIT_HASH_ALG = "sha256"
746""" 747"""
747 self.write_config(config) 748 self.write_config(config)
@@ -763,9 +764,8 @@ FIT_HASH_ALG = "sha256"
763 764
764 kernel_load = str(get_bb_var('UBOOT_LOADADDRESS')) 765 kernel_load = str(get_bb_var('UBOOT_LOADADDRESS'))
765 kernel_entry = str(get_bb_var('UBOOT_ENTRYPOINT')) 766 kernel_entry = str(get_bb_var('UBOOT_ENTRYPOINT'))
766 initramfs_bundle_format = str(get_bb_var('KERNEL_IMAGETYPE_REPLACEMENT')) 767 kernel_compression = str(get_bb_var('FIT_KERNEL_COMP_ALG'))
767 uboot_arch = str(get_bb_var('UBOOT_ARCH')) 768 uboot_arch = str(get_bb_var('UBOOT_ARCH'))
768 initramfs_bundle = "arch/" + uboot_arch + "/boot/" + initramfs_bundle_format + ".initramfs"
769 fit_hash_alg = str(get_bb_var('FIT_HASH_ALG')) 769 fit_hash_alg = str(get_bb_var('FIT_HASH_ALG'))
770 770
771 its_file = open(fitimage_its_path) 771 its_file = open(fitimage_its_path)
@@ -775,11 +775,11 @@ FIT_HASH_ALG = "sha256"
775 exp_node_lines = [ 775 exp_node_lines = [
776 'kernel-1 {', 776 'kernel-1 {',
777 'description = "Linux kernel";', 777 'description = "Linux kernel";',
778 'data = /incbin/("' + initramfs_bundle + '");', 778 'data = /incbin/("linux.bin");',
779 'type = "kernel";', 779 'type = "kernel";',
780 'arch = "' + uboot_arch + '";', 780 'arch = "' + uboot_arch + '";',
781 'os = "linux";', 781 'os = "linux";',
782 'compression = "none";', 782 'compression = "' + kernel_compression + '";',
783 'load = <' + kernel_load + '>;', 783 'load = <' + kernel_load + '>;',
784 'entry = <' + kernel_entry + '>;', 784 'entry = <' + kernel_entry + '>;',
785 'hash-1 {', 785 'hash-1 {',