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 + '";',