mirror of
https://git.yoctoproject.org/meta-ti
synced 2026-10-15 18:37:13 +00:00
A per changes in oe-core [1][2], it is preferable to set ARCH and UBOOT_ARCH directly instead of relying on a class. [1] https://git.openembedded.org/openembedded-core/commit/?id=635f85b7b8ffe4bfd5f282a98bdf640aa037cde1 [2] https://git.openembedded.org/openembedded-core/commit/?id=bdcd04bbc5e205df16c0779388521db4041e7841 Signed-off-by: Ryan Eatmon <reatmon@ti.com>
55 lines
1.5 KiB
Plaintext
55 lines
1.5 KiB
Plaintext
#
|
|
# Copyright OpenEmbedded Contributors
|
|
#
|
|
# SPDX-License-Identifier: MIT
|
|
#
|
|
|
|
ARCH = "${@oe.kernel.map_kernel_arch(d)}"
|
|
UBOOT_ARCH = "${@oe.kernel.map_uboot_arch(d)}"
|
|
|
|
# fitImage kernel compression algorithm
|
|
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"
|
|
linux_suffix=""
|
|
linux_comp="none"
|
|
elif [ -e arch/${ARCH}/boot/vmlinuz.bin ]; then
|
|
rm -f linux.bin
|
|
cp -l arch/${ARCH}/boot/vmlinuz.bin linux.bin
|
|
vmlinux_path=""
|
|
linux_suffix=""
|
|
linux_comp="none"
|
|
else
|
|
vmlinux_path="vmlinux"
|
|
# Use vmlinux.initramfs for linux.bin when INITRAMFS_IMAGE_BUNDLE set
|
|
# As per the implementation in kernel.bbclass.
|
|
# See do_bundle_initramfs function
|
|
if [ "${INITRAMFS_IMAGE_BUNDLE}" = "1" ] && [ -e vmlinux.initramfs ]; then
|
|
vmlinux_path="vmlinux.initramfs"
|
|
fi
|
|
linux_suffix="${FIT_KERNEL_COMP_ALG_EXTENSION}"
|
|
linux_comp="${FIT_KERNEL_COMP_ALG}"
|
|
fi
|
|
|
|
[ -n "${vmlinux_path}" ] && ${KERNEL_OBJCOPY} -O binary -R .note -R .comment -S "${vmlinux_path}" linux.bin
|
|
|
|
if [ "${linux_comp}" != "none" ] ; then
|
|
if [ "${linux_comp}" = "gzip" ] ; then
|
|
gzip -9 linux.bin
|
|
elif [ "${linux_comp}" = "lzo" ] ; then
|
|
lzop -9 linux.bin
|
|
elif [ "${linux_comp}" = "lzma" ] ; then
|
|
xz --format=lzma -f -6 linux.bin
|
|
fi
|
|
mv -f "linux.bin${linux_suffix}" linux.bin
|
|
fi
|
|
|
|
echo "${linux_comp}"
|
|
}
|