ARM Technical Support Knowledge Articles

How do I boot Linux using .dtb files on my Versatile Express system?

Applies to: V2P-CA15-CA7

Scenario

ARM provides a set of pre-built Linux images that enable customers to run Linux on their Versatile Express system. Further information on the pre-built Linux images supplied by ARM can be found in the article "Where can I find pre-built Linux images for my Versatile Express system".

This Knowledge Article explains the different methods of mounting a Linux filesystem. 

Answer

To enable the Versatile Express system to boot using .dtb (device tree blob) files the Versatile Express system must be updated with the latest firmware. The update process is explained in the System Recovery section of the release notes, which can be found at the default installation path:

C:\Program Files\Versatile_Express_5_2\sw\info

The Boot Monitor v5.1.2 or later includes new commands. This new functionality is explained in the Boot Monitor Technical Reference Manual. This can be found at the default installation path:

C:\Program Files\Versatile_Express_5_2\software\Boot_Monitor

The Versatile Express system can use a Flash, Compact Flash, USB, SD Card or NFS mounted filesystem. 

The Linux kernel boot process is split into two parts. Firstly, the dtb file is loaded using the flash linux fdt command. Secondly, the kernel is loaded using the flash linux boot command. 

flash linux fdt <dtb_file>

Where <dtb_file> is the file name of the dtb file, this has to be the specific dtb file that describes the current platform.

The arguments passed into the flash linux boot command will depend on how the filesystem will be mounted. The remainder of this article explains the different options for mounting the filesytem when using the Versatile Express. 

The Versatile Express DVD 5.0 and later includes an ALIP File system. To use the ALIP filesystem on a Versatile Express system the image should be unzipped and copied to a suitable media device (SD Card / MMC / USB mass storage device). Please refer to the readme_fs.txt file for further information on how to populate a suitable media device. This can be found at the following default installation path:

C:\Program Files\Versatile_Express_5_2\software\Linux\filesystem

The boot arguments used will depend on the chosen media device:

MMC / SD Card

flash linux boot kernel root=/dev/mmcblk0p2 rw rootwait console=ttyAMA0,38400

USB / Compact Flash

flash linux boot kernel root=/dev/sda2 rw rootwait console=ttyAMA0,38400

NFS (Network File System)

The Versatile Express Motherboard contains an Ethernet port that allows mounting the filesystem over NFS. The following shows how to specify a networked attached filesystem. 

flash linux boot kernel root=/dev/nfs nfsroot=<nfs_fs_location> rw ip=dhcp console=ttyAMA0,38400

Where <nfs_fs_location> is the location on the network of the machine with the NFS mounted filesystem in the form of <ip_address>:<fs_location>

Flash

Prior to the Versatile Express 5.0 DVD release, the deliverables included a cramfs filesystem that could be programmed into NOR flash. The following instructions for flash booting a Linux kernel do not apply to the ALIP filesystem provided with the Versatile Express DVD 5.0 and later.

The following example describes how to boot Linux using a .dtb file. This "example boot" requires a cramfs filesystem to be programmed in to the Versatile Express Motherboard NOR Flash. The armflash driver has been deprecated from later versions of the Linux kernels. The armflash functionalities have been added to the physmap-flash driver. 

flash linux boot <kernel> root=/dev/mtdblock0 mtdparts=physmap-flash:<size_in_k>K@<flash_offset_address>(cramfs) console=ttyAMA0,38400

where:

<kernel>The name of the flash resident kernel image
<size_in_k> - File size of the cramfs in kilobytes.
<flash_offset_address> - The offset address of the filesystem in flash. The base offset of the flash memory is dependent on the memory-map defined by the CoreTile Express used. Instructions on how to calculate the flash offset can be found in the article: How do I calculate the offset address for my flash mounted filesystem on my Versatile Express system?

Rate this article

[Bad]
|
|
[Good]
Disagree? Move your mouse over the bar and click

Did you find this article helpful? Yes No

How can we improve this article?

Link to this article
Copyright © 2011 ARM Limited. All rights reserved. External (Open), Non-Confidential