Re: Bootloader after piggyback / chainloading?

Ralf Miunske <[email protected]> Wed, 8 Sep 2004 17:16:28 +0200
Newsgroups gmane.comp.handhelds.simpad.linux
Message-ID <[email protected]>
Hi Massimo!
Hi all!

First a question to all: As the bootldr is still heavily under development: 
Could we build a kind of chain-loader for the simpad easily for the meantime, 
which reorganizes the memory the way we need it and passes the required 
command line args to the kernel? That's what we do at tuxbox.org :-)

Now to your question, Massimo:
As Chris said, the bootldr is still not the bootloader to actually use:
The error you're getting simply tells you, that it is not able to boot 
anything, because you did not define any root-partition to boot, which could 
be quite hard to do, as you don't have one containing a jffs2 file system 
with a kernel. Anyway: Things still work with the Arnold-Bootloader the 
simpad is shipped with.
The Arnold-Bootloader uses a header which tells it what to do with the 
downloaded image: One can tell arnold to simply run the image, to write it to 
flash or to launch another image. After uploading the bootldr, arnold simply 
runs it and there you are. As the bootldr is still not capable of accessing 
the whole device, you'll stick here. Due to overlapping problems there are 
two versions of the same bootloader around for any of the devices: The 
ordinary and the alternate bootloader. The ordinary arnold bootloader can 
only run winCE and altered iPaq-Kernels with an entry adress not overlapping 
with the bootloader. To be more compatible with the iPaqs that alternate 
bootloader was written, so that you can leave the kernel now as is, but you 
won't be able to boot windows anymore, because it'll overlap with the 
alternate bootloader. To flash any arnold-image you'll simply need to get to 
the bootloader (press the right of both available keys while resetting the 
device :) and you'll find yourself in the boot-console, the same as serload 
does by sending ESC to the device after a reset. There you can start booting 
from net to download the image via ethernet, start the serial download or 
boot the device regularly.
The image to be downloaded looks always quite the same:
It contains a control block for arnold and the ordinary image afterwards. Most 
images around should directly flash after downloading using serload. If you 
want to build your own images, you'll need gen_boot, which sould be somewhere 
around here. Using this utility, one can easily generate such a header 
required for flashing any image. A look into simpadboot tells you, that 
there's an arnold header in front of the data :)
Playing with bootldr can be quite dangerous, if you don't actually know what 
you're doing: If you crash your arnold bootloader, without having any other 
one working on the device, you'll own a most beautiful, yet expensive, BRICK.
It could help you the keep any letters from blowing away or something like 
that :-) If that happens, you can only use an external programming interface, 
called jtag, to bring your device back to life. To go this way you'll need 
some hardware knowledge. In any other case that way of flashing your device 
is only for the desperate :-)


Hope this helps
  Ralf

Am Mittwoch, 8. September 2004 15:54 schrieb Massimo Di Leo:
> I've serloaded the simpadboot loader, but at
> the end of the process I get this message:
>
> failed to load params file /boot/params ...
> partition <throwaway_bootldr_partition> deleted
> RXSTAT error: 000000FF
> booting jffs2...
> cannot find kernel partition named >root<
> boot command failed, entering monitor
> boot>
>
> what do I need to do now to load an image?
>
>
> Thanks
> Massimo


-------------------------------------------------------
This SF.Net email is sponsored by BEA Weblogic Workshop
FREE Java Enterprise J2EE developer tools!
Get your free copy of BEA WebLogic Workshop 8.1 today.
http://ads.osdn.com/?ad_id=5047&alloc_id=10808&op=click