Bootloader upgrade

Werner Almesberger werner at openmoko.org
Mon Mar 12 05:03:31 CET 2007


Paul Eggleton wrote:
> GTA01Bv3 # nand write 0x32000000 u-boot 196252
> NAND write: device 0 offset 0x0, size 0x40000
>  262144 bytes written: OK

Two problems:

- somewhat confusingly, u-boot uses hex as the default base, so the
  size was 0x196252 (but nothing bad has happened because of this)

- you should use "write.e", not "write". "write.e" skips over bad blocks,
  which is also what the loader does. If there are bad NAND Flash blocks
  in your u-boot partition, the rest of u-boot will be loaded at the
  wrong address. (Bad blocks are a "normal" feature of NAND Flash.)

> After a short while it powered off by itself (is there a way to disable this? 

Yep. Set the environment variable  boot_menu_timeout  to a large value.

> Any suggestions? Was it a bad idea for me to try to do this?

You probably do have a bad block somewhere. But it seems that enough
of u-boot works anyway. Lucky you :-)

Please do the following:

dynpart
dynenv set u-boot_env
reset

That should fix it. You probably also want to re-flash u-boot using
"write.e". After that, you have to repeat the above ritual. (Note:
if using DFU, u-boot takes care of all that for you.)

If this doesn't help, please send me the output of
nand bad

- Werner

-- 
  _________________________________________________________________________
 / Werner Almesberger, Buenos Aires, Argentina     werner at almesberger.net /
/_http://www.almesberger.net/____________________________________________/



More information about the openmoko-devel mailing list