On Wed, Sep 07, 2016 at 09:37:48AM +0000, peter.ch...@data61.csiro.au wrote:
> Hi Folks,
>    If you set CONFIG_FASTBOOT_BUF_ADDR to anything other than the same
>    as $loadaddr then the call to do_bootm() in the fastboot code
>    will call do_bootm on a memory region that has nothing to do with
>    the image downloaded.  Sometimes the result is a hung system, other
>    times the system reboots.
> 
>    I'm not sure of the correct fix.  The possibilities are:
>        1. Get rid of CONFIG_FASTBOOT_BUF_ADDR and use $loadaddr
>        instead.  All the defconfigs that enable fastboot currently set
>        CONFIG_FASTBOOT_BUF_ADDR to the same value as CONFIG_LOADADDR at
>        present.
> 
>        2. memcpy from the downloaded image to $loadaddr if possible.  This
>        would allow other payloads than ANDROID boot images, with a bit
>        more work. (For example, I'd love to be able to boot ELF images
>        using fastboot -- which doesn't work at present, because the
>        entry point in the elf header isn't used)
> 
>        3. The simplest: call do_bootm() with the address where the
>        image has just been downloaded.  The attached patch does this.
> 
> What do you think?

Since it's possible that one would want the buf addr to be different
from loadaddr later on, I think #3 is the path of least surprise, please
re-submit as a formal patch, thanks!

-- 
Tom

Attachment: signature.asc
Description: Digital signature

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to