Yocto Flash From Net
1 Flashing a complete Yocto system from Network using TFTP & NFS
- Please make sure your host system is ready to use TFTP/NFS. Use our Wiki if required:
- This is a concept Wiki. Please adapt it to your system and your requirements.
- Android can be flashed in the same way.
1.1 Build minimal file system
To setup a build environment follow steps 1 & 3 of the
Then, append the following to the conf/local.conf file in your Yocto build directory:
IMAGE_INSTALL_append = " bash e2fsprogs-mke2fs tar"
And build the image:
$ bitbake core-image-minimal
Create a root file system and copy files:
$ mkdir ~/flash_rootfs $ sudo tar xf tmp/deploy/images/imx8qm-var-som/core-image-minimal-imx8qm-var-som.tar.gz -C ~/flash_rootfs $ sudo cp -a ~/flash_rootfs/boot/*.dtb /tftpboot $ sudo cp ~/flash_rootfs/boot/Image.gz /tftpboot
Edit /etc/exports. E.g.
$ sudo gedit /etc/exports
...and add the following line to it (replace <uname> with the actual username):
Restart the NFS server:
$ sudo /etc/init.d/nfs-kernel-server restart
Insert the recovery SD card into your host PC and copy the following files from it (assuming it is mounted at /media):
$ sudo cp -a /media/rootfs/opt/images ~/flash_rootfs/opt/ $ sudo cp /media/rootfs/usr/bin/*.sh ~/flash_rootfs/usr/bin/
Boot the board, stop the autoboot to get to the U-Boot command line, and set the following environment variables:
=> setenv serverip <your host ip address> => setenv nfsroot /home/<your username>/flash_rootfs If you want to set the fdt file yourself, instead of using the default auto detection: => setenv fdt_file <relevant device tree>
=> setenv bootcmd 'run netboot' => saveenv => boot
On the target flash your system:
A complete system is flashed into the SOMs internal storage (NAND flash/eMMC).
Once the file system is built you can use it again and again to flash your VAR-SOM-MX8.
You can update the images to use your images and/or customize install_yocto.sh to your requirements.