public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot-Users] "go addr" Question...
@ 2005-09-06 14:17 Robin Getz
  2005-09-06 14:38 ` Wolfgang Denk
  2005-09-06 15:20 ` [U-Boot-Users] " Robin Getz
  0 siblings, 2 replies; 11+ messages in thread
From: Robin Getz @ 2005-09-06 14:17 UTC (permalink / raw)
  To: u-boot

We were having an issue with the command "go addr" starting some binary 
images (like the linux kernel and others).

Aubrey Li tracked this down to what appears to us as an issue in 
u-boot/common/cmd_boot.c:do_go which doesn't clear, or invalidate cache.

Right now, we added this to our cvs, with an ifdef - if this is a common 
need for other architectures, we can take out the ifdef, and re-sumbit the 
patch.

Comments, Suggestions, or Criticisms welcomed.

Thanks
-Robin

diff -u -r1.1.1.1 -r1.2
--- cmd_boot.c  13 Mar 2005 21:26:46 -0000      1.1.1.1
+++ cmd_boot.c  6 Sep 2005 08:05:51 -0000       1.2
@@ -48,6 +48,10 @@

         printf ("## Starting application at 0x%08lX ...\n", addr);

+#if defined(CONFIG_BLACKFIN)
+        if(icache_status())
+                invalidate_entire_icache();
+#endif

         /*
          * pass address parameter as argv[0] (aka command name),
          * and all remaining args

^ permalink raw reply	[flat|nested] 11+ messages in thread
* [U-Boot-Users] Re: "go addr" Question...
@ 2005-09-06 18:05 Robin Getz
  2005-09-06 19:49 ` Wolfgang Denk
  0 siblings, 1 reply; 11+ messages in thread
From: Robin Getz @ 2005-09-06 18:05 UTC (permalink / raw)
  To: u-boot

>U-boot typically runs with instruction cache enabled and data cache 
>disabled (experience base: PowerPC).  This is because instruction cache 
>"just works" and is very beneficial and data cache generally causes 
>massive grief

This is how we have things set up (data cache and instruction cache on by 
default).

Based on the fact that uncompressing an image :

icache   dcache  time boot*
  off       off   11 seconds
  off        on   10 seconds
   on       off    3 seconds
   on        on    1 second

*time to boot is based on the time to bootm to check the checksum, and 
uncompress the image, and print out "Starting Kernel at 0xnnnnnn".

Our customers want sub 2 second boot time - so we need to have both dcache 
and icache on.

If the restriction is that you can't use the go command with dcache on, 
then I can also live with that (and just put 'dcache on;' as part of the 
boot command for Linux kernels.

-Robin

^ permalink raw reply	[flat|nested] 11+ messages in thread
* [U-Boot-Users] Re: "go addr" Question...
@ 2005-09-14 15:46 Robin Getz
  0 siblings, 0 replies; 11+ messages in thread
From: Robin Getz @ 2005-09-14 15:46 UTC (permalink / raw)
  To: u-boot

Just an update - We found out what the issue was - the application in 
question assumed caches were off when it started, and re-initialized things 
without flushing things, which the hardware didn't like. Since this doesn't 
seem like a generic U-Boot issue - we are just making sure that when 
applications are started - they assume cache can be on or off, and set 
things appropriately.

Thanks for the help.

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2005-09-14 15:46 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-09-06 14:17 [U-Boot-Users] "go addr" Question Robin Getz
2005-09-06 14:38 ` Wolfgang Denk
2005-09-06 15:20 ` [U-Boot-Users] " Robin Getz
2005-09-06 17:06   ` Robin Getz
2005-09-06 17:24     ` Jerry Van Baren
2005-09-06 19:43       ` Wolfgang Denk
2005-09-07 13:25       ` Scott McNutt
2005-09-06 19:40     ` Wolfgang Denk
  -- strict thread matches above, loose matches on Subject: below --
2005-09-06 18:05 Robin Getz
2005-09-06 19:49 ` Wolfgang Denk
2005-09-14 15:46 Robin Getz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox