[yocto] Wrong ENTRYPOINT and LOADADDRESS in uImage

Markus Hubig mhubig at imko.de
Thu Aug 23 02:24:20 PDT 2012


Hi @all,

I have a customized Yocto-Linux Recipe in my BSP, and now I'm seeing that
the UBOOT_ENTRYPOINT and UBOOT_LOADADDRESS settings in my ${MACHINE}.conf
is not honored in the resulting uImage.

The relevant part of kernel.bbclass is in kernel_do_deploy():

| if test "x${KERNEL_IMAGETYPE}" = "xuImage" ; then 
|
|     if test -e arch/${ARCH}/boot/uImage ; then
|         cp arch/${ARCH}/boot/uImage ${DEPLOYDIR}/${KERNEL_IMAGE_BASE_NAME}.bin
|
|     elif test -e arch/${ARCH}/boot/compressed/vmlinux ; then
| 	${OBJCOPY} -O binary -R .note -R .comment -S \
| 	    arch/${ARCH}/boot/compressed/vmlinux linux.bin
| 	uboot-mkimage -A ${ARCH} -O linux -T kernel -C none \
| 	    -a ${UBOOT_ENTRYPOINT} -e ${UBOOT_ENTRYPOINT} \
| 	    -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin \
| 	    ${DEPLOYDIR}/${KERNEL_IMAGE_BASE_NAME}.bin
| 	rm -f linux.bin
|
|     else
| 	${OBJCOPY} -O binary -R .note -R .comment -S vmlinux linux.bin
| 	rm -f linux.bin.gz
| 	gzip -9 linux.bin
| 	uboot-mkimage -A ${ARCH} -O linux -T kernel -C gzip \
| 	    -a ${UBOOT_ENTRYPOINT} -e ${UBOOT_ENTRYPOINT} \
| 	    -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin.gz \
| 	    ${DEPLOYDIR}/${KERNEL_IMAGE_BASE_NAME}.bin
|         rm -f linux.bin.gz
|     fi
| fi

As you can easily see, if there is an "arch/${ARCH}/boot/uImage" present,
uboot-mkimage is not used to set the ENTRYPOINT and LOADADDRESS. So I'm
wondering who is setting these entries instead, and how do I adjust them?

Cheers, Markus

-- 
Human beings were created by water to transport it uphill.



More information about the yocto mailing list