From 30f5ce1d2168389295b4813e01898c2fb0f9bab9 Mon Sep 17 00:00:00 2001 From: Otavio Salvador Date: Fri, 18 Feb 2022 19:43:56 -0300 Subject: Generalize overrides subsystem for NXP and Mainline support Essentially, we extend the overrides to a generic-bsp, nxp-bsp, and mainline-bsp. So, for example, the mx8mq override is split into: - imx-generic-bsp: compatible with every i.MX SoC and both BSP variants - imx-nxp-bsp: compatible with every i.MX SoC but specific to NXP BSP - imx-mainline-bsp: compatible with every i.MX SoC but specific to Mainline BSP - mx8-generic-bsp: compatible with every i.MX8 SoC and both BSP variants - mx8-nxp-bsp: compatible with every i.MX8 SoC but specific to NXP BSP - mx8-mainline-bsp: compatible with every i.MX8 SoC but specific to Mainline BSP - mx8m-generic-bsp: compatible with every i.MX8M SoC and both BSP variants - mx8m-nxp-bsp: compatible with every i.MX8M SoC but specific to NXP BSP - mx8m-mainline-bsp: compatible with every i.MX8M SoC but specific to Mainline BSP - mx8mq-generic-bsp: compatible with every i.MX8MQ SoC and both BSP variants - mx8mq-nxp-bsp: compatible with every i.MX8MQ SoC8 but specific to NXP BSP - mx8mq-mainline-bsp: compatible with every i.MX8MQ SoC but specific to Mainline BSP The extender mechanism is responsible for extending the override list to include the generic overrides. We can then use the three different variants to handle the metadata correctly. Generically speaking, the conversion mainly was automated (with a lot of back and forth until getting it right). To convert an existing layer, the following script can be used: ```sh git ls-files classes recipes-* \ | xargs sed -i \ -e 's,:\(mx[6-8]\w*\),:\1-nxp-bsp,g' \ -e 's,(\(mx[6-8]\w*\)),(\1-nxp-bsp),g' \ -e 's,\(mx[6-8]\w*\)|,\1-nxp-bsp|,g' \ -e 's,|\(mx[6-8]\w*\)),|\1-nxp-bsp),g' \ \ -e 's,:\(mx[5s]\w*\),:\1-generic-bsp,g' \ -e 's,(\(mx[5s]\w*\)),(\1-generic-bsp),g' \ -e 's,\(mx[5s]\w*\)|,\1-generic-bsp|,g' \ -e 's,|\(mx[5s]\w*\)),|\1-generic-bsp),g' \ \ -e 's,:\(vf\w*\),:\1-generic-bsp,g' \ -e 's,:\(vf[56]0\w*\),:\1-generic-bsp,g' \ -e 's,\(vf\w*\)|,\1-generic-bsp|,g' \ -e 's,|\(vf\w*\)),|\1-generic-bsp),g' \ -e 's,\(vf[56]0\w*\)|,\1-generic-bsp|,g' \ -e 's,|\(vf[56]0\w*\)),|\1-generic-bsp),g' \ \ -e 's,:\(imx\) ,:\1-nxp-bsp ,g' \ -e 's,(\(imx\)),(\1-nxp-bsp),g' \ -e 's,\(imx\)|,\1-nxp-bsp|,g' \ -e 's,|\(imx\)),|\1-nxp-bsp),g' for d in $(find -type d | egrep '/mx[6-8]w*'); do git mv $d $d-nxp-bsp done for d in $(find -type d | egrep '/imx$'); do git mv $d $d-nxp-bsp done for d in $(find -type d | egrep '/mx[5s]w*'); do git mv $d $d-generic-bsp done ``` Fixes: #791. Signed-off-by: Otavio Salvador --- recipes-bsp/u-boot/u-boot-fslc-mxsboot_2022.01.bb | 2 +- recipes-bsp/u-boot/u-boot-fslc_2022.01.bb | 4 ++-- recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb | 4 ++-- recipes-bsp/u-boot/u-boot-imx_2021.04.bb | 12 ++++++------ 4 files changed, 11 insertions(+), 11 deletions(-) (limited to 'recipes-bsp/u-boot') diff --git a/recipes-bsp/u-boot/u-boot-fslc-mxsboot_2022.01.bb b/recipes-bsp/u-boot/u-boot-fslc-mxsboot_2022.01.bb index a3a732ef3..07f2c9692 100644 --- a/recipes-bsp/u-boot/u-boot-fslc-mxsboot_2022.01.bb +++ b/recipes-bsp/u-boot/u-boot-fslc-mxsboot_2022.01.bb @@ -27,6 +27,6 @@ do_install () { ln -sf uboot-mxsboot ${D}${bindir}/mxsboot } -COMPATIBLE_MACHINE:class-target = "(mxs|mx5|mx6|mx7|vf|use-mainline-bsp)" +COMPATIBLE_MACHINE:class-target = "(mxs-generic-bsp|mx5-generic-bsp|mx6-nxp-bsp|mx7-nxp-bsp|vf-generic-bsp|use-mainline-bsp)" BBCLASSEXTEND = "native nativesdk" diff --git a/recipes-bsp/u-boot/u-boot-fslc_2022.01.bb b/recipes-bsp/u-boot/u-boot-fslc_2022.01.bb index 21989ae53..6f9a251b8 100644 --- a/recipes-bsp/u-boot/u-boot-fslc_2022.01.bb +++ b/recipes-bsp/u-boot/u-boot-fslc_2022.01.bb @@ -12,7 +12,7 @@ DEPENDS += "bc-native dtc-native python3-setuptools-native lzop-native" # Location known to imx-boot component, where U-Boot artifacts # should be additionally deployed. -# See below note above do_deploy:append:mx8m for the purpose of +# See below note above do_deploy:append:mx8m-nxp-bsp for the purpose of # this delopyment location BOOT_TOOLS = "imx-boot-tools" @@ -28,4 +28,4 @@ EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CPPFLAGS}" \ HOSTSTRIP=true' PACKAGE_ARCH = "${MACHINE_ARCH}" -COMPATIBLE_MACHINE = "(mxs|mx5|mx6|mx7|vf|use-mainline-bsp)" +COMPATIBLE_MACHINE = "(mxs-generic-bsp|mx5-generic-bsp|mx6-nxp-bsp|mx7-nxp-bsp|vf-generic-bsp|use-mainline-bsp)" diff --git a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb index 5443ceacf..500b2de07 100644 --- a/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb +++ b/recipes-bsp/u-boot/u-boot-imx-mfgtool_2021.04.bb @@ -8,5 +8,5 @@ require u-boot-imx_${PV}.bb require u-boot-mfgtool.inc UUU_BOOTLOADER_TAGGED = "" -UUU_BOOTLOADER_TAGGED:mx6 = "u-boot-mfgtool-tagged.${UBOOT_SUFFIX}" -UUU_BOOTLOADER_TAGGED:mx7 = "u-boot-mfgtool-tagged.${UBOOT_SUFFIX}" +UUU_BOOTLOADER_TAGGED:mx6-nxp-bsp = "u-boot-mfgtool-tagged.${UBOOT_SUFFIX}" +UUU_BOOTLOADER_TAGGED:mx7-nxp-bsp = "u-boot-mfgtool-tagged.${UBOOT_SUFFIX}" diff --git a/recipes-bsp/u-boot/u-boot-imx_2021.04.bb b/recipes-bsp/u-boot/u-boot-imx_2021.04.bb index 96552eef9..8d790db87 100644 --- a/recipes-bsp/u-boot/u-boot-imx_2021.04.bb +++ b/recipes-bsp/u-boot/u-boot-imx_2021.04.bb @@ -10,13 +10,13 @@ PROVIDES += "u-boot" inherit uuu_bootloader_tag UUU_BOOTLOADER = "" -UUU_BOOTLOADER:mx6 = "${UBOOT_BINARY}" -UUU_BOOTLOADER:mx7 = "${UBOOT_BINARY}" +UUU_BOOTLOADER:mx6-nxp-bsp = "${UBOOT_BINARY}" +UUU_BOOTLOADER:mx7-nxp-bsp = "${UBOOT_BINARY}" UUU_BOOTLOADER_TAGGED = "" -UUU_BOOTLOADER_TAGGED:mx6 = "u-boot-tagged.${UBOOT_SUFFIX}" -UUU_BOOTLOADER_TAGGED:mx7 = "u-boot-tagged.${UBOOT_SUFFIX}" +UUU_BOOTLOADER_TAGGED:mx6-nxp-bsp = "u-boot-tagged.${UBOOT_SUFFIX}" +UUU_BOOTLOADER_TAGGED:mx7-nxp-bsp = "u-boot-tagged.${UBOOT_SUFFIX}" -do_deploy:append:mx8m() { +do_deploy:append:mx8m-nxp-bsp() { # Deploy u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for mkimage to generate boot binary if [ -n "${UBOOT_CONFIG}" ] then @@ -38,4 +38,4 @@ do_deploy:append:mx8m() { } PACKAGE_ARCH = "${MACHINE_ARCH}" -COMPATIBLE_MACHINE = "(mx6|mx7|mx8|use-mainline-bsp)" +COMPATIBLE_MACHINE = "(mx6-nxp-bsp|mx7-nxp-bsp|mx8-nxp-bsp|use-mainline-bsp)" -- cgit v1.2.3-54-g00ecf