SheevaPlugを導入してみた(その1)
OpenBlockS266が今まで稼動してたけど、USBが使えるやつが欲しくなったのでSheevaPlug Dev Kitを買ってみた。実際に買ったのは12月なのだが時間が無くて放置してたら、今は本家ではGuruPlugなんてのが出てるし、国内ではDev Kitとほとんど同じSheevaPlug+なんてのがでてるのね。まぁいいや。
個人的には http://www.plugcomputer.org/ のトップにあるやつがデザイン的に好きなのだが、これは発売予定あるのかな?
最終的な用途は無線LAN(うちはFONがアクセスポイントになってる)の中継機。
今のところWDS(リピータ機能)では動かせてないけど、テレビとかスカパーチューナからアクセスできればいいのでIPマスカレードすればいいやという結論に。
まず最初にやったこと
何はともあれログインしなきゃ話にならん。
Windowsでやるなら、付属CDにUSBのシリアルコンソール用ドライバが入ってるのでそれをインストールする必要があるが、めんどいのでLinuxマシンにUSBでつなぎシリアルコンソールを起動。
$ screen /dev/usbttyS0 115200 Ubuntu jaunty (development branch) debian ttyS0 debian login: (初期アカウントは root/nosoup4u)
histroy で履歴を見ると
du -h Verizon-2009-01-25-1152.mp4
ってのがあったこれ何だろ?
まずはパスワードを変更し、適当に時刻を合わせる
root@debian:~# passwd root@debian:~# date [MMDDhhmmYY]
再起動してみる
root@debian:~# /sbin/shutdown -r now __ __ _ _ | \/ | __ _ _ ____ _____| | | | |\/| |/ _` | '__\ \ / / _ \ | | | | | | (_| | | \ V / __/ | | |_| |_|\__,_|_| \_/ \___|_|_| _ _ ____ _ | | | | | __ ) ___ ___ | |_ | | | |___| _ \ / _ \ / _ \| __| | |_| |___| |_) | (_) | (_) | |_ \___/ |____/ \___/ \___/ \__| ** MARVELL BOARD: SHEEVA PLUG LE U-Boot 1.1.4 (Mar 19 2009 - 16:06:59) Marvell version: 3.4.16 U-Boot code: 00600000 -> 0067FFF0 BSS: -> 006CEE80 Soc: 88F6281 A0 (DDR2) CPU running @ 1200Mhz L2 running @ 400Mhz SysClock = 400Mhz , TClock = 200Mhz DRAM CAS Latency = 5 tRP = 5 tRAS = 18 tRCD=6 DRAM CS[0] base 0x00000000 size 256MB DRAM CS[1] base 0x10000000 size 256MB DRAM Total size 512MB 16bit width Flash: 0 kB Addresses 8M - 0M are saved for the U-Boot usage. Mem malloc Initialization (8M - 7M): Done NAND:512 MB CPU : Marvell Feroceon (Rev 1) Streaming disabled Write allocate disabled USB 0: host mode PEX 0: interface detected no Link. Net: egiga0 [PRIME], egiga1 Hit any key to stop autoboot: 0 Marvell>> version U-Boot 1.1.4 (Mar 19 2009 - 16:06:59) Marvell version: 3.4.16 Marvell>>
U-Bootが古すぎるので新しくする
ここに書いてあるとおりにやる。
- TFTPサーバを用意する。うちはDebianなので aptitude install atftpd でサクッとインストール。
- U-Boot 3.4.27+pingtoo binaryをTFTPサーバに u-boot.bin として保存しておく。
- SheevaPlugにてU-Bootを更新する
Marvell>> setenv serverip (TFTPサーバのIPアドレス) Marvell>> setenv ipaddr (SheevaPlugのIPアドレス) Marvell>> bubt u-boot.bin ... **Warning** If U-Boot Endiannes is going to change (LE->BE or BE->LE), Then Env parameters should be overriden.. Override Env parameters? (y/n) n ... Marvell>> reset
せっかくだからカーネルも新しくする
READMEに大抵のことは書いてあります。
- http://sheeva.with-linux.com/sheeva/ から入れたいカーネルの README を SheevaPlug の /root に保存。うちでは2.6.34を採用。
- 保存した README はシェルスクリプトになっているので実行権限をつけて実行する。
- ダウンロードしたカーネルをNANDに保存か/bootに保存するか聞かれるので、SDカードから実行するのでなければNANDに。まぁこれは好み。
- 保存した README の最初のほうに記述されている setenv の行をメモしておく。
- 再起動し U-Boot に入る。そしてメモした setenv を実行し、saveenvする。
続きは明日