Write rootfs, device tree and kernel to NAND flash from uboot using usb flash

Hello!
Can you help me to flash my custom rootfs, device tree, linux kernel from u-boot using USB flash. I have
rootfs(Colibri-iMX6ULL_Console-Image.bootfs.tar.xz), kernel(zImage) and device tree(imx6ull-colibri-eval-v3.dtb).
I used to Toradex Easy Installer for do that, but now I need to do that from u-boot using usb flash with this files by typing in uboot command for example ‘run prog’. I cannot find any information about the way how I can do that. But I think about command cp.b ${loadaddr} ${addr} ${filesize}; but I don’t know addresses and how I can get files from usb flash. I use cusom board with Colibri iMX6ull module.
Thanks!

Hi @Artem

Why are not you using Toradex Easy Installer?
What is your application?

Best regards,
Jaski

I use custom board that have no LCD and have specific storage devices that defferent from default that can be use from Toradex Easy Installer. Also, for flash rootfs, kernel and device tree I would like to use only consolse without using recovery scripts on host computer. Thank you for your answer.

Maybe are there ways that could be used for flash rootfs, kernel and device tree using only console on host computer? Thank you.

HI @Artem

As I already stated, we recommend you to use Toradex Easy Installer.

You can create a custom image with custom partitions, custom kernel, custom device-tree and custom rootfs. Even you can integrate these customization is your version of the Toradex Easy Installer.

Being said that, in the past there was the possibility to flash the image using U-Boot as described here. However this was never tested for Colibri iMX6ULL. If this fulfil your requirement, please feel free to use it.

Best regards,
Jaski

Yes, the script is called recovery-linux.sh.
You are welcome.

Best regards,
Jaski

Thanks, I would not want to use scripts, just command line commands.

Best regards,

Artem

Ok. I am sorry I did not get it. You can also type in all the commands in the script by yourself.

Best regards,
Jaski

Thank for answer.

In my use case, tezi is not working in system without LCD, for example i built device tree without LCD (I use LCD pins for other peripheral modules) and started toradex easy installer on the custom board and I saw that autoinstalling my distributive not working (It works when I used to device tree from factory image). As I understood tezi autoruns: /usr/bin/tezi -autoinstall -qws -nokeyboard -nomouse
and with variable QWS_DISPLAY=multi: LinuxFB:/dev/fb0:0 VNC:LinuxFB. When I try to start it manually from console and I will see the error:

Unable to load library icui18n “Cannot
load library icui18n: (icui18n: cannot
open shared object file: No such file
or directory)”

QScreenLinuxFb::connect: No such file
or directory

Error opening framebuffer device
/dev/fb0 LinuxFB: driver cannot
connect

Aborted

Can you help me to start tezi without LCD*(/dev/fb0)? I need tezi for autoinstall my custom distributive.

Or can I use utility like tezi app that could understand format Toradex easy installer(image.json, zImage, *.dtb, rootfs) and install my own custom distributive not using tezi application?

Or maybe is there way that can create abstract lcd for successfully start tezi application and start autoinstall my custom distributive that I have on USB Stick.

Best regards,

Artem

Thank for answer.

My idea use usb stick or sd-card with two partitions: 1st - with Toradex Easy Installer; 2nd - with my custom distributive with autoinstall flag and auto rebooting after installing. I can insert the storage device and in u-boot type: run distro_bootcmd. Then will be installed Toradex Easy Installer and than will be installed my custom distributive. **But I should not have LCD in my device three and I should type only one command run distro_bootcmd **

Best regards,

Artem

Hi @Artem

tezi is not working in system without LCD, for example i built device tree without LCD

I don’t what exactly you are doing. Toradex Easy Installer should work.

When I try to start it manually from console and I will see the error:

Command Line Support for Toradex Easy Installer is not supported yet.

Can you help me to start tezi without LCD*(/dev/fb0)? I need tezi for autoinstall my custom distributive.

Could you share your custom device-tree file?

Or can I use utility like tezi app that could understand format Toradex easy installer(image.json, zImage, *.dtb, rootfs) and install my own custom distributive not using tezi application?

I don’t understand what you are trying to do. Please use the Toradex Easy Installer.

Or maybe is there way that can create abstract lcd for successfully start tezi application and start autoinstall my custom distributive that I have on USB Stick.

You can keep the node fb0 or lcd in device-tree, but just disable the Pins.

Best regards,
Jaski