Age | Commit message (Collapse) | Author |
|
Implement a separate teziimg class which support distro boot. This
image format uses a layout which allows distro boot on block devices
as well as raw NAND devices. It also support multi flash type images
by creating two image.json files for each flash type. It requires
machine specific meta data e.g.:
TORADEX_PRODUCT_IDS = "0032 0033 0039 0041"
TORADEX_PRODUCT_IDS[0032] = "imx7s-colibri-eval-v3.dtb,rawnand"
TORADEX_PRODUCT_IDS[0033] = "imx7d-colibri-eval-v3.dtb,rawnand"
TORADEX_PRODUCT_IDS[0039] = "imx7d-colibri-emmc-eval-v3.dtb,emmc"
TORADEX_PRODUCT_IDS[0041] = "imx7d-colibri-eval-v3.dtb,rawnand"
TORADEX_FLASH_TYPE = "rawnand emmc"
UBOOT_BINARY_TEZI_EMMC = "u-boot.imx-sd"
UBOOT_BINARY_TEZI_RAWNAND = "u-boot.imx-nd"
UBOOT_ENV_TEZI_EMMC = "uEnv-sd.txt"
UBOOT_ENV_TEZI_RAWNAND = "uEnv-nd.txt"
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
|
|
Prefer the $() syntax, it is POSIX and allows nesting.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
|
|
Allow to use a different U-Boot binary/environment file per
flash type. This prepares for a multi flash type image.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
|
|
Add variables to customize which rootfs image type we use in
the Toradex Easy Installer image. Also allow custom root
filesystem label.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
|
|
This prepares support for images with multiple flash types.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
|
|
The whole tarball is built as part of the the teziimg CMD.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
|
|
Break tar commands for better readability. No functional change.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
|
|
Create a separate function to calculate bootfs size. This allows
to reuse bootfs size calculation for distro boot.
Signed-off-by: Stefan Agner <stefan@agner.ch>
|
|
Now that OpenEmbedded core does not prefix dtb files names with
the type of the kernel image, we can get rid of our intermediate
KERNEL_DEVICETREE_FILES variable. Also the tar transformation
which removed kernel type prefix is no longer necessary.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
|
|
The following openembedded core commit dropped prefixing the dtb file
names with the type of the kernel image.
1860d9d3c62e2e94cd68a809385873ffd8270b6d
kernel-devicetree.bbclass: Fix and simplify instalation of DTB files
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Use IMAGE_NAME_SUFFIX variable rather than hardcoded value .rootfs
as suffix.
Signed-off-by: Drew Moseley <drew.moseley@northern.tech>
[use Python in rootfs_tezi_(emmc|rawnand) to get image suffix]
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
https://bugzilla.yoctoproject.org/show_bug.cgi?id=11372
With the fix available in rocko we can now replace the workaround
with the usual bitbake syntax.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
This works around bitbake throwing the following error:
| ERROR: When reparsing ...angstrom-lxqt-image.bb.do_image,
| the basehash value changed from b2871a71bd4873d31d3fe7de755c753f to 5cf887f9a6518e8cf668fd3f435d1fc1.
| The metadata is not deterministic and this needs to be fixed.
It looks like the vardepsexclude flag is ignored in general python functions.
Compare also with openembedded-core commit ecbc1db7ed1f9848dee69507de8eb289b8ddeba0
and follow-up extensions which uses a different workaround for the do_image code.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Acked-by: Stefan Agner <stefan.agner@toradex.com>
|
|
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Acked-by: Stefan Agner <stefan.agner@toradex.com>
|
|
Apalis T30 does not require a device tree. Do not try to deploy
device trees if none are specified.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Use the "u_boot_env" property to write uEnv.txt to flash
by default. With that the Toradex Easy Installer will make
sure that the default environment of the shipped U-Boot is
written on flash.
Especially since with 2.8b2 we transition to using zImage,
this change will make sure that a correct U-Boot environment
is written on flash to boot the zImage.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Deploy the default U-Boot environment alongside U-Boot itself.
This is helpful along with the new u_boot_env property for Toradex
Easy Installer image files.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
with its aquivalent do_image_teziimg[depends].
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
To clearly distinguish between images for Toradex Easy Installer
and legacy images we add the suffix -Tezi to the Toradex Easy
Installer images.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Use RFC 3339 date (2017-11-15) in the release_date field.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Acked-by: Stefan Agner <stefan.agner@toradex.com>
|
|
Use configurable rather than hard-coded boot ROM and SPL payload
offsets.
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Acked-by: Stefan Agner <stefan.agner@toradex.com>
|
|
UBOOT_BINARY is only available in U-Boot recipes and the Toradex
image recipes. If the Toradex image recipes are not used, then
UBOOT_BINARY is undefined and image.json contains "null" instead of
the binary name.
Define UBOOT_BINARY with a reasonable default.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Generate the image description file just before the Tezi image
gets generated by attaching rootfs_tezi_json as a prefunc of
do_image. It should lead to better root file system size
estimation since all do_rootfs post processing functions have
been processed at that time.
It also allows to move the check whether an Tezi image will be
built into the anonymous python function. Later we should be
able to get rid of the check by just adding rootfs_tezi_json as
a prefunc of do_image_tezirun.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Without this, if nothing else makes sure that U-Boot got built
then image_type_tezi fails.
This can happen when one does build core-image-minimal.
| NOTE: Create bootfs tarball
| tar: SPL: Cannot stat: No such file or directory
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
The utility to create ext4 file systems (mkfs.ext4) discards all
data on the target partition before creating the file system by
default. On some eMMC this operation takes a while several seconds
which makes flashing images slow.
Often a new image is written to a already (almost) empty eMMC, so
there is not a lot of value in discarding all data before flashing.
Also, the Toradex Easy Installer has its own option which uses
blkdiscard to discard blocks before writing (see "erase" option).
Disable discard during file system creation by default using the
nodiscard option.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Colibri iMX7 Dual 1GB uses eMMC but no SPL. Make sure that Tezi
flashes the u-boot.imx binary to the location where the boot
loader expects the image.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Use OpenEmbedded standard variables such as PV and DATE as much
as possible. This allows to reuse the Tezi image class for non-
Toradex images with their own versioning scheme.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
In IMAGE_CMD_teziimg(), if a dtb file has more than one dot the
current logic fails. e.g. device.tree.dtb will be truncated at the
first dot to device.
Fix by removing awk in favour of letting basename also remove
the .dtb extension.
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Update tezi to use ext4 by default for emmc.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
The volumes for kernel, device tree and Cortex-M4 firmware get
updated with a single binary for which a static volume is better
suited. This also allows the boot code to only load the amount of
written bytes and therefore speeds up boot time. Static volumes
have been used already with the update.sh script based update
method.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Raw NAND images flash the kernel and device tree directly into
UBI volumes, hence there is no need to generate a bootfs tarball.
Leave the kernel and device tree unpacked so we can copy it
directly into the UBI volume.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Add support for raw NAND devices. Describe the layout of the
MTD partitions and UBI volumes using JSON. Also split the
storage description into a separate function, called depending
on a machine specific variable for eMMC and raw NAND.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
In case teziimg is not among the requested images (not part of
IMAGE_FSTYPES) we don't need to create a Toradex Easy Installer
image.json file.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
Avoid ambiguity with other uses of the string "tezi", e.g. when used
as an image or distro name.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Max Krummenacher <max.krummenacher@toradex.com>
|
|
The Toradex Easy Installer is a Linux based installer for images. This
commit adds a new image type which allows to build images flashable with
this installer directly with OpenEmbedded.
The installer needs a JSON based image description (image.json) which will
be generated using a custom Python step. The IMAGE_CMD step then creates
a bootfs tar.xz and creates a tar with the bootfs, rootfs, U-Boot and SPL,
image.json and some more metadata files. This tarball can be extracted
on a SD card, USB flah drive or HTTP server and consumed by the Toradex
Easy Installer.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
|
|
remove the files copied from meta-fsl* for Colibri-VF V2.1
move the colibri-vf u-boot and kernel stuff to meta-fsl-arm-extra
|
|
remove when moving to dora branch
|