summaryrefslogtreecommitdiff
path: root/classes
AgeCommit message (Collapse)Author
2021-03-18image_type_tezi.bbclass: NXP license backupDenys Drozdov
Keep hard-copy version of license file in sstate cache in case of NXP connection error Related-to: ELB-3485 Signed-off-by: Denys Drozdov <denys.drozdov@toradex.com>
2021-03-04image_type_tezi.bbclass: avoid installing dtb/dtbo for fitimageMing Liu
Devicetrees and overlays have been bundled into fitimage, so we dont have to install them to boot partition. Related-to: TOR-1700 Signed-off-by: Ming Liu <ming.liu@toradex.com>
2021-03-04toradex-fitimage.bbclass: introduce bbclass fileMing Liu
To support devicetree overlays, we need let fitimage_assemble handle both ${KERNEL_DEVICETREE} and ${EXTERNAL_KERNEL_DEVICETREE} at meanwhile, but the fitimage_assemble can only deal with one. ( when ${EXTERNAL_KERNEL_DEVICETREE} is set, it will skip ${KERNEL_DEVICETREE} ) Let's override fitimage_assemble to be able to assemble all dtb/dtbo files in ${KERNEL_DEVICETREE} and ${EXTERNAL_KERNEL_DEVICETREE}. Related-to: TOR-1700 Signed-off-by: Ming Liu <ming.liu@toradex.com>
2021-03-04toradex-devicetree.bbclass: introduce bbclass fileMing Liu
The major reason for doing this is because we are currently deploying all dtbo files to ${DEPLOY_DIR_IMAGE}/devicetree, but not machine specific ones, and they will be unnecessarily bundled into fitimage when kernel-fitimage.bbclass is being inherited. To fix that, we introduce a extra task do_collect_overlays to collect machine specific overlays to ${DT_FILES_PATH} before do_compile, where dtb compilation is being compiled in. In this way, only machine specific overlays would be compiled and deployed. Now we can drop device-tree-overlay-filter recipe with this change. Related-to: TOR-1700 Signed-off-by: Ming Liu <ming.liu@toradex.com>
2021-03-02image_type_tezi.bbclass show license for tdxref builds onlyDenys Drozdov
The License window will be shown in case SHOW_EULA_FILE set to "1" Related-to: ELB-3485 Signed-off-by: Denys Drozdov <denys.drozdov@toradex.com>
2021-03-02image_type_tezi.bbclass add license file to tezi imageDenys Drozdov
Ensure there is a popup that shows the EULA license to be accepted once installing a tdxref image Related-to: ELB-3485 Signed-off-by: Denys Drozdov <denys.drozdov@toradex.com>
2021-01-28image_type_tezi: use device-tree-overlay-filterMax Krummenacher
Replace tezi_deploy_dt_overlays() with a depend on device-tree-overlay-filter. This allows to append the device tree overlays to IMAGE_BOOT_FILES and thus they do get installed to TEZI and WIC images. Before they were missing in the WIC images. Related-to: ELB-3197 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2021-01-19image_type_tezi: refine machine specific overlay deploymentMax Krummenacher
The current wildcard setting deploys machine specific overlays with <machine>* and thus e.g. apalis-imx8 gets additionally those specific to apalis-imx8x. Fix that. Related to: ELB-3499 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2021-01-19image_type_tezi: allow to use without a tordex distroMax Krummenacher
If one uses our BSP layers / machines without a Toradex distro the do_image_teziimg step fails due to missing variables. Add weak defines of those. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-11-24meta: drop 'overlays' sub-directory from fdt_overlaysMing Liu
This patch mainly aims to let fdt_overlays only contain devicetree overlay names without the 'overlays' sub-directory. Also add a sanity check for items in TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT, if a item not existing in boot filesystem, throw a error at build time. A complementary patch is needed to boot script, to load devicetree overlays from a configurable prefix. Related-to: TOR-1537 Signed-off-by: Ming Liu <ming.liu@toradex.com>
2020-11-13image_type_tezi.bbclass: drop teziimg-distro image typeMing Liu
We have decided to drop boot partition from EMMC/RAWNAND devices for all Torizoncore images, in which case, we dont have to maintain a extra image type teziimg-distro for Torizoncore, let's drop it. This patch would not introduce any functional change to teziimg images, just aims to drop all Torizoncore related code. Introduce two new variables to make teziimg more extendable: - TEZI_ROOT_NAME: the end user could choose rootfs image name, for instance, "rootfs", "ota". - TEZI_USE_BOOTFILES: the end user could decide if a boot partition should be created for EMMC device. Related-to: TOR-1334 Signed-off-by: Ming Liu <ming.liu@toradex.com>
2020-10-16image_type_tezi.bbclass: add tezi_deploy_dt_overlays prefuncsMing Liu
Move the code deploying dtb overlays to a prefuncs tezi_deploy_dt_overlays of do_image_bootfs, and put all prefuncs of do_image_bootfs, do_image_teziimg, do_image_teziimg_distro to variables so that they could be overridden in other meta layers. For instance, an end user might want to write his/her own image.json file according to his/her partitions layout. Also fix a missing double quotes. Related-to: TOR-1334 Signed-off-by: Ming Liu <ming.liu@toradex.com>
2020-10-14image_type_tezi: fix machine overlay with carrier postfix deploymentMax Krummenacher
We have machine overlay where the machine name is postfixed with the carrier board name, e.g. colibri-imx7-aster_atmel-mxt_overlay.dts. No longer require an '_' after the machine name to deploy also overlays with a postfix after the machine name. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-10-14image_type_tezi: colibri-imx7-emmc fix overlay deploymentMax Krummenacher
For the colibri-imx7-emmc machine we need the overlays prefixed with colibri-imx7. Due to the changed machine name the machine specific overlays did not get deployed into a image. Fix that. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-10-14image_type_tezi: i.mx 8x fix overlay deployment for b0 siliconMax Krummenacher
We have separate machines for the now deprecated i.MX 8X B0 silicon based modules. Due to the changed machine name the machine specific overlays did not get deployed into a image. Fix that. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-10-06class: image_type_tezi: use tezi config format 4 for mx8Philippe Schenker
On i.MX8 processors there was a bug in Tezi that leaked an old u-boot environment into newly installed image. This got fixed and can be enforced by using Tezi config format number 4. Make use of that. Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2020-09-01Revert "image_type_tezi: drop device-tree-overlays"Max Krummenacher
The device-tree overlays have been reworked. Reenable the build and deployment. This reverts commit 1914b33f70f13b5460152daaf49de7511e4990ee. Related-to: ELB-2943 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-08-17image_type_tezi: drop device-tree-overlaysMax Krummenacher
They currently do not build against the downstream kernel, drop them if building for a downstream kernel for now. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-08-09image_type_tezi.bbclass: drop UBOOT_BINARYMing Liu
It's useless and would be overridden by the same definition in imx-base.inc of meta-freescale layer. Related-to: ELB-2553 Signed-off-by: Ming Liu <ming.liu@toradex.com>
2020-08-09image_type_tezi.bbclass: change u-boot env file nameMing Liu
The default u-boot env file name has changed to u-boot-initial-env in OE layer, adapt to it. Related-to: ELB-2553 Signed-off-by: Ming Liu <ming.liu@toradex.com>
2020-07-06image_type_tezi: rename overlays folderIgor Opaniuk
Rename destination "devicetree" with dtb overlays (on bootfs) to "overlays". Relates-to: ELB-2807 Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> (cherry picked from commit 288b7e41f508e0dcde66b536953d014dd4497971)
2020-06-30image_type_tezi.bbclass: increase min boot partition size to 3x payloadMarcel Ziswiler
If using upstream variants kernel itself is close to 8 MB and one can barely keep a backup copy in the resulting 16 MB! Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> (cherry picked from commit aae74f006cd02717df3b047b59940196de53c105)
2020-06-30image_type_tezi.bbclass: remove quotes from u-boot variableOleksandr Suvorov
Iterating through the variable don't interpret quotes at and they act as a part of variable. It leads to iterate with the wrong filenames [1]. Removing quotes fixes overlay names. [1] ----------------- PC $ cat overlays.txt fdt_overlays="1 2 3" Apalis iMX6 # env import -t ${loadaddr} overlays.txt Apalis iMX6 # print fdt_overlays fdt_overlays="1 2 3" Apalis iMX6 # for overlay_file in ${fdt_overlays}; do echo "file=${overlay_file}"; done file="1 file=2 file=3" ----------------- Related-to: ELB-2797 Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com> (cherry picked from commit b8b2e862432c0a30f41bd19efb66ec80267e7f5d)
2020-06-09image_type_tezi.bbclass: fix getting list if dtbosOleksandr Suvorov
Commit 0b33be8f "image_type_tezi.bbclass: allow inexistence of machine specific overlays" introduces the regression bug, that prevents to gather machine-specific dtbos. This commit fixes the bug. Fixed: 0b33be8f ("image_type_tezi.bbclass: allow inexistence of machine specific overlays") Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com> (cherry picked from commit 5846cdddd88363cfa8bab0bf14d5999f20503709)
2020-06-09image_type_tezi.bbclass: allow inexistence of machine specific overlaysMarcel Ziswiler
Gracefully continue should there not (yet) be any machine specific device tree overlays. This avoids the following build failure: ERROR: Logfile of failure stored in: /home/user/builds/oe-core_4.0/build /tmp/work/apalis_imx8-tdx-linux/console-tdx-image/1.0-r0/temp /log.do_image_bootfs.4117712 Log data follows: | DEBUG: Executing python function tezi_deploy_bootfs_files | DEBUG: Python function tezi_deploy_bootfs_files finished | DEBUG: Executing python function set_image_size | DEBUG: 168906.400000 = 129928 * 1.300000 | DEBUG: 168906.400000 = max(168906.400000, 65536)[168906.400000] + 0 | DEBUG: 168907.000000 = int(168906.400000) | DEBUG: 168907 = aligned(168907) | DEBUG: returning 168907 | DEBUG: Python function set_image_size finished | DEBUG: Executing shell function do_image_bootfs | ls: cannot access 'apalis-imx8_*.dtbo': No such file or directory | WARNING: /home/user/builds/oe-core_4.0/build/tmp/work /apalis_imx8-tdx-linux/console-tdx-image/1.0-r0/temp /run.do_image_bootfs.4117712:1 exit 2 from 'machine_dtbos=`cd $deploy_dt_dir && ls apalis-imx8_*.dtbo`' | ERROR: Execution of '/home/user/builds/oe-core_4.0/build/tmp/work /apalis_imx8-tdx-linux/console-tdx-image/1.0-r0/temp /run.do_image_bootfs.4117712' failed with exit code 2: | ls: cannot access 'apalis-imx8_*.dtbo': No such file or directory | WARNING: /home/user/builds/oe-core_4.0/build/tmp/work /apalis_imx8-tdx-linux/console-tdx-image/1.0-r0/temp /run.do_image_bootfs.4117712:1 exit 2 from 'machine_dtbos=`cd $deploy_dt_dir && ls apalis-imx8_*.dtbo`' | ERROR: Task (/home/user/builds/oe-core_4.0/build/../layers /meta-toradex-demos/recipes-images/images/console-tdx-image.bb :do_image_bootfs) failed with exit code '1' NOTE: Tasks Summary: Attempted 5813 tasks of which 5544 didn't need to be rerun and 1 failed. NOTE: Writing buildhistory NOTE: Writing buildhistory took: 15 seconds Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> (cherry picked from commit 0b33be8fed56b44c8f0b648da20d0b6706d8e7d5)
2020-06-09image_type_tezi.bbclass: add dtoverlays supportIgor Opaniuk
Introduce TEZI_EXTERNAL_KERNEL_DEVICETREE and TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT variables. First one provides the list of overlays copied to boot partition (by default all overlays are copied), the second one sets the list of overlays that should be loaded during boot time (listed in ${bootfs}/overlays.txt). TEZI_EXTERNAL_KERNEL_DEVICETREE_BOOT defaults to be empty. Relates-to: ELB-2723 Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> (cherry picked from commit c648af29199e2f8dedcaf6b7c3c61a2dcf6a579b)
2020-06-01image_type_tezi.bbclass: drop some redundant variablesMing Liu
UBOOT_BINARY_TEZI_EMMC has been defined in machine conf, drop it. Signed-off-by: Ming Liu <ming.liu@toradex.com> (cherry picked from commit 1f5d1d2cb0bf8711c93de21bccc6e87bea96253a)
2020-04-01toradex-kernel/u-boot-localversion: use fixed length git hashStefan Agner
Make sure the git hash is always 12 characters long. This avoids issues where we can get different length git hashes between to independent builds. This can be problematic when sstate is shared. Related-to: TOR-810 Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2020-03-19image: make sure u-boot enviroment is erasedLuka Pivk
Make sure u-boot enviroment is erased when installing new Toradex Easy Installer image Related-to: TEI-130 Signed-off-by: Luka Pivk <luka.pivk@toradex.com> (cherry picked from commit 25711572bcb5a40057b53323b8b34a28f74d9b0f)
2020-03-13toradex-kernel-config: add bbclassMing Liu
It contains a helper function kernel_configure_variable that could be called in do_configure_append task to assign a value to a config variable in ${B}/.config. Change toradex-kernel-localversion.bbclass to use this function. Signed-off-by: Ming Liu <ming.liu@toradex.com>
2020-03-06toradex-kernel-localversion.bbclass: fix set scmversion with autorevMax Krummenacher
Handle the case where SRCREV_machine is set to AUTOREV. As SRCREV_machine isn't set to INVALID as its default drop checking for INVALID. fixes: f22318f toradex-kernel-localversion.bbclass: use SRCREV to set scmversion Related-to: TOR-694 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-03-05toradex-kernel-localversion.bbclass: fix set scmversion with autorevMax Krummenacher
Handle the case where SRCREV is set to AUTOREV. fixes: f22318f toradex-kernel-localversion.bbclass: use SRCREV to set scmversion Related-to: TOR-694 Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-03-04toradex-kernel-localversion.bbclass: use SRCREV to set scmversionMing Liu
In commit 32df2d41: [ toradex-kernel-localversion.bbclass: use origin branch set scmversion ] we changed to use origin branch to set scmversion, but that's not good enough, we should stick to SRCREV which is the latest original commit in the source. Related-to: TOR-694 Signed-off-by: Ming Liu <ming.liu@toradex.com>
2020-03-03image_type_tezi.bbclass: introduce TEZI_CONFIG_FORMATMing Liu
This makes 'config_format' item configurable in different layers. Signed-off-by: Ming Liu <ming.liu@toradex.com>
2020-02-13toradex-kernel-localversion.bbclass: use origin branch set scmversionMing Liu
For kernel-yocto, the commit hash of HEAD is different for every run of do_patch if there is any patch in SRC_URI, this is breaking the recipes that relying on KERNEL_VERSION which contains scmversion, so we should let scmversion stick to the original head instead of the HEAD after do_patch, this will make scmversion stable and hence will make KERNEL_VERSION stable for the recipes that relying on it. Signed-off-by: Ming Liu <ming.liu@toradex.com>
2020-02-13image_type_tezi: add distro flavour to image summaryMax Krummenacher
So that one sees in the Toradex Easy Installer which image is which. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> (cherry picked from commit 3d072f3077b67adf293810da51ba951dc4b6c593) And the squashed fix: (cherry picked from commit 78d71eea7dd80066067f93445a957f8396b63c6e) (cherry picked from commit e6e0f885bc858f16a6c49522d91e7b6dc67d2a16)
2020-01-16image_type_tezi.bbclass: introduce TEZI_DATEMing Liu
Introduce TEZI_DATE variable, it defaults to ${TDX_MATRIX_BUILD_TIME} but could be overridden in local.conf. It will be used to set release_date in image json files, hence it must be excluded by IMAGE_TYPEDEP_teziimg and IMAGE_CMD_teziimg-distro to avoid running into basehash mismatch problems. Signed-off-by: Ming Liu <ming.liu@toradex.com>
2020-01-16image_type_tezi.bbclass: fix image.json race conditionMing Liu
Currently we are generating image.json files directly in ${DEPLOY_DIR_IMAGE} which is not correct, since image.json file is a image specific file so race condition could happen when multiple image builds write to a same image.json. Fix it by generating image json files in ${IMGDEPLOYDIR} directory with IMAGE_BASENAME suffix and copying them to a temporary directory ${WORKDIR}/image-json with the final json names. In this way, the json files could be handled by sstate and they turn to be image specific. Signed-off-by: Ming Liu <ming.liu@toradex.com>
2020-01-09toradex-kernel-localversion: disable automatic localversionStefan Agner
Actually, LOCALVERSION_AUTO needs to be enabled to make the kernel build system picking up .scmversion. So make sure LOCALVERSION_AUTO is enabled when we generate a .scmversion file and disabled otherwise. Fixes: 1bb212d9311a ("toradex-kernel-localversion: disable automatic localversion") Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2019-12-20image_type_tezi: allow custom Tezi image nameStefan Agner
Introduce a new variable TEZI_IMAGE_NAME to allow a custom image name for the Tezi tarball. This allows to stick with the default OpenEmbedded image names for rootfs tarballs etc. while still following custom naming rules for the final Tezi images. Default to IMAGE_NAME to retain backward compatibility. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2019-12-19toradex-kernel-localversion: disable automatic localversionStefan Agner
Make sure LOCALVERSION_AUTO is disabled to avoid interference with our LOCALVERSION. This fixes building of the i.MX 8 kernel recipe. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2019-12-18toradex-kernel/u-boot-localversion: make sure version is definedStefan Agner
Make sure TDX_VERSION is defined in case Toradex distro is not used. This avoids confusing localverisons with just a dash. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2019-12-11toradex-kernel-localversion: fix compilation with mainline recipeStefan Agner
The mainline recipe has the .config file ready later then our kernel recipes. Use kernel_do_configure_append() which seems to work for both cases. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2019-12-04image_type_tezi.bbclass: fix some appendVarMing Liu
The blank should be before the value rather than after it, or else we risk on messing up the values by 'a b' > 'ab'. Signed-off-by: Ming Liu <ming.liu@toradex.com>
2019-12-04image_type_tezi.bbclass: change logic on spl deploymentMing Liu
Use OFFSET_SPL_PAYLOAD to decide if a SPL has to be deployed or not. This allows a simple integration of machines which have an SPL (as e.g. verdin-imx8mm has) but do aggregate the SPL and U-Boot proper into one binary. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> Signed-off-by: Ming Liu <ming.liu@toradex.com>
2019-12-04image_type_tezi.bbclass: refacture/unify u-boot artefactsMing Liu
The list of deployed U-Boot artefacts is set in python for the 'distro' tezi-image, but in the non 'distro' case directly in the tar command. Unify that to put the list together in python. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com> Signed-off-by: Ming Liu <ming.liu@toradex.com>
2019-12-03image_type_tezi.bbclass: use distro version by defaultStefan Agner
Using PV is not a good idea with the new versioning, especially since there is a timestamp in the version number. Use the DISTRO_VERSION variable by default. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2019-12-03toradex-kernel-localversion: add Toradex specific local versionStefan Agner
Add Toradex specific local version implementation for the Linux kernel. This implementation is a simplified version from what is in meta-freescale. It can be used with linux-yocto based Linux recipes as well as regular OE kernel recipes and linux-fslc based recipes. This allows us to reuse the class in all Linux recipes used by Toradex. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2019-12-02toradex-u-boot-localversion: add Toradex specific local versionStefan Agner
Add Toradex specific local version implementation. This is very similar to what meta-freescale carries, but allows us to reuse the class in all U-Boot recipes used by Toradex. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2019-11-26image_type_tezi.bbclass: introduce TEZI_VERSIONStefan Agner
Currently we use PV of the image recipe as version number for the Toradex Easy Installer image json. When trying to implement the new versioning scheme which introduces timestamps in PV uncovered issues which are quite complex to overcome, see also this mailing list post: http://lists.openembedded.org/pipermail/openembedded-core/2019-November/289765.html To be able to implement the new versioning scheme we need to change the source of the version number used in the Tezi image json. To be more dynamic this introduces the variable TEZI_VERSION. So far the class used the "Software Package Version" without the (mandatory) date identifier. However, we used the full version with date indentifier in the file name. This changes to use the full "Software Package Version" in both cases by default. Also use IMAGE_CMD_xy[vardepexclude] instead of the task name directly. This makes sure that image.bbclass does remove the variable from the image store and avoids premature expansion which leads in basehash value changed issues. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>