Hermitとは、Armadilloブランドの製品で採用されている、ブートローダー兼ダウンローダーの総称です。
Hermitのパッケージの中には、開発PC上で動く hermitコマンドとサポートされている各ボード専用のブートローダファイルが入っています。
ブートローダーとしてのHermit
ブートローダーとしての Hermitは、Armadilloに電源が投入された後最初に動くソフトウェアです。フラッシュメモリ内に書き込まれていて、
- ハードウェアの初期化
- OS(Linux Kernelやユーザーランド)の起動準備
- 設定による起動方法の選択
などを行ないます。ジャンパの設定によって起動モードを変更しているのは、このHermitです。
ダウンローダーとしてのHermit
Hermitの機能で一番使われるのが、ダウンローダーとしての機能です。データを開発用PCから Armadilloへダウンロードし、フラッシュメモリなどに書き込みます。
書き込む方法は2種類あります。
- シリアルポートを使う方法
- TFTPと呼ばれるネットワークを使う方法
の2種類あります。シリアルポートを使う場合は、PC上で hermitコマンドを使って強調動作させる必要があります。TFTPを使う場合は開発用PCで TFTPサーバが動作している必要があります。
バージョンの確認方法
Armadilloに書き込まれている Hermitのバージョン
Armadilloに書き込まれているHermitのバージョンは、起動時に表示されます。質問時にHermitのバージョンを聞かれた場合は、この方法で確認してください。シリアル通信ソフトウェアを起動しておいて、Armadilloに電源を入れるとログが表示されます。ブートローダモードにしておくと起動ログに流されず、簡単に確認できます。たとえば、Armadillo-210では、以下のような感じです
Hermit-At v1.1.19 (Armadillo-210C/eth) compiled at 17:16:02, Oct 8 2008
ダウンローダとしてのHermitのバージョン
ATDEにインストールされているダウンローダ側のバージョンは、「--version」オプションを付けることで、バージョンを表示することができます。
[ATDE ~]$ hermit --version Hermit-At v1.1.9
Windows版のHermitのバージョン
Windows版の Hermitでは、「Version」ボダンを押してください。
その他の機能
Hermitには他にもいろいろと便利な機能が含まれています。
- frob: メモリを 8bit, 16bit, 32bitで読み書きする
- setenv/clearenv: Linuxの起動パラメータの設定
- erase: 指定されたフラッシュメモリのアドレスにあるブロックを消去
- mac: MACアドレスの表示
- memmap: メモリマップの表示
- help: ヘルプの表示
現在Armadilloで採用されているHermitの正式名称は Hermit-Atです。ソースコードはこちらからダウンロードできます。元々はEDB7211用に開発されていたものをアットマークテクノが Armadilloに移植していました。ところが、Armadilloの対応を続けているうちに、1)元々のHermitからの変更が多くなりすぎてしまったこと、2)Upstreamとのマージができなかったこともあり、現在ではHermit-Atと名前を変更しています。