4.2.9 SD カード(MMC)コマンド
SD カードのコマンドは初期化とデバイス情報表示、読み取り/書き込み、ファイルシステムコマンドで実現できる。
使い方はUSBと類似で、全てのコマンドを使用する前、 SDカードを挿し込み、mmc init、MMC コントローラー初期化、デバイス情報取得。
mini2440に1GB SD カードを挿し込み:
4.2.10 FAT ファイルシステムコマンド
fatinfo:ファイルシステムの関連情報表示
フォーマット:fatinfo <interface> <dev[:part]>
Interface:インタフェース、例 usb、mmc;
dev:デバイスコードナンバー、例 0、1……;
part:ストレージデバイス中のパーティション、例 1、2……。
fatload: FAT32 ファイルシステムからバイナリファイルを SDRAMに読み取る。
フォーマット:fatload <interface> <dev[:part]> <addr> <filename> [bytes]
Interface、dev と part 上記と同じ;
addr: SDRAMに書き込む アドレス;
filename:ストレージデバイス中のファイル名;
bytes:ストレージデバイスから読み取ったファイルのサイズ設定、指定しなくても良い;
fatls: FAT32 ファイルシステム中ディレクトリ内のファイルをプリントアウト。
フォーマット:fatls <interface> <dev[:part]> [directory]
Interface、dev と part 上記と同じ;
directoryr:検索するディレクトリ、指定しなくても良い、デフォルトは/。
上記のコマンドは USBメモリまたはSD カードと同時に使用する。モバイルメモリのFAT32 パーティションを読み取る。
使用例:
4.2.11 システムブートコマンド
bootと bootdは ENV゛bootcmd゛で指定されるコマンドを実行する。
bootm コマンドはSDRAM 中、U-bootのmkimage ツールで処理されたカーネルイメージを起動する。
フォーマット:bootm [addr [arg ...]]
addr :カーネルイメージのある SDRAM 中のアドレス
Linux カーネルを起動する時、'arg' の initrd のアドレス。
例:
4.2.13 他のコマンド
run - ENV 定義のコマンドスクリプトを実行する。
使用例:
reset - CPU再起動
他のコマンド、゛help゛説明を検索出来る。
4.3 ダウンロードとプログラミング
U-boot でイメージファイルをボードの Flashにプログラミング手順は下記の通り:
(1)ネットワーク、シリアル、USBメモリ、SD カード等を通じて、ファイルをSDRAMに伝送する;
(2)Nand Flash または Nor Flash 関連の読み取り/書き込みコマンドを使用し、 SDRAM 中のデータを Flashにプログラミングする。
SD カードと USBメモリから U-bootを更新するには、SD カードと USBメモリ中のFAT32 ファイルシステムと u-boot.bin ファイルが必要とされる。
4.3.1 SD カードでNand Flashプログラミング:
4.3.2 USBメモリでNor Flashプログラミング:
4.3.3 TFTP サービスで Nand Flashプログラミング:
4.3.4 NFS サービスでNand Flashプログラミング:
4.4 カーネルブート
カーネルのブート手順:
(1) U-boot の mkimage ツールでカーネルイメージ zImageを作成する。
(2)ネットワーク、シリアル、USBメモリ、SD カード等でカーネルイメージをSDRAM の指定位置に伝送( 0x30008000)
(3)゛bootm゛等カーネルブートコマンドでカーネル起動。
4.4.1 SD カードでカーネルブート:
SD カード中 FAT32 ファイルシステム、作成済みのカーネルイメージファイル。
4.4.2 TFTP サービスでカーネルブート
4.4.3 NFS サービスでカーネルブート:
4.4.4 Nand Flashで カーネルブート:
作成済みのカーネルイメージファイルをNand Flash の指定位置にプログラミング(カーネルパーティションテーブルで決められる)。その後、起動時 Nand Flash の読み取りコマンドでカーネルイメージファイルをメモリーの指定位置に読み取り(カーネルイメージ作成時の-a パラメータで決められる)、次は bootm コマンドでカーネルブートする。
カーネルイメージファイルのプログラミング:
カーネルブート:
第5章 U-boot ソースコード分析
今回移植に使用する U-boot-2009.11。
ソースコードディレクトリ構造、とコードの実行順番でソースコードを分析する。
5.1 U-boot ソースコード全体フレーム枠
ソースコード解凍後、ファイルとフォルダは下記の通り:
赤字は移植する時の重要ファイル/フォルダである。
5.2 Uboot コード実行プロセス( S3C24x0 例)
リンクスクリプトファイル u-boot.lds でコードの開始アドレス:
プログラムの入口ポイントは_start、ロケーションは cpu/arm920t/start.S(即 u-boot 起動の第一段階)。
start.Sを分析する。(データマニュアルのソースコードを参照)
----------続く