Updating u-boot on SheevaPlug

Tools required

  • openocd

  • tftp-hpa

  • cross compiler


cd customrepo
mkdir cross-armv5tel-softfloat-linux-gnueabi
ln -s ../gentoo/sys-devel/{gcc,binutils} cross-armv5tel-softfloat-linux-gnueabi
sudo cave resolve cross-armv5tel-softfloat-linux-gnueabi/gcc

Updating u-boot:

There are several repositories, but the official one is this one:
http://git.denx.de/u-boot.git. The maintainer of the official one actually recommends using the repos for each architecture, in the case of the SheevaPlug that would the Marvell repo:

git init
git remote add marvell git://git.denx.de/u-boot-marvell.git
git fetch marvell
git checkout -b testing marvell/testing
cat <<EOF >GNUmakefile
CROSS_COMPILE ?= armv5tel-softfloat-linux-gnueabi-
include Makefile
make sheevaplug_config
make u-boot.kwb

Now you can try the new u-boot on your plug:
openocd -f /usr/share/openocd/scripts/board/sheevaplug.cfg

In another terminal (or screen)
telnet localhost 4444
> sheevaplug_init
> load_image /home/..../u-boot
> resume 0x0060000

Check the output of the load_image for the exact number to put
on the resume line.

If u-boot seems to run fine, you can flash it to the NAND on the plug with openocd again.
Copy the u-boot.kwb file to your tftp server and then from the u-boot prompt:
> dhcp
> tftp u-boot.kwb
> nand erase 0 0x60000
> nand write 0x200000 0 0x60000

The tftp command will have given you the address you should give to the nand
write command.


Popular posts from this blog

Google webmaster tools refuse to verify a Wordpress blog

LVM metadata corruption