by ebbix » Mon Jan 07, 2013 4:48 pm
As far as I know, U-boot does not support chainloading officially.
However, it might work with U-boot versions that are not too much different from your current U-boot (at least this is my experience).
You might try to setup a tftp server (not ftp, but Tftp) and load the second U-boot like this:
$this->bbcode_second_pass_code('', 'setenv serverip [ip of tftp server]
setenv ipaddr [ip of your device]
tftp 0x800000 u-boot-filename
go 0x800200') Notice the offset of 0x200 (= 512 bytes), which is the size of the header.
You could also change it to load u-boot image from usb, ata or flash instead (ext2load, fatload and others...)
You might give that a try. If it works, it will most definitely work when you flash your second image to nand.
But if this fails (chainloaded u-boot does not start), there are still chances it will work when flashed (at least this is true if you plan to flash it directly to /dev/mtd0).
At least this was my method when trying cross-compiled u-boot versions on my GoFlex Net. (And they didn't run from tftp...; and yeah, they were actually compiled to run from mtd0, however, I tried chainloading them)