ブログ

Armadillo-400シリーズ:ブートローダが起動しない状態からイメージを書き換える一連の手順

at_kazutaka.bito
2018年7月4日 14時58分

Armadillo-400シリーズで、ブートローダが起動しない状態からイメージを書き換える一連の手順をマニュアル(※)から抜粋して簡潔にしました。

※)Armadillo-400 シリーズソフトウェアマニュアル
6.4. tftpdl を使用してフラッシュメモリを書き換える
6.6. ブートローダーを出荷状態に戻す

準備

Windows用のブートローダ書き換えツール
Hermit-At WIN32(Linux-2.6.26用:現時点の最新版v2.5.0)
Hermit-At WIN32(Linux-3.14用:現時点の最新版v3.11.0) をPCにダウンロードして解凍しておきます。

備考1)Windows用のブートローダ書き換えツールは、今後アップデートがあった場合は、最新版を使用することを推奨します。

備考2)以下の説明では、例として、書き込むイメージファイル名を標準イメージ(Linux-2.6.26用)
 ブートローダ:loader-armadillo4x0-v2.4.0.bin
 カーネル:linux-a400-1.19.bin.gz
 ユーザーランド:romfs-a440-1.13.img.gz
で表記しています。

手順

1.ブートローダの書き換え

Armadillo-440とPCのコンソール(シリアル)を接続します。
(TeraTerm等のシリアル通信ソフトは閉じておきます。)

Armadillo-440のJP1をショートの状態(UARTブートモード)にします。

Hermit-At WIN32を起動します。

Serial Portの箇所は、使用しているCOMを指定ます。

Shoehornタグ
 →Target:armadillo-4x0を選択
 →実行
(小ウィンドウ(shoehorn)が開きます。)

Armadillo-440の電源をON
(小ウィンドウ(shoehorn)が閉じるまで待ちます。)

Eraseタグ
 →Region:bootloaderを選択
 →ForceLocked:チェックを入れる
 →実行
(小ウィンドウ(erase)が開いて、閉じるまで待ちます。)

Downloadタグ
 →Image:loader-armadillo4x0-v2.4.0.binファイルを選択
 →Region:bootloaderを選択
 →ForceLocked:チェックを入れる
 →実行
(小ウィンドウ(download)が開いて、閉じるまで待ちます。)

Hermit-At WIN32を終了します。

Armadillo-440の電源をOFFします。

2.カーネルとユーザーランドイメージの書き換え

Armadillo-440とPCをLANケーブルでネットワークに接続します。

ATDEで、/var/lib/tftpbootに、カーネルとユーザーランドイメージを置いておきます。

ATDEで、
sudo ifconfig
を実行して、eth0のIPアドレスを確認しておきます。
(以下では、192.168.11.120の場合で説明します。)

Armadillo-440のJP1をオープン、JP2をショートの状態(保守モード)にします。

シリアル通信ソフト(TeraTerm等)で、Armadillo-440に接続しているポートのコンソールを開きます。

Armadillo-440の電源をONします。
Armadillo-440のコンソールに

Hermit-At v2.4.0 (armadillo4x0) compiled at 07:42:06, Mar 30 2018
hermit>

のように、ブートローダーのプロンプトが表示されます。
(以下の説明では、Armadillo-440のコンソールで実行するコマンドを表記しています。)

ブートローダの環境変数を初期化します。ブートデバイスをROMにします。

clearenv
setbootdevice flash

ATDEの/var/lib/tftpbootに置いたカーネル、ユーザーランドイメージをtftpdlコマンドで書き込みます。
ここでは例として、
 ATDEのIPアドレス:192.168.11.120(上記の手順で、sudo ifconfigで確認した値)
に対して、
 Armadillo-440のIPアドレス:192.168.11.xx(xxの部分は、他の装置と重ならない値(ここでは、36))
の場合です。

tftpdl 192.168.11.36 192.168.11.120 --kernel=linux-a400-1.19.bin.gz
tftpdl 192.168.11.36 192.168.11.120 --userland=romfs-a440-1.13.img.gz

bootコマンドを実行して、起動します。

boot

起動したらログインして、

flatfsd -w

コマンドを実行して、config領域をdefaultに書き換えます。

Armadillo-440の電源をOFFにして、JP1、JP2をオープンの状態(オートブートモード)にします。

以上で、標準イメージへの書き換えは終了です。