[meta-freescale] [PATCH] imx-boot: split out common variables to a bbclass
liu.ming50 at gmail.com
liu.ming50 at gmail.com
Thu Jun 20 00:15:43 PDT 2019
From: Ming Liu <liu.ming50 at gmail.com>
The variables defined in imx-boot recipe are sort of so related to
machine deployment, sometimes we need access these variables in other
recipes like image bbclass during machine files deployment. So we would
like to split them out into a common bbclass, then other recipes could
simplily inherit it to avoid redundantly redefine them.
Signed-off-by: Ming Liu <liu.ming50 at gmail.com>
---
classes/imx-boot-common.bbclass | 39 ++++++++++++++++++++++++++++
recipes-bsp/imx-mkimage/imx-boot_0.2.bb | 40 +++--------------------------
recipes-bsp/imx-mkimage/imx-mkimage_git.inc | 1 -
3 files changed, 42 insertions(+), 38 deletions(-)
create mode 100644 classes/imx-boot-common.bbclass
diff --git a/classes/imx-boot-common.bbclass b/classes/imx-boot-common.bbclass
new file mode 100644
index 0000000..7116bfe
--- /dev/null
+++ b/classes/imx-boot-common.bbclass
@@ -0,0 +1,39 @@
+# IMX boot common variables
+
+IMX_EXTRA_FIRMWARE = "firmware-imx-8 imx-sc-firmware"
+IMX_EXTRA_FIRMWARE_mx8m = "firmware-imx-8m"
+IMX_EXTRA_FIRMWARE_mx8x = "firmware-imx-8x imx-sc-firmware"
+
+BOOT_NAME = "imx-boot"
+
+SC_FIRMWARE_NAME ?= "scfw_tcm.bin"
+SECO_FIRMWARE_NAME ?= "mx8qm-ahab-container.img"
+
+ATF_MACHINE_NAME ?= "bl31-imx8qm.bin"
+ATF_MACHINE_NAME_mx8qm = "bl31-imx8qm.bin"
+ATF_MACHINE_NAME_mx8qxp = "bl31-imx8qx.bin"
+ATF_MACHINE_NAME_mx8mq = "bl31-imx8mq.bin"
+ATF_MACHINE_NAME_mx8mm = "bl31-imx8mm.bin"
+ATF_MACHINE_NAME_append = "${@bb.utils.contains('COMBINED_FEATURES', 'optee', '-optee', '', d)}"
+
+UBOOT_NAME = "u-boot-${MACHINE}.bin-${UBOOT_CONFIG}"
+BOOT_CONFIG_MACHINE = "${BOOT_NAME}-${MACHINE}-${UBOOT_CONFIG}.bin"
+
+BOOT_TOOLS ?= "imx-boot-tools"
+TOOLS_NAME ?= "mkimage_imx8"
+
+SOC_TARGET ?= "INVALID"
+SOC_TARGET_mx8qm = "iMX8QM"
+SOC_TARGET_mx8qxp = "iMX8QX"
+SOC_TARGET_mx8mq = "iMX8M"
+SOC_TARGET_mx8mm = "iMX8MM"
+
+IMXBOOT_TARGETS ?= \
+ "${@bb.utils.contains('UBOOT_CONFIG', 'fspi', 'flash_flexspi', \
+ bb.utils.contains('UBOOT_CONFIG', 'nand', 'flash_nand', \
+ 'flash flash_dcd', d), d)}"
+
+SOC_FAMILY = "INVALID"
+SOC_FAMILY_mx8 = "mx8"
+SOC_FAMILY_mx8m = "mx8m"
+SOC_FAMILY_mx8x = "mx8x"
diff --git a/recipes-bsp/imx-mkimage/imx-boot_0.2.bb b/recipes-bsp/imx-mkimage/imx-boot_0.2.bb
index a4c9263..3cc1c33 100644
--- a/recipes-bsp/imx-mkimage/imx-boot_0.2.bb
+++ b/recipes-bsp/imx-mkimage/imx-boot_0.2.bb
@@ -7,19 +7,15 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
SECTION = "BSP"
-IMX_EXTRA_FIRMWARE = "firmware-imx-8 imx-sc-firmware"
-IMX_EXTRA_FIRMWARE_mx8m = "firmware-imx-8m"
-IMX_EXTRA_FIRMWARE_mx8x = "firmware-imx-8x imx-sc-firmware"
DEPENDS += " \
firmware-imx \
${IMX_EXTRA_FIRMWARE} \
imx-atf \
"
DEPENDS_append_mx8m = " dtc-native"
-BOOT_NAME = "imx-boot"
PROVIDES = "${BOOT_NAME}"
-inherit deploy
+inherit deploy imx-boot-common
# Add CFLAGS with native INCDIR & LIBDIR for imx-mkimage build
CFLAGS = "-O2 -Wall -std=c99 -I ${STAGING_INCDIR_NATIVE} -L ${STAGING_LIBDIR_NATIVE}"
@@ -32,39 +28,9 @@ do_compile[depends] += " \
imx-atf:do_deploy \
"
-SC_FIRMWARE_NAME ?= "scfw_tcm.bin"
-
-ATF_MACHINE_NAME ?= "bl31-imx8qm.bin"
-ATF_MACHINE_NAME_mx8qm = "bl31-imx8qm.bin"
-ATF_MACHINE_NAME_mx8qxp = "bl31-imx8qx.bin"
-ATF_MACHINE_NAME_mx8mq = "bl31-imx8mq.bin"
-ATF_MACHINE_NAME_mx8mm = "bl31-imx8mm.bin"
-ATF_MACHINE_NAME_append = "${@bb.utils.contains('COMBINED_FEATURES', 'optee', '-optee', '', d)}"
-
-UBOOT_NAME = "u-boot-${MACHINE}.bin-${UBOOT_CONFIG}"
-BOOT_CONFIG_MACHINE = "${BOOT_NAME}-${MACHINE}-${UBOOT_CONFIG}.bin"
-
-TOOLS_NAME ?= "mkimage_imx8"
-
-SOC_TARGET ?= "INVALID"
-SOC_TARGET_mx8qm = "iMX8QM"
-SOC_TARGET_mx8qxp = "iMX8QX"
-SOC_TARGET_mx8mq = "iMX8M"
-SOC_TARGET_mx8mm = "iMX8MM"
-
-IMXBOOT_TARGETS ?= \
- "${@bb.utils.contains('UBOOT_CONFIG', 'fspi', 'flash_flexspi', \
- bb.utils.contains('UBOOT_CONFIG', 'nand', 'flash_nand', \
- 'flash flash_dcd', d), d)}"
-
BOOT_STAGING = "${S}/${SOC_TARGET}"
BOOT_STAGING_mx8mm = "${S}/iMX8M"
-SOC_FAMILY = "INVALID"
-SOC_FAMILY_mx8 = "mx8"
-SOC_FAMILY_mx8m = "mx8m"
-SOC_FAMILY_mx8x = "mx8x"
-
compile_mx8m() {
bbnote 8MQ/8MM boot binary build
for ddr_firmware in ${DDR_FIRMWARE_NAME}; do
@@ -87,7 +53,7 @@ compile_mx8() {
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${SC_FIRMWARE_NAME} ${BOOT_STAGING}/scfw_tcm.bin
cp ${DEPLOY_DIR_IMAGE}/${BOOT_TOOLS}/${ATF_MACHINE_NAME} ${BOOT_STAGING}/bl31.bin
cp ${DEPLOY_DIR_IMAGE}/${UBOOT_NAME} ${BOOT_STAGING}/u-boot.bin
- cp ${DEPLOY_DIR_IMAGE}/mx8qm-ahab-container.img ${BOOT_STAGING}
+ cp ${DEPLOY_DIR_IMAGE}/${SECO_FIRMWARE_NAME} ${BOOT_STAGING}
}
compile_mx8x() {
bbnote 8QX boot binary build
@@ -129,7 +95,7 @@ deploy_mx8m() {
}
deploy_mx8() {
install -d ${DEPLOYDIR}/${BOOT_TOOLS}
- install -m 0644 ${BOOT_STAGING}/mx8qm-ahab-container.img ${DEPLOYDIR}/${BOOT_TOOLS}
+ install -m 0644 ${BOOT_STAGING}/${SECO_FIRMWARE_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
install -m 0755 ${S}/${TOOLS_NAME} ${DEPLOYDIR}/${BOOT_TOOLS}
}
deploy_mx8x() {
diff --git a/recipes-bsp/imx-mkimage/imx-mkimage_git.inc b/recipes-bsp/imx-mkimage/imx-mkimage_git.inc
index ab354f9..6eb87a7 100644
--- a/recipes-bsp/imx-mkimage/imx-mkimage_git.inc
+++ b/recipes-bsp/imx-mkimage/imx-mkimage_git.inc
@@ -7,5 +7,4 @@ SRC_URI = "git://source.codeaurora.org/external/imx/imx-mkimage.git;protocol=htt
SRCREV = "dd0234001713623c79be92b60fa88bc07b07f24f"
S = "${WORKDIR}/git"
-BOOT_TOOLS = "imx-boot-tools"
SYSROOT_DIRS += "/boot"
--
2.7.4
More information about the meta-freescale
mailing list