突然消失するかもしれないブログ

”とつきえブログ”

BeagleBoard:(7)Debianインストール1

ようやくBeagleBoard Rev C4でDebianが動くようになったのでメモ。

まずはDebianのインストール手順に関する参考サイトと注意すべきポイントについて。

○USBシリアル変換アダプタについて

I-O DATAのUSB-RSAQ5を使用しているのですが、MacBookに接続した場合、バスパワーで使用すると動作が不安定なようです。セルフパワーのUSB-HUBに接続して使用した方がよいと思われます。

また、Mac OS XのC-KermitでUSB-RSAQ5を使用すると、Mac OS Xを再起動しない限り使えなくなるという症状が多発したため、VMware Fusion上のDebian 5からkermitを使用するようにしています。Debian 5でkermitを使用した場合、比較的安定してUSBシリアル変換アダプタが使用できています。

○BeagleBoardへのDebianのインストール方法(英語)

BeagleBoardDebian – eLinux.org

こちらのサイトの手順にしたがって、BeagleBoardにDebianをインストールします。

恐らく一番簡単な方法は、ネットワーク経由でDebianをインストールするnetinstallです。

ですが、インストール時に、USB-Ethernetアダプタが必要になります。

○BeagleBoardへのDebianのインストール方法(日本語)

beagleboard日記 debian

qemuを使ったインストール方法、netinstallを使ったインストール方法の2種類が試されていますが、無難というか成功した方法は、netinstallのようです。

○BeagleBoardのRTC(時計)について

beagleboard日記 rtc

BeagleBoardでは、バッテリーバックアップされているRTCがないため、BeagleBoardの電源をOFFにしてしまうとRTCに設定された時計が初期化されてしまいます。(BeagleBoard Rev C3ではオプションでバッテリーバックアップされたRTCを別途購入することもできます。)

そのため、Linuxが起動したら、何らかの方法で毎回、時計を設定する必要があります。

Debianにせよ、Ubuntuにせよ、Angstromにせよ、BeagleBoardでLinuxを使用するためには、Linuxカーネルイメージが必要になりますが、BeagleBoardDebian – eLinux.orgで書かれている、以下のLinuxカーネルイメージは、BeagleBoardのRTCを認識しません。(恐らく、Linuxカーネルのソースコードに)

http://rcn-ee.net/deb/kernel/CC-beagle-v2.6.29-58cf2f1-oer44.1.uImage

そこで、BeagleBoardのRTCを認識できる2.6.28系を使用します。

http://rcn-ee.net/deb/kernel/CC-v2.6.28.9-79d042a-oer17

LinuxカーネルがBeagleBoardのRTCを正常に認識できているかどうかは、dmesgのログ中で以下のメッセージが出力されていることで判断できます。

twl4030_rtc twl4030_rtc: rtc core: registered twl4030_rtc as rtc0
twl4030_rtc twl4030_rtc: setting system clock to 2010-04-11 01:43:55 UTC (1270950235)

http://rcn-ee.net/deb/kernel/

Index of /deb/kernel

○BeagleBoardのnandに書き込まれているu-bootについて

u-bootがext2のファイルシステムからLinuxカーネルイメージを読み込んで起動するには、u-bootがCFG_CMD_EXT2をつけてコンパイルされている必要があります。

ですが、BeagleBoard Rev C4のnandに書き込まれているu-bootは、CFG_CMD_EXT2をつけてコンパイルされていないらしく、FAT32(vfat)でフォーマットされたパーティションからしかLinuxカーネルイメージを読み込んで起動することができないようです。

○BeagleBoardの起動手順について

BeagleBoardにはOMAP3530が搭載されており、OMAP3530の1stローダーから、2ndローダーを読み込んで、ステップを追ってLinuxカーネルを起動します。

(1)(ユーザーボタンを押さないで起動する場合)OMAP3530の1stローダ → nand上の2ndローダ(x-loader=MLO) → nand上のu-boot

(2)(ユーザボタンを押しながら起動する場合)OMAP3530の1stローダ → SDカード上の2ndローダ(x-loader=MLO) → SDカード上のu-boot

玄箱Proでは、(1)の構成になっていますので、u-bootの設定を書き換えることで、(1)の構成で、nand、あるいは、ハードディスクからLinuxカーネルイメージを読み込んで起動することができます。

BeagleBoardも同様で、(1)の構成で、u-bootの設定を書き換えることで、ユーザボタンを押しながら起動しなくても、特別な手順を踏んでSDカード上に起動イメージを書き込むことなく、SDカードからLinuxカーネルイメージを読み込んで起動することができます。

尚、(2)の構成で、SDカード上の2ndローダ(x-loader=MLO)を読み込んで起動させるには、以下のサイトの手順通り、特別な手順を踏んでSDカード上に起動イメージを書き込む必要があります。

LinuxBootDiskFormat – beagleboard – How to create a dual-partition card for BeagleBoard to boot Linux from first partition and have root file system at second partition. – Project Hosting on Google Code

○OMAP3530の動作クロックについて

デフォルトでは500MHz動作のようですが、Rev C4から720MHzでも動作するようになりました。BeagleBoard Rev C4のnand上に書き込まれているu-bootがどちらの動作クロックで動作するように初期化しているか不明ですが、もし、500MHzで動作していることが明らかになった場合は、u-bootのソースコードを書き換えて動作クロックを変更する必要があるようです。

Beagleboard 720Mhz 動作:Pyohn:So-netブログ

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。