[U-Boot] [PATCH] arm: vf610: fix boot from SD-card

Stefano Babic sbabic at denx.de
Fri Jan 9 15:51:01 CET 2015


Hi Tom, hi Stefan,

On 09/01/2015 15:13, Stefan Agner wrote:
> Hi Bill,
> 
> On 2015-01-08 18:32, Bill Pringlemeir wrote:
>> On  8 Jan 2015, stefan at agner.ch wrote:
>>
>>> Boot from SD-card (and probably also from NAND) was broken since
>>> commit d6d07a9bec ("arm: vf610: add NAND support for vf610twr").
>>> It looks like the increased size of U-Boot lead to a situation
>>> where the boot ROM overwrote its own stack/heap while loading
>>> U-Boot from the SD-card to the SRAM. However, U-Boot worked fine
>>> when loaded through USB serial loader directly into SRAM. It
>>> looks like loading from SD-card uses other stack/heap location
>>> then the serial loader (or maybe no stack or heap at all).
>>> This fix moves U-Boot to gfxRAM, which is 512kB in size and is not
>>> used by the boot ROM nor the SD-card loader of it.
>>>
>>> Signed-off-by: Stefan Agner <stefan at agner.ch>
>>> ---
>>> We use U-Boot from gfxRAM on Vybrid since quite a while for the
>>> Colibri VF50/VF61 modules in our downstream U-Boot branch. Hence
>>> this is quite well tested.
>>>
>>> Just today I discovered that this is broken on the Tower module.
>>> Back then, when I made the offending change, I only tested on the
>>> Tower board using the serial loader, since I thought the behaviour
>>> should be exactly the same. But now, I know better... :-)
>>>
>>> If still possible, it would be great to get this into v2015.01...
>>>
>>> include/configs/vf610twr.h | 5 ++++-
>>> 1 file changed, 4 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/include/configs/vf610twr.h b/include/configs/vf610twr.h
>>> index 6fd0b17..bd79e81 100644
>>> --- a/include/configs/vf610twr.h
>>> +++ b/include/configs/vf610twr.h
>>> @@ -125,7 +125,10 @@
>>> #define CONFIG_BOOTDELAY		3
>>>
>>> #define CONFIG_LOADADDR			0x82000000
>>> -#define CONFIG_SYS_TEXT_BASE		0x3f008000
>>> +
>>> +/* We boot from the gfxRAM area of the OCRAM. */
>>> +#define CONFIG_SYS_TEXT_BASE		0x3f408000
>>> +#define CONFIG_BOARD_SIZE_LIMIT		524288
>>>
>>> #define CONFIG_EXTRA_ENV_SETTINGS \
>>> 	"script=boot.scr\0" \
>>
>> Acked-by: Bill Pringlemeir <bpringlemeir at nbsps.com>
> 
> Thx!
> 
>>
>> See also:
>>  http://lists.denx.de/pipermail/u-boot/2014-December/197641.html
> 
> Oh, I even gave my Ack for that, but I did not remember it! Oh dear!
> 
>> It seems since v2014.04 u-boot on the Vybrid Tower SD card has not
>> booted.  Most users will probably boot this way.
>>
>>  https://community.freescale.com/docs/DOC-95248
> 
> Yes I agree, hence it would be nice to have that working again in
> 2015.1...
> 
> I also think that meta-fsl-arm creates a SD-card boot-able image by
> default, but not sure whether mainline U-boot is in use there or not.
> Added Otavio for that matter...
> 
> Albert, any chance that can make it into 2015.1 too?
> 

Maybe it is better if Tom can pick it up directly into his tree,
avoiding to go through custodian's tree. Release is coming soon :-).

Regards,
Stefano

-- 
=====================================================================
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================


More information about the U-Boot mailing list