
In article 610D18D1F0BB204D8AB39BB1C42187E8041E739E@LONMLVEM09.e2k.ad.ge.com, Nick.Thompson@gefanuc.com (Thompson, Nick (GE EntSol, Intelligent Platforms)) wrote:
*From:* "Thompson, Nick (GE EntSol, Intelligent Platforms)" Nick.Thompson@gefanuc.com *To:* from_denx_uboot@dexdyne.com, u-boot@lists.denx.de *Date:* Wed, 21 Oct 2009 16:39:18 +0100
-----Original Message----- From: u-boot-bounces@lists.denx.de [mailto:u-boot-bounces@lists.denx.de] On Behalf Of David Collier Sent: 21 October 2009 16:08 To: u-boot@lists.denx.de Subject: [U-Boot] stopping u-boot from booting an old image in RAM.
If I boot this unit, then remove the SD card it booted from and reset it, it happily boots some Linux image which is lying around in memory.
It even does it after a short power-off power-on sequence.
I think that's horrible behaviour.
I was told I could use && instead of ; between the commands in the bootcmd string to stop this, but that barfed, and then I was told that maybe && only existed if "scripting is enabled"
Could anyone please talk me through the steps of either
- doing what it takes to enable this && feature, so that if it
fails to find the card, it doesn't go on and try to boot.
or
- something else that will do it, such as so effectively
buggering up an image that has been booted from that it will never be re-used
:-)
TVM
David Collier
Probably a simple mw (memory write) to the entry point of linux, before You attempt to reload the image, would do the trick?
Usage: mw [.b, .w, .l] address value [count]
Nick.
so something like
#define CONFIG_BOOTCOMMAND \ "mmcinit ; mw 0x10400000 55 ; ext2load mmc 0:1 0x10400000 /boot/uImage ; bootm 0x10400000"
????
That looks simple enough
David Collier
www.dexdyne.com