第9章 ブートモードとブートローダーの機能

この章では、Armadillo-400 シリーズのブートモードと、標準のブートローダーである「Hermit-At」の起動設定機能について説明します。

Armadillo-400 シリーズは、JP1の設定によってオンボードフラッシュメモリブートモードか、UARTブートモードを選択することができます。オンボードフラッシュメモリブートモードでは、フラッシュメモリのブートローダー領域に配置されたブートローダーが起動されます。UARTブートモードは、フラッシュメモリのブートローダーが壊れた場合など、システム復旧のために使用します。詳しくは、「Armadillo-400 シリーズソフトウェアマニュアル」の 「ブートローダーを出荷状態に戻す」を参照してください。

9.1. ブートモードの選択

オンボードフラッシュメモリブートモードでは、フラッシュメモリのブートローダー領域に配置されたブートローダーが起動されます。

標準のブートローダーである Hermit-At では、JP2 の設定によって自動でカーネルをブートするオートブートモードか、各種設定を行うための保守モードを選択することができます。

各ブートモードは表9.1「ブートモード」のようになります。

表9.1 ブートモード

モードJP2説明
オートブートオープン電源投入後、自動的にLinuxカーネルを起動させます。
保守ショート各種設定が可能なHermit-Atコマンドプロンプトが起動します。

9.2. Linuxカーネル起動オプションの設定

Linuxカーネル起動オプションを変更することで、コンソールや、ルートファイルシステム等の様々な種類の設定を変更することができます。ここでは、Armadilloに関係のある代表的なオプションについて説明します。

これらの設定は、Hermit-Atのsetenv機能を使用します。setenvで設定されたパラメータはフラッシュメモリに保存され再起動後にも設定が反映されます。

設定されたパラメータをクリアするには、clearenvを使用します。

hermit> clearenv

図9.1 Linuxカーネル起動オプションのクリア


[ティップ]Hermit-ATのモード

Hermit-ATには、2つのモードがあります。コマンドプロンプトを表示して対話的に動作する「対話モード」と、Hermit-ATダウンローダと通信するための「バッチモード」です。バッチモードではコマンドプロンプトの表示や入力した文字の表示を行いませんが、コマンドの実行は可能です。

起動直後のHermit-ATは必ず対話モードになっています。対話モードからバッチモードに移行するにはチルダ「~」を、バッチモードから対話モードに移行するにはエクスクラメーションマーク「!」を入力します。

Hermit-ATダウンローダと通信を行った場合は、バッチモードに移行します。これは通信を確立するためにHermit-ATダウンローダがチルダを送信するためです。

対話モードからバッチモードに移行したり、バッチモード中に入力したコマンドが成功した場合などは以下のように表示されます。

+OK

9.2.1. コンソールの設定

起動ログの出力コンソールを変更するには、下記のようにconsoleパラメータにコンソール指定子を設定します。

hermit> setenv console=ttymxc1,115200

図9.2 コンソールの指定


設定によるログの出力先は、表9.2「コンソール指定に伴う出力先」のようになります。

表9.2 コンソール指定に伴う出力先

コンソール指定子起動ログ出力先保守モードプロンプト出力先[a]
ttymxc1CON3(シリアルインターフェース1)CON3(シリアルインターフェース1)
ttymxc2CON9(シリアルインターフェース2)CON9(シリアルインターフェース2)
ttymxc4CON9(シリアルインターフェース3)CON9(シリアルインターフェース3)
noneなしCON3(シリアルインターフェース1)
その他(tty1等)指定するコンソール[b]CON3(シリアルインターフェース1)

[a] 次回起動時から有効になります。

[b] ブートローダーのログは出力されません。


[警告]

setenvでカーネルのコンソールを指定すると、その設定はHermit-Atのコンソールにも反映されます。

例として、カーネルコンソールをttymxc2に指定した場合、次回起動時からはHermit-Atのコンソールもttymxc2に変更されます。

9.2.2. 起動するイメージファイルの指定

Armadillo-400シリーズでは起動するイメージファイルを、オンボードフラッシュメモリの他にストレージやtftpサーバーに配置することができます。詳しくは、「Armadillo-400 シリーズ ソフトウェアマニュアル」の「カーネル/ユーザーランドの配置」を参照してください。

9.2.3. その他の起動オプション

本書で紹介したオプション以外にも様々なオプションがあります。詳しくは、Linuxの解説書や、Linuxカーネルのソースコードに含まれるドキュメント(kernel-source/Documentation/kernel-parameters.txt)を参照してください。

9.2.4. 起動オプションの設定例

  • コンソールをシリアルインターフェース2にする場合

    hermit> setenv console=ttymxc2,115200

    図9.3 起動オプション設定例1