Booting U-Boot
This section only covers selective topics that are related to using U-Boot within PetaLinux. For more comprehensive coverage of U-Boot usage, refer to the U-Boot Manual documentation.
U-Boot is booted by the FS-Boot bootloader either from RAM memory or directly from FLASH memory depending if the target platform has been configured. However, if FS-Boot is not enabled, the user can refer to the chapters in Advanced Topics on alternative boot methods.
This section covers the steps to boot up U-Boot using FS-Boot on a target platform. Assuming that FS-Boot has been enabled in the build process. Refer to the FS-Boot chapter for more information on using FS-Boot.
Start Kermit
Ensure that the 'kermit' program is set up and started.
Boot up the target platform
Before booting U-Boot, the user has to consider the state of the target platform. For a non-configured platform, select the SREC Image Download option in FS-Boot to download the U-Boot image For a configured platform, simply allow FS-Boot to automatically boot U-Boot from FLASH memory.
Boot up the target platform as per the instructions outlined in the Booting FS-Boot chapter.
U-Boot Boot Messages
At this stage, depending on the state of the board - whether u-boot has already been programmed into flash - the U-Boot boot messages should appear similar to one of the below 2 examples.
Not Configured Platform Boot Messages
FS-BOOT: Waiting for SREC image....
FS-BOOT: Image download successful.
FS-BOOT: Warning image location differ from default boot location. Image will not boot automatically after POR.
FS-BOOT: Press 'n' to boot old image.
FS-BOOT: Use new image.
FS-BOOT: Booting image...
SDRAM :
U-Boot Start:0x13fc0000
Malloc Start:0x13f60000
Board Info Start:0x13f5ffd0
Boot Parameters Start:0x13f4ffd0
FLASH: 8 MB
ETHERNET: MAC:<NULL>
*** Warning - bad CRC, using default environment
U-Boot>
When the platform is not configured, U-Boot is booted from the system's RAM memory. Hence, the warning message appears to warn the user that the image will not be automatically bootable after a platform power-on or reset state.
The U-Boot command prompt will appear to allow the user to start configuring the platform.
Configured Platform Boot Messages
=================================================
FS-BOOT First Stage Bootloader (c) 2006 PetaLogix
=================================================
FS-BOOT: Initialising Timer 0 device...
FS-BOOT: Booting from FLASH. Press 's' for image download.
FS-BOOT: Booting image...
SDRAM :
U-Boot Start:0x13fc0000
Malloc Start:0x13f60000
Board Info Start:0x13f5ffd0
Boot Parameters Start:0x13f4ffd0
FLASH: 8 MB
ETHERNET: MAC:00:0a:35:00:22:02
Hit any key to stop autoboot: 4
For a configured platform, U-Boot is booted from the ' boot ' partition in FLASH. U-Boot defaults to use the configured instructions in the environment to boot up the target system.
As of PetaLinux v0.40-rc1, it is no longer necessary to initialsie the u-boot environment using the config.ub.img script. Instead, u-boot has been modified to automatically start with the default settings. These of course may be overridden in flash in the standard u-boot manner, with the setenv command to set environment variables, and the saveenv command to write them to flash.
In the above example, U-Boot has been configured to automatically boot up the Linux kernel with the autoboot delay set to 4 seconds. The user can stop the autoboot process by simply typing any key on the Kermit console. This will return a U-Boot prompt.
Previous:
Customising U-Boot

