| Message ID | 20220709081221.5601-2-liu.ming50@gmail.com |
|---|---|
| State | New |
| Headers | show |
| Series | meta: introduce UBOOT_MKIMAGE_KERNEL_TYPE | expand |
Hello,
I believe this is the cause of the following failures:
2022-07-13 10:51:39,025 - oe-selftest - INFO - fitimage.FitImageTests.test_initramfs_bundle (subunit.RemotedTestCase)
2022-07-13 10:51:39,025 - oe-selftest - INFO - ... FAIL
Stderr:
2022-07-13 10:06:12,424 - oe-selftest - INFO - Adding: "include selftest.inc" in /home/pokybuild/yocto-worker/oe-selftest-centos/build/build-st-33314/conf/local.conf
2022-07-13 10:06:12,425 - oe-selftest - INFO - Adding: "include bblayers.inc" in bblayers.conf
2022-07-13 10:51:39,025 - oe-selftest - INFO - 10: 3/27 373/493 (826.21s) (fitimage.FitImageTests.test_initramfs_bundle)
2022-07-13 10:51:39,025 - oe-selftest - INFO - testtools.testresult.real._StringException: Traceback (most recent call last):
File "/home/pokybuild/yocto-worker/oe-selftest-centos/build/meta/lib/oeqa/selftest/cases/fitimage.py", line 803, in test_initramfs_bundle
self.assertTrue(test_passed == True,"kernel node does not match expectation")
File "/home/pokybuild/yocto-worker/oe-selftest-centos/build/buildtools/sysroots/x86_64-pokysdk-linux/usr/lib/python3.9/unittest/case.py", line 682, in assertTrue
raise self.failureException(msg)
AssertionError: False is not true : kernel node does not match expectation
https://autobuilder.yoctoproject.org/typhoon/#builders/80/builds/3765/steps/14/logs/stdio
https://autobuilder.yoctoproject.org/typhoon/#builders/79/builds/3813/steps/15/logs/stdio
https://autobuilder.yoctoproject.org/typhoon/#builders/86/builds/3778/steps/14/logs/stdio
https://autobuilder.yoctoproject.org/typhoon/#builders/87/builds/3824/steps/14/logs/stdio
On 09/07/2022 10:12:21+0200, Ming Liu wrote:
> From: Ming Liu <liu.ming50@gmail.com>
>
> Sometimes an end user might want to choose another kernel type argument
> for uboot-mkimage other than "kernel", for instance: "kernel_noload".
>
> Let's introduce a variable UBOOT_MKIMAGE_KERNEL_TYPE to support that,
> and it could be used by BSP layers as well.
>
> Signed-off-by: Ming Liu <liu.ming50@gmail.com>
> ---
> meta/classes/kernel-fitimage.bbclass | 2 +-
> meta/classes/kernel-uboot.bbclass | 3 +++
> meta/classes/kernel-uimage.bbclass | 2 +-
> meta/lib/oeqa/selftest/cases/fitimage.py | 3 ++-
> 4 files changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/meta/classes/kernel-fitimage.bbclass b/meta/classes/kernel-fitimage.bbclass
> index 7e09b075ff..2112ae4cfa 100644
> --- a/meta/classes/kernel-fitimage.bbclass
> +++ b/meta/classes/kernel-fitimage.bbclass
> @@ -148,7 +148,7 @@ fitimage_emit_section_kernel() {
> kernel-$2 {
> description = "Linux kernel";
> data = /incbin/("$3");
> - type = "kernel";
> + type = "${UBOOT_MKIMAGE_KERNEL_TYPE}";
> arch = "${UBOOT_ARCH}";
> os = "linux";
> compression = "$4";
> diff --git a/meta/classes/kernel-uboot.bbclass b/meta/classes/kernel-uboot.bbclass
> index 2facade818..1bc98e042d 100644
> --- a/meta/classes/kernel-uboot.bbclass
> +++ b/meta/classes/kernel-uboot.bbclass
> @@ -2,6 +2,9 @@
> FIT_KERNEL_COMP_ALG ?= "gzip"
> FIT_KERNEL_COMP_ALG_EXTENSION ?= ".gz"
>
> +# Kernel image type passed to mkimage (i.e. kernel kernel_noload...)
> +UBOOT_MKIMAGE_KERNEL_TYPE ?= "kernel"
> +
> uboot_prep_kimage() {
> if [ -e arch/${ARCH}/boot/compressed/vmlinux ]; then
> vmlinux_path="arch/${ARCH}/boot/compressed/vmlinux"
> diff --git a/meta/classes/kernel-uimage.bbclass b/meta/classes/kernel-uimage.bbclass
> index cedb4fa070..2e661ea916 100644
> --- a/meta/classes/kernel-uimage.bbclass
> +++ b/meta/classes/kernel-uimage.bbclass
> @@ -30,6 +30,6 @@ do_uboot_mkimage() {
> awk '$3=="${UBOOT_ENTRYSYMBOL}" {print "0x"$1;exit}'`
> fi
>
> - uboot-mkimage -A ${UBOOT_ARCH} -O linux -T kernel -C "${linux_comp}" -a ${UBOOT_LOADADDRESS} -e $ENTRYPOINT -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin ${B}/arch/${ARCH}/boot/uImage
> + uboot-mkimage -A ${UBOOT_ARCH} -O linux -T ${UBOOT_MKIMAGE_KERNEL_TYPE} -C "${linux_comp}" -a ${UBOOT_LOADADDRESS} -e $ENTRYPOINT -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin ${B}/arch/${ARCH}/boot/uImage
> rm -f linux.bin
> }
> diff --git a/meta/lib/oeqa/selftest/cases/fitimage.py b/meta/lib/oeqa/selftest/cases/fitimage.py
> index e6bfd1257e..7e6479c9ca 100644
> --- a/meta/lib/oeqa/selftest/cases/fitimage.py
> +++ b/meta/lib/oeqa/selftest/cases/fitimage.py
> @@ -763,6 +763,7 @@ FIT_HASH_ALG = "sha256"
>
> kernel_load = str(get_bb_var('UBOOT_LOADADDRESS'))
> kernel_entry = str(get_bb_var('UBOOT_ENTRYPOINT'))
> + kernel_type = str(get_bb_var('UBOOT_MKIMAGE_KERNEL_TYPE'))
> kernel_compression = str(get_bb_var('FIT_KERNEL_COMP_ALG'))
> uboot_arch = str(get_bb_var('UBOOT_ARCH'))
> fit_hash_alg = str(get_bb_var('FIT_HASH_ALG'))
> @@ -775,7 +776,7 @@ FIT_HASH_ALG = "sha256"
> 'kernel-1 {',
> 'description = "Linux kernel";',
> 'data = /incbin/("linux.bin");',
> - 'type = "kernel";',
> + 'type = "' + kernel_type + '";',
> 'arch = "' + uboot_arch + '";',
> 'os = "linux";',
> 'compression = "' + kernel_compression + '";',
> --
> 2.25.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#167837): https://lists.openembedded.org/g/openembedded-core/message/167837
> Mute This Topic: https://lists.openembedded.org/mt/92268338/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
diff --git a/meta/classes/kernel-fitimage.bbclass b/meta/classes/kernel-fitimage.bbclass index 7e09b075ff..2112ae4cfa 100644 --- a/meta/classes/kernel-fitimage.bbclass +++ b/meta/classes/kernel-fitimage.bbclass @@ -148,7 +148,7 @@ fitimage_emit_section_kernel() { kernel-$2 { description = "Linux kernel"; data = /incbin/("$3"); - type = "kernel"; + type = "${UBOOT_MKIMAGE_KERNEL_TYPE}"; arch = "${UBOOT_ARCH}"; os = "linux"; compression = "$4"; diff --git a/meta/classes/kernel-uboot.bbclass b/meta/classes/kernel-uboot.bbclass index 2facade818..1bc98e042d 100644 --- a/meta/classes/kernel-uboot.bbclass +++ b/meta/classes/kernel-uboot.bbclass @@ -2,6 +2,9 @@ FIT_KERNEL_COMP_ALG ?= "gzip" FIT_KERNEL_COMP_ALG_EXTENSION ?= ".gz" +# Kernel image type passed to mkimage (i.e. kernel kernel_noload...) +UBOOT_MKIMAGE_KERNEL_TYPE ?= "kernel" + uboot_prep_kimage() { if [ -e arch/${ARCH}/boot/compressed/vmlinux ]; then vmlinux_path="arch/${ARCH}/boot/compressed/vmlinux" diff --git a/meta/classes/kernel-uimage.bbclass b/meta/classes/kernel-uimage.bbclass index cedb4fa070..2e661ea916 100644 --- a/meta/classes/kernel-uimage.bbclass +++ b/meta/classes/kernel-uimage.bbclass @@ -30,6 +30,6 @@ do_uboot_mkimage() { awk '$3=="${UBOOT_ENTRYSYMBOL}" {print "0x"$1;exit}'` fi - uboot-mkimage -A ${UBOOT_ARCH} -O linux -T kernel -C "${linux_comp}" -a ${UBOOT_LOADADDRESS} -e $ENTRYPOINT -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin ${B}/arch/${ARCH}/boot/uImage + uboot-mkimage -A ${UBOOT_ARCH} -O linux -T ${UBOOT_MKIMAGE_KERNEL_TYPE} -C "${linux_comp}" -a ${UBOOT_LOADADDRESS} -e $ENTRYPOINT -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin ${B}/arch/${ARCH}/boot/uImage rm -f linux.bin } diff --git a/meta/lib/oeqa/selftest/cases/fitimage.py b/meta/lib/oeqa/selftest/cases/fitimage.py index e6bfd1257e..7e6479c9ca 100644 --- a/meta/lib/oeqa/selftest/cases/fitimage.py +++ b/meta/lib/oeqa/selftest/cases/fitimage.py @@ -763,6 +763,7 @@ FIT_HASH_ALG = "sha256" kernel_load = str(get_bb_var('UBOOT_LOADADDRESS')) kernel_entry = str(get_bb_var('UBOOT_ENTRYPOINT')) + kernel_type = str(get_bb_var('UBOOT_MKIMAGE_KERNEL_TYPE')) kernel_compression = str(get_bb_var('FIT_KERNEL_COMP_ALG')) uboot_arch = str(get_bb_var('UBOOT_ARCH')) fit_hash_alg = str(get_bb_var('FIT_HASH_ALG')) @@ -775,7 +776,7 @@ FIT_HASH_ALG = "sha256" 'kernel-1 {', 'description = "Linux kernel";', 'data = /incbin/("linux.bin");', - 'type = "kernel";', + 'type = "' + kernel_type + '";', 'arch = "' + uboot_arch + '";', 'os = "linux";', 'compression = "' + kernel_compression + '";',