
Disclaimer: I'm not an ARM expert. I have a hard time even spelling ARM.
Joe Grisso wrote:
See below.
It looks like this is a very simple loader. It writes to SRAM _only_ and then jumps to that program (JTAG loaders typically allow you to write to flash, manipulate registers, and jump anywhere, single step, etc.). Theoretically you could load u-boot this way, but nobody has volunteered that they have done it so you would likely be blazing a new path.
Yeah, and with only 16KB of onboard SRAM, I doubt you'd be able to load U-Boot in as a single image. I don't know if Atmel's host-side DFU app handles downloads larger than the size of SRAM either. So if not, one would have to write an app for that on the host as well.
Nope. U-boot is much more than 16K. The level of complexity just stepped up a notch.
Looking some more at the description, the USB load is done only if no "valid" load (the vectors have jump instructions in them) is found in a bootable memory. This means that you would only get one chance to burn the vectors - if your load in regular boot memory does not run properly, the bootloader doesn't know to go back to USB boot and your hardware will turn into a brick (recoverable only with a JTAG loader).
You need a JTAG loader/debugger. The USB mechanism would work for a low budget loader once you have a working program to load, but using the USB mechanism to load your initial boot loader will be a one shot failure.
Having said all that, this is pretty much off topic for u-boot. Only after you get u-boot loaded into the target (and at least showing some signs of life) would this become on topic for this list.
Just out of curiosity, which list would be appropriate then? AT91 Users?
Sorry, I'm just an "idea" man :-/ lots of ideas, very little practice.
Best Regards,
Joe Grisso Detachment 3 Media, Ltd.
gvb