概要 †2010/09/06 bc10向けu-bootについて、情報をまとめてあります。 u-bootのビルド †2010/12/21 開発環境 †bc10向けtoolchainを準備します。
環境変数の設定 †OpenEmbedded toolchain †OpenEmbeddedのtoolchainを利用するには、あらかじめOpenEmbedded開発環境をインストールしておく必要があります。 export PATH=${WORK_DIR}/OE/angstrom-dev/cross/armv7a/bin:${PATH}
export ARCH=arm
export CROSS_COMPILE=arm-angstrom-linux-gnueabi-
rowboat toolchain †rowboatのtoolchainを利用するには、あらかじめrowboat開発環境をインストールしておく必要があります。 export PATH=${WORK_DIR}/rowboat-eclair-dsp/prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin:${PATH}
export ARCH=arm
export CROSS_COMPILE=arm-eabi-
ソースコードの入手 †gitリポジトリからソースコードを入手します。 git clone git://gitorious.org/bc10/u-boot-bc10.git u-boot-bc10 ビルド †OpenEmbedded toolchainを使用してクロスビルドします。 cd u-boot-bc10 make mrproper make omap3_bc10_config make ビルドに成功するとu-boot.binが生成されます。 ソースコードのアップデート †機能の追加や修正などでソースコードが更新された場合は、更新分のみを取得するだけでかまいません。 cd u-boot-bc10/ git pull ソースコードをアップデートした後は、リビルドしてu-boot.binを置き換えてください。 ソースコードリポジトリについて †2010/12/21 u-boot-bc10のソースコードはGitoriousで管理しています。
ブランチ †u-boot-bc10リポジトリには、以下の3つのブランチがあります。
bc10で動作するu-boot.binをビルドするには、masterブランチを使用してください。 派生元 †u-boot-bc10のソースコードは、DENXのU-Bootリポジトリからcloneし、bc10向けに改造したものです。
詳細解説 †2010/12/16 U-Bootの基本動作 †U-Bootの基本的な動作と、動作のカスタマイズ方法について説明します。 起動シーケンス †U-Bootは起動すると、数秒の待機のあと、自動的にbootコマンドを実行します。 +------+ +------+ 入力なし +------------------+
| 起動 |------>>| 待機 |----------->>| bootコマンド実行 |
+------+ +------+ +------------------+
|
| 入力あり +--------------------+
+-------------->>| コマンドライン制御 |
+--------------------+
bootコマンドの動作 †bootコマンドは、環境変数bootcmdに設定された内容を実行します。 if mmc init; then
if run loadbootscript; then
run bootscript;
else
if run loaduimage; then
run mmcboot;
else
run nandboot;
fi;
fi;
else
run nandboot;
fi
mmcコマンドはMicroSDを操作するためのコマンドです。 コマンドラインによる制御 †Hushのプロンプトが表示され、bashなどの一般的なシェル環境と同じようにコマンドを実行することができます。 # ? 参考 †2010/07/05 |