Hi everyone, Firstly, let me just say that I'm V. impressed with the work everyone on this group is putting into this. When I first saw one of these things in Tesco for next to nothing I though - cool, now I can do a yell.co.uk lookup without having to wait for a laptop to boot etc. Anyway, with a view to this I plodded off to OpenEmbedded and started playing. At first I manually patched the OE snapshot using David Ford's patches and managed to build the uImage, bootstrap image and a (massively cut down) Opie image. My first problem at that stage was, and still is, how to get the E3 to 'see' the rootfs. Here is what I did:
First I got hold of an old 128MB usb flash card and formatted it as an ext2 fs.
Next I 'untared' the rootfs.tar.bz2 file that bitbake and OE had generated onto this with the result that I had a perfectly readable root fs on the USB stick.
I then created an 'opie' pbl file thus:
write 0x11900000 uImage-amsdelta-20060606090139.bin write 0x11f00000 u-boot-amsdelta-1.1.4-r0.bin exec 0x11f00000
which successfully loads the bootstrap and kernel images into the e3.
At the u-boot command line, I issued the following:
setenv bootargs mem=32M root=/dev/sda0 rootfstype=ext2
and then... on the bootm command everything appears to work...at first.
Ultimately I get stuck with:
VFS: No root yet, retrying to mount root on sda0 (unknown block(0,0)) Kernel panic: Unable to mount root fs on etc.etc.
Please let me know what I am missing, no doubt I have done something stupid. I seem to remember that maybe I need to pivot the bootup using a ramdisk but don't know how to do this...
My second problem is that, having noticed that recent OE snapshots no incorporate the work to date, I set off to try with one of those and rashly deleted my working snapshot... Anyway whilst I can get (with much fiddling) a UImage and bootstrap image built, I cannot get an Opie image anymore :-(. There seem to be many clashes between certain parts (such as bluetooth support) and the newer kernel. Does anyone have a recent OE snapshot that works and is prepared to put it up here?
Cheers all, Wiretrip (Brendan Berney)
Brendan Berney wrote:
Hi everyone,
Hi Brendan,
Anyway, with a view to this I plodded off to OpenEmbedded and started playing. At first I manually patched the OE snapshot using David Ford's patches and managed to build the uImage, bootstrap image and a (massively cut down) Opie image. My first problem at that stage was, and still is, how to get the E3 to 'see' the rootfs. Here is what I did:
Right, yes, I have never managed to get the system to boot directly off a USB memory stick unfortunately, but you may have more luck than I did!
If you can't get it working, there are two ways I've got around this, the simple one is to create a bootstrap image that you initially load as a ramdisk, and to mount your USB memory stick and chroot to it. The more complicated method is to put Opie on the built in NAND flash and boot from it that way. I have had both working, and should probably update my patches and improve the documentation for doing both with the patches! unfortunately I am currently in the middle of both writing a dissertation and moving this week, so it'll probably be a couple of weeks before I'm in a position to do much more E3 stuff.
At the u-boot command line, I issued the following:
setenv bootargs mem=32M root=/dev/sda0 rootfstype=ext2
wouldn't the root be /dev/sda1, not sda0?
My second problem is that, having noticed that recent OE snapshots no incorporate the work to date, I set off to try with one of those and rashly deleted my working snapshot... Anyway whilst I can get (with much fiddling) a UImage and bootstrap image built, I cannot get an Opie image anymore :-(. There seem to be many clashes between certain parts (such as bluetooth support) and the newer kernel. Does anyone have a recent OE snapshot that works and is prepared to put it up here?
I've not had chance to update my patches for a few months, once things calm down here, I intend to do so and to try and get some of the patches submitted upstream.
David
Well, I managed to do that putting the major and minor device numbers on the command line. I don't remember exactly, but I think it was root=block(8,1) or something like that.
(sorry if I've broken threading, I wasn't subscribed when the quoted message was sent)
David Ford wrote:
Right, yes, I have never managed to get the system to boot directly off a USB memory stick unfortunately, but you may have more luck than I did!
For what it's worth, I have a WGT634U booting with root on a USB stick using the following kernel command line:
console=ttyS0,115200 root=/dev/sda1 rootdelay=10
I haven't tried booting the E3 from a USB stick, so I don't know if your problems were the same as those the WGT has, but the rootdelay=10 gives the kernel a bit of time to recognise the stick before it attempts to mount it.
Sean