ブートローダの更新
OpenBlocks AX3では、ファームウェアの読み込み、実行を行うためのブートローダとして、U-Bootを採用しています。ここでは、このU-Bootの更新手順の解説を行います。
必要なツールのインストール
# apt-get update && apt-get install -y mtd-utils
新U-Bootバイナリ及び更新スクリプトのダウンロード
# wget ftp://ftp.plathome.co.jp/pub/OBSAX3/uboot/2.0.7/update_ax3_uboot.sh # wget ftp://ftp.plathome.co.jp/pub/OBSAX3/uboot/2.0.7/u-boot.obsax3.bin # wget ftp://ftp.plathome.co.jp/pub/OBSAX3/uboot/2.0.7/tp.obsax3.bin # wget ftp://ftp.plathome.co.jp/pub/OBSAX3/uboot/2.0.7/MD5SUM # md5sum -c MD5SUM tp.obsax3.bin: OK u-boot.obsax3.bin: OK update_ax3_uboot.sh: OK
更新の実行
# chmod a+x update_ax3_uboot.sh # ./update_ax3_uboot.sh Update u-boot to 2.0.7 (previous version: 1.1.1) erase u-boot env...Erase Total 2 Units Performing Flash Erase of length 131072 at offset 0x20000 done done. update u-boot...done. update test program...done. Please reboot the OpenBlocks AX3.
再起動
# reboot
起動時に次の表示があることを確認します (シリアルコンソールにのみ表示)
U-Boot 2011.12 (Aug 26 2013 - 13:08:34) Plat'Home version: 2.0.7 (Marvell version: 2012_Q4.0p17)
またLinuxのコマンドラインからは次のように確認できます。
# grep -a 'version:' /dev/mtd0 Plat'Home version: 2.0.7 (Marvell version: 2012_Q4.0p17)
出荷済みバージョンと主な変更履歴
2012/07/27: 1.1.1
・初期リリース
2012/11/16: 1.1.2
* mini PCIeのUSB機能を有効化
2012/12/05: 1.1.3
* DIPSW2(TFTPアップデート)が動作しない問題を修正
2013/03/14: 2.0.3
* ベースとするU-Bootバージョンの変更
* DIMM利用の改善
* テストプログラムの微修正
2013/03/25: 2.0.4
* DIMM利用の改善
2013/09/03: 2.0.7
* DIPSW4(コンソール出力の無効化)でキー入力を無視するように修正
* カーネルパラメータvmallocの見直し
* CPUコア電圧を1.1V→1.05Vに変更(CPU Rev.A0のみ) ※ 後述のCPUリビジョン確認方法を参照
* 各MACアドレスをCPUレジスタに設定(DeviceTreeを利用するlinux 3.8.x以降への対応)
・初期リリース
2012/11/16: 1.1.2
* mini PCIeのUSB機能を有効化
2012/12/05: 1.1.3
* DIPSW2(TFTPアップデート)が動作しない問題を修正
2013/03/14: 2.0.3
* ベースとするU-Bootバージョンの変更
* DIMM利用の改善
* テストプログラムの微修正
2013/03/25: 2.0.4
* DIMM利用の改善
2013/09/03: 2.0.7
* DIPSW4(コンソール出力の無効化)でキー入力を無視するように修正
* カーネルパラメータvmallocの見直し
* CPUコア電圧を1.1V→1.05Vに変更(CPU Rev.A0のみ) ※ 後述のCPUリビジョン確認方法を参照
* 各MACアドレスをCPUレジスタに設定(DeviceTreeを利用するlinux 3.8.x以降への対応)
CPUリビジョン確認方法
A0の場合
# dmesg | grep MV78260 Marvell Armada-XP DB-78460-BP rev 2.0 Board - Soc: MV78260 A0 LE
B0の場合
# dmesg | grep MV78260 Marvell Armada-XP DB-78460-BP rev 2.0 Board - Soc: MV78260 B0 LE