第10章 Boot Modes and Bootloader Functions

This chapter explains about the boot modes on the Armadillo and also about the boot configuration functions of Hermit-At, the default bootloader.

JP1 can be used to select between the on-board flash memory boot mode and the UART boot mode on Armadillo-440. In the on-board flash memory boot mode, the bootloader stored in the bootloader region of flash memory is booted. The UART boot mode is used for system restore when, for example, the bootloader stored in flash memory has been damaged. For more information, refer to "Restoring Bootloader to Factory State" in the "Armadillo-400 Series Software Manual."

10.1. Boot Mode Selection

Boot mode selection is determined by the configuration of JP2. Each boot mode is detailed in 表10.1「Boot Mode」.

表10.1 Boot Mode

ModeJP2Description
Auto-bootOpenThe Linux kernel is automatically booted after power on.
MaintenanceShortThe Hermit-At command prompt that can be used for changing configuration is started.

10.2. Linux Kernel Boot Option Configuration

Various settings including console and root filesystem settings can be changed by specifying the appropriate Linux kernel boot options. The following details some options typically used with Armadillo.

The setenv function of Hermit-At is used for this configuration. Parameters set with setenv are saved to flash memory and remain in effect even after rebooting.

The clearenv command is used to clear any set parameters.

hermit> clearenv

図10.1 Linux Kernel Boot Option Clear


10.2.1. Console Configuration

To change the output console of the boot log, set the console parameter as shown below.

hermit> setenv console=ttymxc1

図10.2 Console Designation


For the effects on logging for each setting, refer to 表10.2「Console Configuration Effect On Output Destination」.

表10.2 Console Configuration Effect On Output Destination

Console OptionBoot Log Output DestinationMaintenance Mode Prompt Destination[a]
ttymxc1CON3 (Serial Interface 1)CON3 (Serial Interface 1)
ttymxc2CON9 (Serial Interface 2)CON9 (Serial Interface 2)
ttymxc4CON9 (Serial Interface 3)CON9 (Serial Interface 3)
nullNoneCON3 (Serial Interface 1)
Other (tty1 etc)The specified console[b]CON3 (Serial Interface 1)

[a] Effective from next boot.

[b] No log output from bootloader.


[警告]

If the kernel console is set with setenv, this configuration is also carried over to the Hermit-At console.

For example, if the kernel console is set to ttymxc2, the Hermit-At console will also change to ttymxc2 from the next boot.

10.2.2. Specifying Image File To Boot

On the Armadillo-440, in addition to on-board flash memory it is also possible to boot an image file from storage or a tftp server. For more information, refer to "Kernel and Userland Placement" in the "Armadillo-400 Series Software Manual."

10.2.3. Other Boot Options

There are a large number of options available aside from those introduced here. For more information refer to a book on the Linux kernel or the documentation included in the Linux kernel source code (kernel-source/Documentation/kernel-parameters.txt).

10.2.4. Boot Option Configuration Examples

  • To set the console to Serial Interface 2

    hermit> setenv console=ttymxc2

    図10.3 Boot Option Configuration Example 1


  • To set the console to the LCD panel

    hermit> setenv console=tty1

    図10.4 Boot Option Configuration Example 2


10.3. Note On Bootloader Versions

When a bootloader image based on hermit-at v2.0.0 source (loader-armadillo4x0-v2.0.0.bin etc) and a kernel image based on linux-2.6.26-at7 source (linux-a400-1.00.bin.gz etc) are used on Armadillo-440 Rev.C1 or later boards (S/N 100201-2195 or greater), a problem exists where the kernel may not boot. This problem only occurs with the above combination.

On Armadillo-440 Rev.C1 or later boards (S/N 100201-2195 and greater), please use a bootloader image based on hermit-at v2.0.1 or later source (loader-armadillo4x0-v2.0.1.bin or later).[9]



[9] On Armadillo-440 Rev.C1 and later boards, loader-armadillo4x0-v2.0.1.bin or a later version is written to flash memory in the default factory state.