前回まででPandaBoardが起動するようにはなったのですが、シリアルの通信は途絶えてしまいシェルが起動するという事にはなりませんでした。
HDMIは使わないので、サーバーとして扱えるようにネットワークとシリアルを有効にするところまでです。
環境
ベースにしているrootfsは前回と同様にL24.9-PandaBoard_validation_environment.tar.gzです。
MLOとu-boot.imgをgitから準備をして起動するようにはなりました。
現状
で、起動はするものの、runlevelを聞いてきたところで数字は打つものの処理が止まってしまいます。
... Enter runlevel: 2 INIT: Entering runlevel: 2 INIT: no more processes left in this runlevel ...
まぁgettyを起動させれば良いのでしょうと、いうわけでSDカードをUbuntu 12.04 LTSに差し、認識された/dev/sdd2を/mnt/mmc2にマウントして、/mnt/mmc2/etc/inittabファイルを編集したりしました。
ここら辺の強調したデバイス名やらは環境に依存して変化するので読み替えて下さい。
/etc/inittabを変更して、ちょっとだけ改善
... Enter runlevel: 2 INIT: Entering runlevel: 2 .-------. | | .-. | | |-----.-----.-----.| | .----..-----.-----. | | | __ | ---'| '--.| .-'| | | | | | | | |--- || --'| | | ' | | | | '---'---'--'--'--. |-----''----''--' '-----'-'-'-' -' | '---' The Angstrom Distribution (none) ttyO2 Angstrom 2010.4-test-20100406 (none) ttyO2 (none) login: root Login incorrect
よくよくみると、いろいろマニュアルに問題があるようなので、そこら辺をまとめておきます。
inittabファイルの書式について
Minimal-FSの/etc/inittabは次のようになっていました。
null::sysinit:/bin/mount -t proc proc /proc null::sysinit:/bin/mount -t sysfs sysfs /sys null::sysinit:/bin/mount -t usbfs usbfs /proc/bus/usb null::sysinit:/bin/mount -o remount,rw / null::sysinit:/etc/init.d/udev ttyO2::respawn:/bin/sh
ここで最後の行でtty02をtty2のように数字を除いて指定する必要がありました。
ここを修正すると起動後にrunlevelを入力させた後にシェルが起動します。
まぁMinimal-FSはapt-getもないので、本当にどうしようもないのですが、とりあえずこれでrootでログインする事が可能になります。
別の文書ではboot.scrでカーネルパラメータを指定するような指定もありましたが、デフォルトのkernelパラメータは次のようになっています。
Kernel command line: console=ttyO2,115200n8 vram=16M root=/dev/mmcblk0p2 rw rootfstype=ext3 rootwait
もしこのパラメータを変更する必要があれば、mkimageコマンドを使ってboot.scrファイルを生成します。 今回は試したものの必要ないので、boot.scrファイルは使っていません。
FAQによれば、コマンドラインは次のようになっています。
Step-1: create a boot.scr.txt like: fatload mmc 0 0x80300000 uImage echo Booting from mmc0 ... setenv bootargs console=ttyO2,115200n8 noinitrd init=/sbin/init root=/dev/mmcblk0p2 rootwait rw loglevel=8 bootm 80300000 Step-2: run: mkimage -A arm -T script -O linux -C none -a 0 -e 0 -n "boot.scr" -d boot.scr.txt boot.scr
mkimageコマンドは手元のUbuntu 12.04 LTS上で実行していますが、 ここら辺はuboot-mkimage-0.4当りをキーワードに検索すれば関連する情報が探せるかと思います。
さいごに
rootでログインができたので、必要そうな情報をコピーしておきます。
ネットワークカード
# ip addr 1: lo: <LOOPBACK> mtu 16436 qdisc noop link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: usb0: <BROADCAST,MULTICAST> mtu 1492 qdisc noop qlen 1000 link/ether 22:17:88:b7:fc:59 brd ff:ff:ff:ff:ff:ff
/proc/cpuinfo
この情報をみるとOMAP4460としては認識されていないのかなと思えます。 あとでちゃんとしたkernelを使って検証することにしましょう。
# cat /proc/cpuinfo Processor : ARMv7 Processor rev 10 (v7l) processor : 0 BogoMIPS : 1396.94 processor : 1 BogoMIPS : 1363.33 Features : swp half thumb fastmult vfp edsp thumbee neon vfpv3 CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x2 CPU part : 0xc09 CPU revision : 10 Hardware : OMAP4430 Panda Board Revision : 0020 Serial : 0000000000000000
さいごに
ここら辺でMinimal-FSは止めて、Ubuntu 12.04 (precise) を動作させてみようと思います。
0 件のコメント:
コメントを投稿