DHCOM Update: Linux Root Filesystem
To write a new linux root filesystem into the NAND-Flash memory of a DHCOM device you can use the DHCOM Update Mechanism. The root filesystem update is started by u-boot like other NAND-Flash updates. Unlike other NAND-Flash updates u-boot is not capable to write the rootfilesystem itself. For this purpose u-boot loads a minimal linux kernel which does the work. We call this tiny kernel in the further description "Update Kernel".
To run a linux root filesystem update you have to provide a update kernel in the root directory of your update media (e. g. microSD, SD, USB). The filename of the update kernel has to be uImage.update. Please download the matching update kernel in the download area of your board (e. g. Download area iMX25 or Download area AM35x).
The latest version of the Update/Backup Kernel allows to read the NAND Flash content (of the rootfs mtd partition) and store it on a flash storage (e. g. microSD, SD, USB).
Supported Root Filesystem Images
You have to provide your new root filesystem in one of the following formats:
Tarball archive with gzip compression
Tarball archive with bzip2 compression
It is important that the appropriate file extension is used. If you have to update a big number of devices we recommend to use the
*.ubi format because it is the fastest. If you need help to create
*.ubifs images please have a look to this page.
Tarball archive without compression
The appropriate file extension has to be specified. Only if it ends with "*.tar" the backup mode is used.
To flash it back into the NAND-Flash of your target you have to compress the tarball archive on your workstation to get a "*.tar.gz" or "*.tar.bz2".
# gzip myrootfsbackup.tar
Set Up a Root Filesystem Update
You can start a linux root filesystem update on the u-boot console with the command
update rootfs <RootfsImageFilename>
To run a automaticaly update or to run a rootfilesystem update with the command
update without additional options you have to provide a "DHupdate.ini"-file.
Examples for DHupdate.ini Files
##DHCOMupdate## [display] progress.bmp done.bmp error.bmp [led] GPIO_D high [update] rootfs ImageFilename.ubi reset [end]
##DHCOMupdate## [display] progress.bmp done.bmp error.bmp [led] GPIO_D high [update] settings DHCOM_SettingsBlock.bin refresh bootloader u-boot_image.bin linux uImage_NewLinuxKernel rootfs ImageFilename.tar.gz [end]
Note: It is necessary to use UNIX End Of Line conversion in DHupdate.ini files.
Use NAND-FLash Rootfilesystem
If your DHCOM board does not use the root filesystem within the NAND-Flash check the following on the u-boot console:
If you got the following output your board is configured to use a root filesystem on a micro SD card:
You can configure your board to use the NAND-Flash root filesystem with the following commands:
setenv linux_root ubi.mtd=X root=ubi0:nand_rootfs rootfstype=ubifs
X specifies the mtd device to use. You can determine this number on a runnig device with
# cat /proc/mtd
On i.MX25 X=6 and on AM35x X=7.