Hermit-At は、アットマークテクノ製品に採用されている高機能ダウンローダー兼ブートローダーです。Armadillo を保守モードで起動すると、Hermit-At ブートローダーのプロンプトが表示されます。プロンプトからコマンドを入力することにより、フラッシュメモリの書き換えや、Linux カーネル起動オプションの設定等 Hermit-At ブートローダーの様々な機能を使用することができます。ここでは、代表的な機能について説明します。
フラッシュメモリと DRAM のメモリマップを表示するコマンドです。
メモリのある区間の md5sum 値を計算して表示するコマンドです。
bootloader リージョンの先頭から 1024 Bytes の区間の md5sum 値を計算して表示するには、図A.10「md5sum の使用例」のようにコマンドを実行します。
Linux カーネル起動オプションを設定するコマンドです。setenv で設定されたパラメータは、Linux カーネルブート時にカーネルに渡されます。clearenv を実行すると、設定がクリアされます。このパラメータは、フラッシュメモリに保存され再起動後も設定は有効となります。
A.7.1. setenv/clearenv 使用例
Linux 起動オプションの例を、表A.1「よく使用されるLinux起動オプション」に示します。この他のオプションについては、linux-2.6/Documentation/kernel-parameters.txt
を参照してください。
表A.1 よく使用されるLinux起動オプション
オプション | 説明 |
---|
console | カーネルコンソールとして使用するデバイスを指示します。 |
root | ルートファイルシステム関連の設定を指示します。 |
rootdelay | ルートファイルシステムをマウントする前に指定秒間待機します。 |
rootwait | ルートファイルシステムがアクセス可能になるまで待機します。 |
noinitrd | カーネルが起動した後に initrd データがどうなるのかを指示します。 |
nfsroot | NFSを使用する場合に、ルートファイルシステムの場所やNFSオプションを指示します。 |
| |
---|
console オプションに ttymxc1,2,4 を指定すると、次回起動時から Hermit-At が使用するシリアルインターフェースも変更されます。 |
Linux カーネルを格納しているブートデバイスを指定するコマンドです。この設定はフラッシュメモリに保存され、再起動後も設定は有効となります。
指定したアドレスのデータを読み込む、または、変更することができるモードに移行するコマンドです。
表A.2 frob コマンド
frobコマンド | 説明 |
---|
peek [addr] | 指定されたアドレスから32bitのデータを読み出します。 |
peek16 [addr] | 指定されたアドレスから16bitのデータを読み出します。 |
peek8 [addr] | 指定されたアドレスから8bitのデータを読み出します。 |
poke [addr] [value] | 指定されたアドレスに32bitのデータを書き込みます。 |
poke16 [addr] [value] | 指定されたアドレスに16bitのデータを書き込みます。 |
poke8 [addr] [value] | 指定されたアドレスに8bitのデータを書き込みます。 |
TFTP プロトコルを使用して TFTP サーバーからファイルをダウンロードし、フラッシュメモリの書き換えを行うコマンドです。
表A.3 tftpdl オプション
オプション | 説明 |
---|
--bootloader=filepath | bootloader リージョンに書き込むファイルを filepath で指定します。 |
--kernel=filepath | kernel リージョンに書き込むファイルを filepath で指定します。 |
--userland=filepath | userland リージョンに書き込むファイルを filepath で指定します。 |
--fake | ファイルのダウンロードだけを行い、フラッシュメモリには書き込まないよう指定します。 |
TFTP プロトコルを使用して TFTP サーバーからファイルをダウンロードし、RAM に展開してカーネルをブートするコマンドです。tftpdl と異なり、フラッシュメモリの書き換えを行いません。また、setbootdevice で tftp を指定したときと異なり、設定は保存されません。
オプションには、表A.3「tftpdl オプション」と同じものを指定することができます。--fake オプションを指定したときは、ファイルのダウンロードだけを行い、カーネルのブートを行いません。
|
カーネルおよびユーザーランドのイメージ RAM 上に展開しています。
|
|
カーネルがブートされ、カーネルの起動ログが表示されます。
|
setbootdevice で指定されたブートデバイスから Linux カーネルをブートするコマンドです。
|
カーネルおよびユーザーランドのイメージ RAM 上に展開しています。
|
|
setenv でカーネル起動オプションを設定している場合、ここで表示されます。ここまでは Hermit-At が表示しています。
|
|
カーネルがブートされ、カーネルの起動ログが表示されます。
|
Armadilllo-440 の基板リビジョン Rev.C1 以降 (S/N 100201-2195以降) に hermit-at v2.0.0 をベースに生成したブートローダーイメージ(loader-armadillo4x0-v2.0.0.bin等)及び linux-2.6.26-at7 をベースに生成したカーネルイメージ(linux-a400-1.00.bin.gz) を書き込むと、カーネルが起動しない不具合があります。この問題は、Rev.C1以降の基板、hermit-at v2.0.0 及び linux-2.6.26-at7 という組み合わせのみで発生し、それ以外の組み合わせでは発生しません。
Armadilllo-440 の基板リビジョン Rev.C1 以降 (S/N 100201-2195以降) には、hermit-at v2.0.1 以降をベースに生成したブートローダーイメージ(loader-armadillo4x0-v2.0.1.bin以降)を使用してください。[]