(Added restoration of environment variables)
(Testing your new u-Boot)
Line 40: Line 40:
 
go 0x800200
 
go 0x800200
 
</PRE>
 
</PRE>
 +
 +
Note: Older versions of u-Boot may not always chainload newer versions, and hence this may not always yield confidence-building results.
  
 
== Flasing u-Boot ==
 
== Flasing u-Boot ==

Revision as of 12:24, 25 March 2014

Compiling uBoot for the GuruPlug Server Plus

Download the latest version of u-Boot and extract the files to a working folder:

wget ftp://ftp.denx.de/pub/u-boot/u-boot-latest.tar.bz2
tar -xjf u-boot-latest.tar.bz2
cd u-boot-2014.01

Cross Compile u-Boot using the GuruPlug configuration:

make CROSS_COMPILE=arm-linux-gnueabi- distclean
make CROSS_COMPILE=arm-linux-gnueabi- guruplug_config
make CROSS_COMPILE=arm-linux-gnueabi- u-boot.kwb

Compiling should conclude with output similar to that below.

Preparing kirkwood boot image to boot from nand
Nand ECC mode = default
Nand page size = 0x800
Image Type:   Kirkwood Boot from NAND Flash Image
Data Size:    250496 Bytes = 244.62 kB = 0.24 MB
Load Address: 00600000
Entry Point:  00600000

Testing your new u-Boot

It is always a good idea to load your newly compiled version of u-Boot into RAM first and test it.

setenv ipaddr 192.168.0.250
setenv serverip 192.168.0.251
tftp 0x800000 u-boot.kwb
go 0x800200

Note: Older versions of u-Boot may not always chainload newer versions, and hence this may not always yield confidence-building results.

Flasing u-Boot

When you are confident and ready to take the plunge, you can burn u-Boot to flash using:

setenv ipaddr 192.168.0.250
setenv serverip 192.168.0.251
tftp 0x6400000 u-boot.kwb
nand erase 0x0 0x100000
nand write.e 0x6400000 0x0 0x100000

Upon reboot, you should be greeted with your new u-Boot. Congratulations.

U-Boot 2014.01 (Mar 25 2014 - 04:50:06)
Marvell-GuruPlug

SoC:   Kirkwood 88F6281_A1
DRAM:  512 MiB
WARNING: Caches not enabled
NAND:  512 MiB
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Net:   egiga0
Warning: failed to set MAC address
, egiga1
Warning: failed to set MAC address

88E1121 Initialized on egiga0
88E1121 Initialized on egiga1
Hit any key to stop autoboot:  0
Marvell>>

You will need to restore your ethernet MAC addresses. They can be found on the nameplate of your GuruPlug.

Marvell>> setenv ethaddr 00:50:43:01:83:5e
Marvell>> setenv eth1addr 00:50:43:01:83:5f
Marvell>> saveenv
Saving Environment to NAND...
Erasing NAND...
Erasing at 0x60000 -- 100% complete.
Writing to NAND... OK