Rework ccimx8x imx-boot/u-boot recipes to reduce number of imx-boot artifacts
Now that both U-Boot and the SCFW can autodetect the RAM configuration, we can simplify the imx-boot build process to generate two binaries (one per SOC revision) instead of eight. Build "flash_spl" imx-boot images and use only one global defconfig for u-boot. Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This commit is contained in:
parent
609028fe66
commit
d13b42492f
|
|
@ -6,11 +6,9 @@
|
|||
include conf/machine/include/ccimx8x.inc
|
||||
|
||||
# U-Boot configurations
|
||||
# Last one is the default (the one the symlinks point at)
|
||||
UBOOT_CONFIG ??= "ccimx8x_sbc_express512MB ccimx8x_sbc_express1GB ccimx8x_sbc_express2GB"
|
||||
UBOOT_CONFIG[ccimx8x_sbc_express2GB] = "ccimx8x_sbc_express2GB_defconfig,,u-boot-dtb.${UBOOT_SUFFIX}"
|
||||
UBOOT_CONFIG[ccimx8x_sbc_express1GB] = "ccimx8x_sbc_express1GB_defconfig,,u-boot-dtb.${UBOOT_SUFFIX}"
|
||||
UBOOT_CONFIG[ccimx8x_sbc_express512MB] = "ccimx8x_sbc_express512MB_defconfig,,u-boot-dtb.${UBOOT_SUFFIX}"
|
||||
UBOOT_CONFIG ??= "ccimx8x_sbc_express"
|
||||
UBOOT_CONFIG[ccimx8x_sbc_express] = "ccimx8x_sbc_express_defconfig,,u-boot-dtb.${UBOOT_SUFFIX}"
|
||||
SPL_BINARY = "spl/u-boot-spl.bin"
|
||||
|
||||
KERNEL_DEVICETREE ?= " \
|
||||
digi/ccimx8x-sbc-express.dtb \
|
||||
|
|
@ -36,12 +34,6 @@ IMAGE_FSTYPES ?= '${@bb.utils.contains("IMAGE_FEATURES", "read-only-rootfs", \
|
|||
|
||||
# Boot artifacts to be copied from the deploy dir to the installer ZIP
|
||||
BOOTABLE_ARTIFACTS = " \
|
||||
imx-boot-ccimx8x-sbc-express-B0-1GB_16bit.bin \
|
||||
imx-boot-ccimx8x-sbc-express-B0-1GB_32bit.bin \
|
||||
imx-boot-ccimx8x-sbc-express-B0-2GB_32bit.bin \
|
||||
imx-boot-ccimx8x-sbc-express-B0-512MB_16bit.bin \
|
||||
imx-boot-ccimx8x-sbc-express-C0-1GB_16bit.bin \
|
||||
imx-boot-ccimx8x-sbc-express-C0-1GB_32bit.bin \
|
||||
imx-boot-ccimx8x-sbc-express-C0-2GB_32bit.bin \
|
||||
imx-boot-ccimx8x-sbc-express-C0-512MB_16bit.bin \
|
||||
imx-boot-ccimx8x-sbc-express-B0.bin \
|
||||
imx-boot-ccimx8x-sbc-express-C0.bin \
|
||||
"
|
||||
|
|
|
|||
|
|
@ -7,10 +7,9 @@ include conf/machine/include/ccimx8x.inc
|
|||
|
||||
# U-Boot configurations
|
||||
# Last one is the default (the one the symlinks point at)
|
||||
UBOOT_CONFIG ??= "ccimx8x_sbc_pro512MB ccimx8x_sbc_pro1GB ccimx8x_sbc_pro2GB"
|
||||
UBOOT_CONFIG[ccimx8x_sbc_pro2GB] = "ccimx8x_sbc_pro2GB_defconfig,,u-boot-dtb.${UBOOT_SUFFIX}"
|
||||
UBOOT_CONFIG[ccimx8x_sbc_pro1GB] = "ccimx8x_sbc_pro1GB_defconfig,,u-boot-dtb.${UBOOT_SUFFIX}"
|
||||
UBOOT_CONFIG[ccimx8x_sbc_pro512MB] = "ccimx8x_sbc_pro512MB_defconfig,,u-boot-dtb.${UBOOT_SUFFIX}"
|
||||
UBOOT_CONFIG ??= "ccimx8x_sbc_pro"
|
||||
UBOOT_CONFIG[ccimx8x_sbc_pro] = "ccimx8x_sbc_pro_defconfig,,u-boot-dtb.${UBOOT_SUFFIX}"
|
||||
SPL_BINARY = "spl/u-boot-spl.bin"
|
||||
|
||||
KERNEL_DEVICETREE ?= " \
|
||||
digi/ccimx8x-sbc-pro.dtb \
|
||||
|
|
@ -49,17 +48,11 @@ IMAGE_FSTYPES ?= '${@bb.utils.contains("IMAGE_FEATURES", "read-only-rootfs", \
|
|||
|
||||
# Boot artifacts to be copied from the deploy dir to the installer ZIP
|
||||
BOOTABLE_ARTIFACTS = " \
|
||||
imx-boot-ccimx8x-sbc-pro-B0-1GB_16bit.bin \
|
||||
imx-boot-ccimx8x-sbc-pro-B0-1GB_32bit.bin \
|
||||
imx-boot-ccimx8x-sbc-pro-B0-2GB_32bit.bin \
|
||||
imx-boot-ccimx8x-sbc-pro-B0-512MB_16bit.bin \
|
||||
imx-boot-ccimx8x-sbc-pro-C0-1GB_16bit.bin \
|
||||
imx-boot-ccimx8x-sbc-pro-C0-1GB_32bit.bin \
|
||||
imx-boot-ccimx8x-sbc-pro-C0-2GB_32bit.bin \
|
||||
imx-boot-ccimx8x-sbc-pro-C0-512MB_16bit.bin \
|
||||
imx-boot-ccimx8x-sbc-pro-B0.bin \
|
||||
imx-boot-ccimx8x-sbc-pro-C0.bin \
|
||||
"
|
||||
|
||||
# Default overlayfs_etc mount point and type
|
||||
OVERLAYFS_ETC_MOUNT_POINT ?= "/mnt/data"
|
||||
OVERLAYFS_ETC_DEVICE ?= "/dev/mmcblk0p7"
|
||||
OVERLAYFS_ETC_FSTYPE ?= "ext4"
|
||||
OVERLAYFS_ETC_FSTYPE ?= "ext4"
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ MACHINE_FEATURES += "accel-graphics wifi bluetooth cryptochip pci mca"
|
|||
# TrustFence
|
||||
TRUSTFENCE_SIGN_MODE = "AHAB"
|
||||
|
||||
IMXBOOT_TARGETS = "flash"
|
||||
IMXBOOT_TARGETS = "flash_spl"
|
||||
|
||||
IMX_BOOT_SOC_TARGET = "iMX8QX"
|
||||
IMX_BOOT_SEEK = "32"
|
||||
|
|
|
|||
|
|
@ -17,16 +17,6 @@ DEPENDS += "${@oe.utils.conditional('TRUSTFENCE_SIGN', '1', 'trustfence-sign-too
|
|||
UUU_BOOTLOADER = ""
|
||||
UUU_BOOTLOADER_TAGGED = ""
|
||||
|
||||
compile_mx8x() {
|
||||
bbnote 8QX boot binary build
|
||||
cp ${DEPLOY_DIR_IMAGE}/${SECO_FIRMWARE_NAME} ${BOOT_STAGING}
|
||||
cp ${DEPLOY_DIR_IMAGE}/${ATF_MACHINE_NAME} ${BOOT_STAGING}/bl31.bin
|
||||
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${SC_FIRMWARE_NAME} ${BOOT_STAGING}/
|
||||
for type in ${UBOOT_CONFIG}; do
|
||||
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/u-boot-${type}.bin ${BOOT_STAGING}/
|
||||
done
|
||||
}
|
||||
|
||||
compile_mx8m:append:ccimx8m() {
|
||||
# Create dummy DEK blob to support building with encrypted u-boot
|
||||
if [ -n "${TRUSTFENCE_DEK_PATH}" ] && [ "${TRUSTFENCE_DEK_PATH}" != "0" ]; then
|
||||
|
|
@ -45,24 +35,16 @@ do_compile:ccimx8x () {
|
|||
cp ${DEPLOY_DIR_IMAGE}/tee.bin {BOOT_STAGING}
|
||||
fi
|
||||
# mkimage for i.MX8
|
||||
for type in ${UBOOT_CONFIG}; do
|
||||
cd ${BOOT_STAGING}
|
||||
ln -sf u-boot-${type}.bin u-boot.bin
|
||||
cd -
|
||||
for target in ${IMXBOOT_TARGETS}; do
|
||||
for rev in ${SOC_REVISIONS}; do
|
||||
bbnote "building ${IMX_BOOT_SOC_TARGET} - ${type} - REV=${rev} ${target}"
|
||||
make SOC=${IMX_BOOT_SOC_TARGET} dtbs=${UBOOT_DTB_NAME} REV=${rev} ${target} > ${S}/mkimage-${target}.log 2>&1
|
||||
if [ -e "${BOOT_STAGING}/flash.bin" ]; then
|
||||
cp ${BOOT_STAGING}/flash.bin ${S}/${UBOOT_PREFIX}-${MACHINE}-${rev}-${ramc}.bin-${target}
|
||||
fi
|
||||
SCFWBUILT="yes"
|
||||
done
|
||||
|
||||
for target in ${IMXBOOT_TARGETS}; do
|
||||
for rev in ${SOC_REVISIONS}; do
|
||||
bbnote "building ${IMX_BOOT_SOC_TARGET} - REV=${rev} ${target}"
|
||||
make SOC=${IMX_BOOT_SOC_TARGET} dtbs=${UBOOT_DTB_NAME} REV=${rev} ${target} > ${S}/mkimage-${target}.log 2>&1
|
||||
if [ -e "${BOOT_STAGING}/flash.bin" ]; then
|
||||
cp ${BOOT_STAGING}/flash.bin ${S}/${UBOOT_PREFIX}-${MACHINE}-${rev}.bin-${target}
|
||||
fi
|
||||
SCFWBUILT="yes"
|
||||
done
|
||||
rm ${BOOT_STAGING}/u-boot.bin
|
||||
# Remove u-boot-atf.bin and u-boot-hash.bin so they get generated with the next iteration's U-Boot
|
||||
rm ${BOOT_STAGING}/u-boot-atf.bin
|
||||
rm ${BOOT_STAGING}/u-boot-hash.bin
|
||||
done
|
||||
|
||||
# Check that SCFW was built at least once
|
||||
|
|
@ -102,12 +84,6 @@ do_deploy:append:ccimx93() {
|
|||
generate_symlinks
|
||||
}
|
||||
|
||||
deploy_mx8x() {
|
||||
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
|
||||
install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
|
||||
install -m 0755 ${S}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
|
||||
}
|
||||
|
||||
do_deploy:ccimx8x () {
|
||||
deploy_${SOC_FAMILY}
|
||||
# copy tee.bin to deploy path
|
||||
|
|
|
|||
|
|
@ -182,13 +182,6 @@ BOOT_TOOLS:ccmp1 = "u-boot"
|
|||
FIP_UBOOT_HEADER = "ccmp15-dvk"
|
||||
FIP_UBOOT_HEADER:ccmp13 = "ccmp13-dvk"
|
||||
|
||||
adapt_uboot_filenames:append:ccimx8x() {
|
||||
# Move all U-Boot artifacts to the imx-boot-tools folder
|
||||
# U-Boot images are not bootable on the i.MX8X
|
||||
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
|
||||
mv ${DEPLOYDIR}/u-boot* ${DEPLOYDIR}/${BOOT_TOOLS}/
|
||||
}
|
||||
|
||||
do_deploy:append:ccimx8m() {
|
||||
# Deploy u-boot-nodtb.bin and ccimx8m[m|n]-dvk.dtb, to be packaged in boot binary by imx-boot
|
||||
if [ -n "${UBOOT_CONFIG}" ]
|
||||
|
|
|
|||
Loading…
Reference in New Issue