summaryrefslogtreecommitdiffstats
path: root/classes
Commit message (Collapse)AuthorAgeFilesLines
* Generalize overrides subsystem for NXP and Mainline supportOtavio Salvador2022-02-214-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 <otavio@ossystems.com.br>
* classes/machine-overrides-extender: Postpone filter outOtavio Salvador2022-02-211-3/+4
| | | | | | | The overrides ought to allow the filter out execution even for overrides included during the extension, for this to work we need to postpone it. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
* classes/machine-overrides-extender: Allow filter out without an overrideOtavio Salvador2022-02-211-2/+2
| | | | | | | We should be able to use a single MACHINEOVERRIDES_EXTENDER_FILTER_OUT definition, without an override, to reduce code duplication. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
* fsl-vivante-kernel-driver-handler.bbclass: Fix multilib supporttopic/fix-multilib-supportOtavio Salvador2022-01-251-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Building core-image-weston with multilib support and builtin graphics fails: ``` ERROR: Nothing PROVIDES 'virtual/arm-oelmllib32-linux-gnueabi-binutils'. Close matches: virtual/lib32-arm-oelmllib32-linux-gnueabi-binutils virtual/lib32-arm-oelmllib32-linux-gnueabi-go-runtime virtual/lib32-arm-oelmllib32-linux-gnueabi-rust ERROR: Nothing PROVIDES 'virtual/arm-oelmllib32-linux-gnueabi-gcc'. Close matches: virtual/lib32-arm-oelmllib32-linux-gnueabi-g++ virtual/lib32-arm-oelmllib32-linux-gnueabi-gcc virtual/lib32-arm-oelmllib32-linux-gnueabi-rust ``` This is the configuration added in local.conf: ``` require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE:virtclass-multilib-lib32 = "armv7athf-neon" IMAGE_INSTALL:append = " lib32-glibc lib32-libgcc lib32-libstdc++" MACHINE_USES_VIVANTE_KERNEL_DRIVER_MODULE = "0" ``` This commit fixes the provides so BitBake can properly handle the dependencies. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
* Merge pull request #954 from thochstein/recipes-bspOtavio Salvador2022-01-191-0/+11
|\ | | | | u-boot-imx and recipes-bsp for 5.10.72-2.2.0
| * imx-boot,u-boot-imx: Add bootloader image size to SD card imageTom Hochstein2022-01-191-0/+11
| | | | | | | | | | | | | | | | Append a tag to the bootloader image used in the SD card image. The tag contains the size of the bootloader image so UUU can easily find the end of the bootloader in the SD card image. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* | imx-boot-container: align with u-boot 2022.01Andrey Zhizhikin2022-01-181-2/+0
|/ | | | | | | | | | | | | | Recent version of U-Boot v2022.01 reverted boot container generation mechanism to provide single boot container isntead of separate binaries for SPL+DDR and U-Boot FIT. New approach provides packing of those separate components inside the U-Boot binman, and is delivered as a single 'flash.bin' file, which resembles the original behavior before binman image packing was introduced. Adapt our boot container class and WIC file to pick up this consolidated binary instead of two separate pieces. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* EULA,SCR: Update for NXP release 5.10.72-2.2.0Tom Hochstein2022-01-071-1/+5
| | | | Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* Update EULA and SCR for NXP release 5.10.52-2.1.0Andrey Zhizhikin2021-10-221-1/+3
| | | | Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* Merge pull request #870 from Villemoes/imx-boot-configOtavio Salvador2021-09-211-4/+11
|\ | | | | imx-boot-container.bbclass: support having more than one UBOOT_CONFIG
| * imx-boot-container.bbclass: support having more than one UBOOT_CONFIGRasmus Villemoes2021-09-201-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The whole purpose of the UBOOT_CONFIG machinery is to allow one to build multiple versions of U-Boot within the same recipe, e.g. one for writing to an eMMC boot partition, and one for use with an SD card for bootstrapping/recovery. But the current code here assumes UBOOT_CONFIG consists of just a single word (and normally leading whitespace in that variable would be harmless). So use the variable ${type} which gets set in turn to each individual word in UBOOT_CONFIG, which was probably the original intention anyway. Add a comment about what the u-boot.itb and flash.bin symlinks will end up pointing at. When UBOOT_CONFIG does indeed consist of a single word only, this changes nothing. But this unbreaks the build and makes the different artifacts available for the UBOOT_CONFIG = "sd emmc ..." case that may be used by custom boards. Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
* | image_types_fsl.bbclass: Remove overzelous override replacementsKhem Raj2021-08-121-3/+3
| | | | | | | | | | | | Override conversion script got confused here perhaps Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | machine-overrides-extender.bbclass: Adjust for new override characterTom Hochstein2021-08-121-4/+4
| | | | | | | | | | Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | layer: More override fixesTom Hochstein2021-08-121-2/+2
| | | | | | | | | | | | | | | | | | | | Adds fixes for _imx, _imxdpu, _imxdrm, _imxgpu, _imxgpu3d, virtual PREFERRED_PROVIDER versions Fix other places for imx/imxdpu/imxdrm overrides Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
* | layer: Convert to new override syntaxKhem Raj2021-08-1211-28/+28
|/ | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Update EULA and SCR for NXP release 5.10.35-2.0.0Tom Hochstein2021-07-021-1/+9
| | | | Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* Drop overrides for i.MX 8DXL Phantom MEKTom Hochstein2021-05-211-1/+0
| | | | | | | The i.MX 8DXL Phantom MEK will never be released, so drop the overrides that have crept into the meta-data. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* classes: imx-boot-container: adapt to new u-boot generationAndrey Zhizhikin2021-05-041-12/+3
| | | | | | | | | | | | | | | | | | | | | | Recent U-Boot versions switched from using customized image generation mechanisms to binman. This requires that in addition to the flash.bin boot container, the ITB is built and populated onto the raw boot partition. In addition, DDR firmware deployed together with SPL is now using fully qualified file names (including version suffix), hence there is no need to sanitize those binaries anymore when DDR firmware is packed. Drop the specialized build target from UBOOT_MAKE_TARGET, as building of flash.bin is now covered by default build. Drop the pre-build step proceedure which was sanitizing version suffix from the DDR firmware name. Deploy additional u-boot.itb file that is required to be packed into the raw boot partition. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* fsl-eula-unpack: Update EULA to v22 for NXP release 5.4.70-2.3.2Tom Hochstein2021-04-261-1/+7
| | | | | | | NXP release 5.4.70-2.3.2 uses EULA version 22. Also add entries for versions 18 and 19. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* classes: fsl-kernel-localversion: Fix config fragments applyOtavio Salvador2021-04-171-1/+1
| | | | | | | | | | | We have to ensure the task run do_kernel_metadata so the config fragments can be applied properly. Refs: #707. Fixes: #733. Fixes: 49299998 ("classes: fsl-kernel-localversion: Fix task dependency") Fixes: c7e23876 ("linux-imx.inc: inherit kernel-yocto class") Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
* classes: fsl-kernel-localversion: Fix task dependencyOtavio Salvador2021-04-101-2/+4
| | | | | | | | | | | We need to do any change to the generated `.config` file after it is finished to be modified. In the case of `kernel-yocto` class being in use, we need to do it after `kernel_configme` task. Fixes: c7e23876 ("linux-imx.inc: inherit kernel-yocto class") Fixes: #707. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Change-Id: I7d32b47595dff269defdc5b3f98aa0b9d89b603a
* classes: imx-boot-container: add class to provide boot containerAndrey Zhizhikin2021-03-171-0/+107
| | | | | | | | | | | Add a class which extends the u-boot build mechanism with providing a separate "flash.bin" binary that replaces the imx-boot in the WIC file. This class is inherited in u-boot-fslc recipe and extends it only to those machines that have a corresponding "imx-boot-container" machine override set. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* use-imx-security-controller-firmware: Update DXL and Phantom DXL revsTom Hochstein2021-02-131-2/+2
| | | | | | Bump to rev A1 for i.MX 8DXL and C0 for 8DXL Phantom. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* fsl-eula-unpack: Document EULA v16 and v17Tom Hochstein2021-01-211-0/+4
| | | | | | | Add entries for EULA versions 16 and 17. The next NXP release 5.4.70-2.3.0 uses version 17. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* imx8qxpmek: Update the i.MX 8QXP default build to rev C0Tom Hochstein2021-01-211-2/+3
| | | | | | | | | | The current machine configuration support for 8QXP MEK is for rev B0 silicon. Support for rev C0 is implemented using a machine override `mx8qxpc0`. Update the default build to rev C0 silicon. Support for rev B0 is provided with a new machine feature `soc-revb0`. The machine override is removed. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* fsl-eula-unpack: Add historic V13 EULA infoTom Hochstein2021-01-211-0/+2
| | | | | | | | This missing license version is not causing any known problem, but adding it shouldn't cause a problem and could be useful if a V13 archive should surface. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* EULA: Update to LA_OPT_NXP_Software_License v15 August 2020Tom Hochstein2020-11-131-1/+1
| | | | | | | Update the EULA file in the layer and the corresponding variable in fsl-eula-unpack.bbclass. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* fsl-kernel-localversion.bbclass: add preconfigure after do_kernel_metadataMing Liu2020-11-101-1/+1
| | | | | | | | do_preconfigure task should run after do_kernel_metadata, or else there might be no ${WORKDIR}/defconfig present when KBUILD_DEFCONFIG is being set rather than defconfig added in SRC_URI. Signed-off-by: Ming Liu <liu.ming50@gmail.com>
* fsl-eula-unpack.bbclass: add v15 license md5sumAndrey Zhizhikin2020-10-271-0/+2
| | | | | | | | | | Latest NXP release 5.4.47-2.2.0 includes components which has license files updated to version 15 of LA_OPT_NXP_Software_License. Record the checksum of the new file version in the class in order to allow those components to be used. Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
* EULA: Update to LA_OPT_NXP_Software_License v11 February 2020Tom Hochstein2020-09-231-1/+1
| | | | | | | Update the EULA file in the layer and the corresponding variable in fsl-eula-unpack.bbclass. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* imx-seco: upgrade to version 3.6.3Andrey Zhizhikin2020-09-231-0/+36
| | | | | | | | | | Upstream version has been bumped up, update the recipe to match it. SECO FW name is picked up from the machine definition, as it is now defined in a separate bbclass which allows FW names to be set based on machine's SoC. Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
* fsl-eula-unpack: exclude FSL_EULA_FILE from sstate signatureSamuli Piippo2020-08-131-0/+1
| | | | | | | Use vardepsexclude for FSL_EULA_FILE variable to to make sstate cache usable from different build directories. Signed-off-by: Samuli Piippo <samuli.piippo@qt.io>
* linux-imx-headers: fix imx headers missing in sdkAndrey Zhizhikin2020-05-251-0/+6
| | | | | | | | | | | | | | | | | | i.MX-specific headers are missing in SDK once generated via image do_populate_sdk task. This was caused by dropped ALLOW_EMPTY package-controlling variable which is required for this recipe in order to indicate that package can have RDEPENDS. Additional RDEPENDS are also required by packages using new mechanisms to include linux-imx-headers, this allows headers to be propagated to the SDK when dependent package is included. Introduce ALLOW_EMPTY in recipe and RDEPENDS in use-imx-headers bbclass to have imx headers to be populated in the SDK. Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
* recipes-*: refine restrictions for NXP BSPAndrey Zhizhikin2020-04-161-0/+12
| | | | | | | | | | | | | | | | | | | | | | | Certain packages are using linux-imx-headers, which enforces them to use NXP BSP since headers are provided from the NXP kernel tree. Those recipes, which requires NXP kernel headers, are now including the use-imx-headers class to make sure the correct headers package is used. Since the introduction of separation between NXP and Mainline BSP for certain machines, recipes which are NXP-dependent are getting their COMPATIBLE_HOST to be marked as (null) effectively making them incompatible with mainline BSP which is expected behavior. By extending this restriction into the use-imx-headers class, all recipes which inherits is (because it is required) are getting automatically restricted to NXP BSP, hence making package NXP-dependent much easier. linux-imx-headers is marked as "NXP-only" but it is done explicitly inside the recipe in order to avoid confusion of inheriting the class. Signed-off-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
* EULA: Update to v10Tom Hochstein2020-04-161-1/+1
| | | | Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* fsl-eula-unpack.bbclass: add latest license md5sumMax Krummenacher2020-04-161-0/+4
| | | | | | | | | | | The 4.14.98-2.3.0 BSP targeting latest SoC silicon revisions uses an even newer license text 'LA_OPT_NXP_Software_License v10 December 2019'. And the upcomming 5.4.3-2.0.0 BSP uses yet another one: 'LA_OPT_NXP_Software_License v11 February 2020'. Add their md5sums additionally. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
* fsl-eula-unpack.bbclass: Enhance EULA modelTom Hochstein2020-04-101-1/+78
| | | | | | | | | | | | | | | Each new version of the EULA is meant to be a click through that includes any existing packages with an older EULA. The latest EULA is also copied in the layer. Capture this model in the class by listing the known EULAs and checking that any package has a known EULA. The new model also allows extensibility, so new EULAs can be introduced separately. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* dtc-145: Remove class and recipeMihai Lindner2020-04-021-7/+0
| | | | | | | | These were used as workaround for issues with building u-boot 2017.03 and older, after dtc upgrade to 1.4.6 and newer. We can drop them after upgrading all providers of u-boot. Signed-off-by: Mihai Lindner <mihai.lindner@nxp.com>
* Revert "fsl-eula-unpack.bbclass: Enhance EULA model"Otavio Salvador2020-03-271-44/+1
| | | | This reverts commit 9418435542ce76a2346f1a4aa2cbbb429a5d3543.
* fsl-eula-unpack.bbclass: Enhance EULA modelTom Hochstein2020-03-271-1/+44
| | | | | | | | | | | | | | | Each new version of the EULA is meant to be a click through that includes any existing packages with an older EULA. The latest EULA is also copied in the layer. Capture this model in the class by listing the known EULAs and checking that any package has a known EULA. The new model also allows extensibility, so new EULAs can be introduced separately. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* fsl-eula-unpack.bbclass: CleanupTom Hochstein2020-03-271-19/+10
| | | | | | | | - Remove current working directory handling and use the equivalent runfetchcmd workdir parameter - Simplify the SRC_URI for loop Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* fsl-eula-unpack.bbclass: Verify LICENSE contains ProprietaryTom Hochstein2020-03-031-0/+5
| | | | | | | All EULA packages are proprietary, so verify that the recipe LICENSE contains Proprietary before fetching the package. Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* fsl-vivante-kernel-driver-handler: Fix kernel name in variable assignmentTom Hochstein2020-02-121-3/+3
| | | | | | | | | | | | | | If the graphics driver is built into the kernel, a warning is generated for each i.MX kernel recipe, like this: WARNING: /home/r60874/zeus/sources/meta-imx/meta-bsp/recipes-kernel/linux/linux-imx_5.4.bb: Variable key RPROVIDES_${KERNEL_PACKAGE_NAME}-base ( ${KERNEL_PACKAGE_NAME}-${KERNEL_VERSION}) replaces original key RPROVIDES_kernel-base ( kernel-module-imx-gpu-viv). The problem is that the kernel name used in variables is no longer a constant 'kernel', but is now parameterized: https://github.com/openembedded/openembedded-core/commit/6c8c899849d101fd1b86aad0b8eed05c7c785924 Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* Update mdsum in fsl-eula-unpack bbclassCristinel Panfir2020-01-071-1/+1
| | | | | | -update license mdsum for firmware, codec, parser and vpu Signed-off-by: Cristinel Panfir <cristinel.panfir@nxp.com>
* kernel-itbimage.bbclass: Align the usage to spaces for indentation, as ↵Darko Komljenovic2019-12-181-3/+3
| | | | | | spaces raise the warning Signed-off-by: Darko Komljenovic <dkomljenovic@zoho.com>
* recipes: Use features_check instead of distro_features_checkKhem Raj2019-11-231-1/+1
| | | | | | distro_features_check is now deprecated Signed-off-by: Khem Raj <raj.khem@gmail.com>
* remove True option to getVar callsAndré Draszik2019-01-174-22/+22
| | | | | | | | | | | | | | getVar() has been defaulting to expanding by default for a long time (2016), thus remove the True option from getVar() calls with a regex search and replace. Search & replace made using the following command: sed -e 's|\(d\.getVar \?\)( \?\([^,()]*\), \?True)|\1(\2)|g' \ -i $(git grep -E 'getVar ?\( ?([^,()]*), ?True\)' \ | cut -d':' -f1 \ | sort -u) Signed-off-by: André Draszik <andre.draszik@jci.com>
* classes/use-imx-headers: Easy linux-imx-headers useOtavio Salvador2018-10-261-0/+19
| | | | | | | | | | | | | | | | | | | | | This allow to easy reuse of binary packages among similar SoCs. The usual use for this is to share SoC specific packages among different boards independently of the kernel version it is using, as far it is ABI compatible with the official version it will just work. Following recipes has been reworked to make use of the class: - imx-lib - imx-test - imx-vpu-hantro - imx-vpu - imx-alsa-plugins - gstreamer1.0-plugins-base - gstreamer1.0-plugins-imx - imx-gst1.0-plugin Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
* image_types_fsl.bbclass: Use IMAGE_LINK_NAME for mxs binariesOtavio Salvador2018-09-261-5/+13
| | | | | | | | The binary is generated as part of the image build so it should use the same naming schema to provide consistency. This also fixes the wks templates which use it. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
* EULA: Update to v24Tom Hochstein2018-08-301-1/+1
| | | | | Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>