本章では、Armadillo-EVA 1500に搭載された内蔵ストレージ(eMMCおよびSPIフラッシュメモリ)の内容を工場出荷状態に戻す(リカバリする)方法を示します。本章に示す手順を実行するためには、容量が2GByte以上のSDカードが必要です。
Armadillo-EVA 1500の内蔵ストレージのパーティション構成を示します。eMMCのパーティションについては「eMMCのパーティション構成」を、SPIフラッシュメモリのパーティションについては「SPI フラッシュメモリのパーティション構成」を参照してください。
工場出荷状態のeMMCのパーティション構成を次に示します。
表11.1 eMMCのパーティション構成 デバイスファイル名 | サイズ | パーティションタイプ |
---|
/dev/mmcblk0p1 | 約5GByte | 83 (Linux) | /dev/mmcblk0p2 | 2GByte | 83 (Linux) |
JEDEC規格の eMMC 4.3以降では、eMMCデバイスに最大2つのブートパーティションを持つことが出来ます。Armadillo-EVA 1500に搭載しているeMMCには、2つのブートパーティションが用意されています。
表11.2 eMMCのブートパーティション デバイスファイル名 | サイズ |
---|
/dev/mmcblk0boot0 | 4MByte | /dev/mmcblk0boot1 | 4MByte |
表11.1「eMMCのパーティション構成」および表11.2「eMMCのブートパーティション」に示す通り、eMMCを4つの領域に分けて使用しています。それぞれの工場出荷状態での用途を表11.3「eMMC 各領域の用途」に示します。 Armadillo-EVA 1500のプロセッサである R8A77430HA01BG は eMMC からの起動をサポートしないため、ブートパーティションは使用していません。
表11.3 eMMC 各領域の用途 パーティション | 用途 |
---|
パーティション1 (/dev/mmcblk0p1) | Debian GNU/Linuxがインストールされています。/boot/ 直下にはカーネルイメージが格納されています。ext3にフォーマットされています。 | パーティション2 (/dev/mmcblk0p2) | 使用していません。ストレージ用途としてなど、自由に使用することができます。ext3にフォーマットされています。 | ブートパーティション1 (/dev/mmcblk0boot0) | 使用していません。 | ブートパーティション2 (/dev/mmcblk0boot1) | 使用していません。 |
11.1.2. SPI フラッシュメモリのパーティション構成
SPIフラッシュメモリはeMMCとは異なり、自身でパーティションテーブルを保持していません。SPIフラッシュメモリを使用するソフトウェア(IPL、Hermit-At および Linux カーネル)がそれぞれが同じパーティションテーブルを保持することにより、一意的に扱うことができるようになっています。
工場出荷状態のSPI フラッシュメモリのパーティション構成を次に示します。
表11.4 SPI フラッシュメモリのパーティション構成 パーティション名 | アドレス | サイズ |
---|
ipl |
0x00000000
|
0x0000FFFF
| 64kByte | bootloader |
0x00010000
|
0x0008FFFF
| 512kByte | fdt |
0x00090000
|
0x000CFFFF
| 256kByte | firmware |
0x000D0000
|
0x007FFFFF | 7.1875MByte |
表11.4「SPI フラッシュメモリのパーティション構成」に示す通り、SPIフラッシュメモリを4つの領域に分けて使用しています。それぞれの工場出荷状態での用途を次に示します。
表11.5 SPIフラッシュメモリ 各領域の用途 パーティション名 | 用途 |
---|
ipl | IPL ブートローダーイメージがインストールされています。 | bootloader | Hermit-At ブートローダーイメージがインストールされています。 | fdt | Device Tree Blobがインストールされています。Linuxカーネルに渡すためのArmadillo-EVA 1500のデバイス情報を持っています。 | firmware | 有償ミドルウェアなどのファームウェアがインストールされています。 |
eMMCとSPI フラッシュメモリをリカバリする方法を示します。
作業用PCで、リカバリを行うためのSDカードを作成します。このSDカードをリカバリディスクと呼びます。
| |
---|
リカバリディスク作成時のコマンドは、ATDEで実行した場合の例です。Linuxが起動しているArmadillo-EVA 1500でも同様の手順でリカバリディスクを作成することができますがデバイスファイル名など一部異なるため、適宜読み替えてください。
|
11.2.1.1. リカバリディスクの作成に必要なファイルの取得
表11.6「リカバリディスクの作成に必要なファイル」に示す、リカバリディスクの作成に必要なファイルを取得します。
表11.6 リカバリディスクの作成に必要なファイル 名称 | ファイル名 | 説明 |
---|
リカバリシステム本体 | recovery-system_ae1500_[version] .tar.gz | リカバリを実行するプログラムなどが格納されています | リカバリシステム用イメージアーカイブ | recovery-image_ae1500_[version] .tar.gz | 内蔵ストレージに書き込むためのイメージファイルなどが格納されています | Firmwareパーティション用イメージファイル | squashfs-ae1500-firmware-[version] .img | SPIフラッシュメモリのfirmwareパーティションに書き込むためのイメージファイルです |
リカバリシステム本体とリカバリシステム用イメージアーカイブは、Armadilloサイトまたは評価セット付属のDVD-ROMから取得可能です。Firmwareパーティション用イメージファイルは、アットマークテクノ ユーザーズサイトから取得可能です。
| |
---|
アットマークテクノ ユーザーズサイトからファイルを取得するためには、製品本体をご購入の上で「アットマークテクノ ユーザーズサイト」から「購入製品登録」を行う必要があります。
|
11.2.1.5. Firmwareパーティション用イメージファイルの配置
「リカバリディスクの作成に必要なファイルの取得」で取得したFirmwareパーティション用イメージファイルを、「リカバリイメージの展開」でリカバリイメージを展開したSDカードのパーティション1に配置し、設定ファイル(recovery.conf )更新用のシェルスクリプト(update_firmware.sh )を実行します。
作業用PCにSDカードを接続したまま、図11.5「Firmwareイメージファイルの配置」のようにコマンドを実行します。次のコマンド例では、Firmwareパーティション用イメージファイルがホームディレクトリ以下にあることを想定しています。
「リカバリディスクの作成」で作成したリカバリディスクを使用して、リカバリを実行します。Armadillo-EVA 1500に電源を投入する前に次に示す準備を行います。
準備の完了後、SW3を押しながら電源を投入するとリカバリが開始されます。リカバリの進捗具合は、LEDの点灯パターンで確認できます。
表11.7 リカバリ進捗とLEDの対応 LED4 | LED5 | LED6 | LED7 | リカバリ進捗 |
---|
点滅 | 消灯 | 消灯 | 消灯 | eMMCをフォーマット中 | 点滅 | 点灯 | 点灯 | 点灯 | SPI フラッシュメモリにシステムを構築中 | 点灯 | 点滅 | 点灯 | 点灯 | eMMCのパーティション1にシステムを構築中 | 点灯 | 点灯 | 点灯 | 点灯 | リカバリが正常に完了 | 点滅 | 点滅 | 点滅 | 点滅 | リカバリが異常終了 |
全てのLEDが点灯するとリカバリは完了です。全てのLEDが点滅した場合、エラーが発生したことを示しています。手順を見直して再度リカバリを実行してください。リカバリ後、eMMCから起動するには、機能選択スイッチのHermit-At 起動デバイス設定(SW2.7)をONに設定し、SDカードを抜いた後電源を投入してください。
11.3. eMMCのDebian GNU/Linux ルートファイルシステムをリカバリする
eMMCのパーティション1にインストールされているDebian GNU/Linux ルートファイルシステムをリカバリする方法を紹介します。事前に10章SDブートの活用を参照して、Armadillo-EVA 1500がSDブートしている必要があります。
11.3.1. Debian GNU/Linuxのリカバリに必要なファイルの取得
表11.8「Debian GNU/Linuxのリカバリに必要なファイル」に示す、Debian GNU/Linuxのリカバリに必要なファイルを取得します。これらファイルはArmadilloサイト(http://armadillo.atmark-techno.com)または、評価セット付属のDVD-ROMから取得可能です。
表11.8 Debian GNU/Linuxのリカバリに必要なファイル ファイル | 説明 |
---|
debian-wheezy-armhf_ae1500_[version] .tar.gz | Debian GNU/Linux 7のルートファイルシステムアーカイブ | linux-ae1500-[version] .bin | Linuxカーネルイメージファイル |
11.4. SPI フラッシュメモリの特定パーティションをリカバリする
SPI フラッシュメモリの特定パーティションのみをリカバリする方法を紹介します。事前に10章SDブートの活用を参照して、Armadillo-EVA 1500がSDブートしている必要があります。
11.4.1. SPI フラッシュメモリのリカバリに必要なファイルの取得
SPI フラッシュメモリのリカバリに必要なファイルを表11.9「SPI フラッシュメモリのリカバリに必要なファイル」に示します。「SPI フラッシュメモリのパーティション構成」を参照して、リカバリするパーティション用のファイルを取得してください。
表11.9 SPI フラッシュメモリのリカバリに必要なファイル パーテシション名 | ファイル | 説明 |
---|
bootloader | loader-armadilloeva1500-[version] .bin | Hemrit-Atブートローダーイメージファイル | fdt | r8a7791-armadilloeva1500-[version] .dtb.gz | Device Tree Blob | firmware | squashfs-ae1500-firmware-[version] .img | Firmware パーティション用イメージファイル |
Hemrit-AtブートローダーイメージファイルとDevice Tree Blobは、Armadilloサイトまたは評価セット付属のDVD-ROMから取得可能です。Firmwareパーティション用イメージファイルは、アットマークテクノ ユーザーズサイトから取得可能です。
| |
---|
アットマークテクノ ユーザーズサイトからファイルを取得するためには、製品本体をご購入の上で「アットマークテクノ ユーザーズサイト」から「購入製品登録」を行う必要があります。
|
11.4.2. ブートローダーのリカバリを実行する
SPIフラッシュのいくつかのパーティションは、デフォルト状態で書き込みが制限されています。このパーティションへの書き込みを行う場合は、事前に書き込み制限を外す必要があります。
表11.10 パーティションのデフォルト状態での書き込み制限の有無と対応するMTDノード パーティション | 書き込み制限 | MTDクラスディレクトリ | MTDブロックデバイスファイル |
---|
bootloader | あり | /sys/class/mtd/mtd1 | /dev/mtdblock1 | fdt | なし | /sys/class/mtd/mtd2 | /dev/mtdblock2 | firmware | あり | /sys/class/mtd/mtd3 | /dev/mtdblock3 |
次の例では、「SPI フラッシュメモリのリカバリに必要なファイルの取得」で取得したHemrit-Atブートローダーイメージファイルをカレントディレクトリに以下に配置し、bootloaderパーティションをリカバリしています。
| |
|