bc10

概要

2010/12/22

bc10向けLinux kernel-2.6.32について、情報をまとめてあります。
このKernelはrowboatプロジェクトのKernelをベースにして、bc10固有のデバイスドライバなどが追加されたものです。
bc10のブートプロセスやKernelイメージの配置方法についての情報はbc10/bootingを参照してください。

kernel-2.6.32のビルド

2010/12/22

開発環境

bc10向けtoolchainを準備します。
以下のtoolchainでビルドを確認しています。

環境変数の設定

OpenEmbedded toolchain

OpenEmbeddedのtoolchainを利用するには、あらかじめOpenEmbedded開発環境をインストールしておく必要があります。
OpenEmbedded開発環境のインストールについては、bc10/OpenEmbedded Linuxを参照してください。
toolchainを使用するために、環境変数を以下のように設定します。

export PATH=${WORK_DIR}/OE/angstrom-dev/cross/armv7a/bin:${PATH}
export ARCH=arm
export CROSS_COMPILE=arm-angstrom-linux-gnueabi-

ソースコードの入手

gitリポジトリからソースコードを入手します。

git clone git://gitorious.org/~bc-dev/rowboat/bc10-rowboat-kernel.git bc10-rowboat-kernel

ブランチの切り替え

bc10向けのブランチに切り替えます。

cd bc10-rowboat-kernel/
git checkout -t -b bc10-2.6.32 origin/bc10-2.6.32

ビルド

OpenEmbedded toolchainを使用してクロスビルドします。

make omap3_bc10_defconfig
make uImage
make modules

ビルドに成功するとuImage(kernelイメージファイル)とモジュールファイルが、それぞれ以下の場所に生成されます。

ソースコードのアップデート

機能の追加や修正などでソースコードが更新された場合は、更新分のみを取得するだけでかまいません。

cd bc10-rowboat-kernel/
git checkout bc10-2.6.32
git pull

ソースコードをアップデートした後は、リビルドしてuImageなどを置き換えてください。

ソースコードリポジトリについて

2010/12/22

bc10-rowboat-kernelのソースコードはGitoriousで管理しています。

ブランチ

bc10-rowboat-kernelリポジトリには、多数のブランチがあります。
その中でもbc10向けのブランチとして、以下の3つがあります。

bc10で動作するuImageをビルドするには、bc10-2.6.32ブランチを使用してください。

bc10-2.6.32-developブランチは機能追加時の試験などのために利用されています。
常に最新の実装がなされていますが、うまく動作しない場合もあるので、通常はbc10-2.6.32ブランチを使用してください。

bc10-2.6.32-buildブランチはbc10のMACH_TYPE番号が公式に追加されるまで、一時的なビルド用ブランチとして存在していました。
現在は公式にbc10のMACH_TYPEがサポートされたので、bc10-2.6.32-buildブランチの更新は停止しています。
将来、削除される可能性がありますので、bc10-2.6.32-buildブランチは使用しないでください。
この問題の詳細については、カーネルソースに含まれる Documentation/arm/README を参照してください。

派生元

bc10-rowboat-kernelのソースコードは、rowboat kernelリポジトリをcloneし、bc10向けに改造されたものです。

詳細解説

2010/12/22

Kernelの起動時オプション

Kernelの起動時に設定可能なオプションについて説明します。


BC::labsへの質問は、bc9-dev @ googlegroups.com までお願い致します。
トップ   新規 一覧 単語検索 最終更新   最終更新のRSS