From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Babic Date: Fri, 09 Jan 2015 15:51:01 +0100 Subject: [U-Boot] [PATCH] arm: vf610: fix boot from SD-card In-Reply-To: <501fd10f436e93dc5f80e74e6dbaf69e@agner.ch> References: <1420737505-32119-1-git-send-email-stefan@agner.ch> <87lhld5gb6.fsf@nbsps.com> <501fd10f436e93dc5f80e74e6dbaf69e@agner.ch> Message-ID: <54AFEAD5.50007@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 >>> --- >>> 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 > > 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 =====================================================================