diff options
author | Marek Vasut <marex@denx.de> | 2015-05-14 14:31:07 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-05-26 10:57:51 +0100 |
commit | 88d79fee807a763641672ec6d8dce54adb481789 (patch) | |
tree | c880008d938cda6de4d4665e956ab600ded0b4a2 /meta/classes/kernel.bbclass | |
parent | 92864a98300926393394c5f503d3bc2a2cb92e39 (diff) | |
download | poky-88d79fee807a763641672ec6d8dce54adb481789.tar.gz |
kernel: Rework do_uboot_mkimage
Rework the function so part it's internals can be re-used by fitImage
image type. The name of the temporary file , linux.bin , is recycled
a little more as it's now used for both the case where it is gzip
compressed and where it is not. This should be fine, since the file
is temporary and removed after the uImage was created anyway.
There is no functional change here.
(From OE-Core rev: 63e3816b161f8659850d6123a53bdf128780e13d)
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Cc: Paul Eggleton <paul.eggleton@linux.intel.com>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/kernel.bbclass')
-rw-r--r-- | meta/classes/kernel.bbclass | 32 |
1 files changed, 21 insertions, 11 deletions
diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass index 1782473181..ca1426cd88 100644 --- a/meta/classes/kernel.bbclass +++ b/meta/classes/kernel.bbclass | |||
@@ -440,22 +440,32 @@ MODULE_TARBALL_DEPLOY ?= "1" | |||
440 | do_uboot_mkimage() { | 440 | do_uboot_mkimage() { |
441 | if test "x${KERNEL_IMAGETYPE}" = "xuImage" ; then | 441 | if test "x${KERNEL_IMAGETYPE}" = "xuImage" ; then |
442 | if test "x${KEEPUIMAGE}" != "xyes" ; then | 442 | if test "x${KEEPUIMAGE}" != "xyes" ; then |
443 | if test -e arch/${ARCH}/boot/compressed/vmlinux ; then | ||
444 | vmlinux_path="arch/${ARCH}/boot/compressed/vmlinux" | ||
445 | linux_suffix="" | ||
446 | linux_comp="none" | ||
447 | else | ||
448 | vmlinux_path="vmlinux" | ||
449 | linux_suffix=".gz" | ||
450 | linux_comp="gzip" | ||
451 | fi | ||
452 | |||
453 | ${OBJCOPY} -O binary -R .note -R .comment -S "${vmlinux_path}" linux.bin | ||
454 | |||
455 | if [ "${linux_comp}" != "none" ] ; then | ||
456 | rm -f linux.bin | ||
457 | gzip -9 linux.bin | ||
458 | mv -f "linux.bin${linux_suffix}" linux.bin | ||
459 | fi | ||
460 | |||
443 | ENTRYPOINT=${UBOOT_ENTRYPOINT} | 461 | ENTRYPOINT=${UBOOT_ENTRYPOINT} |
444 | if test -n "${UBOOT_ENTRYSYMBOL}"; then | 462 | if test -n "${UBOOT_ENTRYSYMBOL}"; then |
445 | ENTRYPOINT=`${HOST_PREFIX}nm ${S}/vmlinux | \ | 463 | ENTRYPOINT=`${HOST_PREFIX}nm ${S}/vmlinux | \ |
446 | awk '$3=="${UBOOT_ENTRYSYMBOL}" {print $1}'` | 464 | awk '$3=="${UBOOT_ENTRYSYMBOL}" {print $1}'` |
447 | fi | 465 | fi |
448 | if test -e arch/${ARCH}/boot/compressed/vmlinux ; then | 466 | |
449 | ${OBJCOPY} -O binary -R .note -R .comment -S arch/${ARCH}/boot/compressed/vmlinux linux.bin | 467 | 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 arch/${ARCH}/boot/uImage |
450 | uboot-mkimage -A ${UBOOT_ARCH} -O linux -T kernel -C none -a ${UBOOT_LOADADDRESS} -e $ENTRYPOINT -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin arch/${ARCH}/boot/uImage | 468 | rm -f linux.bin |
451 | rm -f linux.bin | ||
452 | else | ||
453 | ${OBJCOPY} -O binary -R .note -R .comment -S vmlinux linux.bin | ||
454 | rm -f linux.bin.gz | ||
455 | gzip -9 linux.bin | ||
456 | uboot-mkimage -A ${UBOOT_ARCH} -O linux -T kernel -C gzip -a ${UBOOT_LOADADDRESS} -e $ENTRYPOINT -n "${DISTRO_NAME}/${PV}/${MACHINE}" -d linux.bin.gz arch/${ARCH}/boot/uImage | ||
457 | rm -f linux.bin.gz | ||
458 | fi | ||
459 | fi | 469 | fi |
460 | fi | 470 | fi |
461 | } | 471 | } |