[U-Boot] u-boot serial loading/booting from ram

Matt Geiman matt at geiman.org
Thu Aug 15 15:04:20 CEST 2013


Hello all,

I have a quick question that I hope you can help me with.  We are running
version 2009.11 of u-boot on a Beagleboard based project and are looking to
upgrade to the latest and greatest (currently 2013.07).  This project has
no MMC slot, so originally the only way to initially load the board for the
first time was over a serial connection.  A previous employee wrote a piece
of software (and customized x-loader) that would load x-loader, u-boot, the
kernel, and a minimal filesystem into RAM.  It (the customized x-loader)
would then boot the copy of u-boot in RAM, which would then flash
everything to NAND.

So the process is:

1. A script waits for the ASIC ID from the board and downloads our custom
x-loader when it's received the ID.
2. The custom x-loader then can accept commands from our script to write
the MLO, u-boot, kernel, and FS to RAM.
3. The custom x-loader then accepts a command to boot a certain area of
memory, which is what starts u-boot.

Our problem is this; our piece of software and custom x-loader downloads
the new u-boot file successfully, however when the custom x-loader tries to
boot the new u-boot image from RAM it hangs/fails.  According to this:

http://www.denx.de/wiki/view/DULG/CanUBootBeConfiguredSuchThatItCanBeStartedInRAM

u-boot is not able to be started in RAM.

My question is, is this part of the FAQ up to date?  And if so, was it true
also for the 2009.11 version of u-boot.

Since the previously mentioned employee has left, I'm trying to figure out
what all he did to get this serial loading process functioning.  I'm
currently trying to figure out if u-boot is able to be started from RAM at
all, and/or if there is something specific that the new SPL code does to
successfully start u-boot that I need to add to our custom x-loader.

Thanks,

-Matt

-- 
Matt Geiman
matt at geiman.org


More information about the U-Boot mailing list