* [U-Boot] [PATCH-OMAP3] OMAP3: Fix typo and cp_delay
@ 2008-11-09 18:38 dirk.behme at googlemail.com
2008-11-09 20:03 ` Wolfgang Denk
0 siblings, 1 reply; 2+ messages in thread
From: dirk.behme at googlemail.com @ 2008-11-09 18:38 UTC (permalink / raw)
To: u-boot
Subject: [PATCH-OMAP3] OMAP3: Fix typo and cp_delay
From: Dirk Behme <dirk.behme@gmail.com>
Fix typo and cp_delay. Requested by Wolfgang Denk.
Signed-off-by: Dirk Behme <dirk.behme@gmail.com>
---
Regarding cp_delay there was the comment:
-- cut --
>+static void cp_delay(void)
>+{
>+ volatile int i;
>+
>+ /* Many OMAP regs need at least 2 nops */
>+ for (i = 0; i < 100; i++) ;
There is not much reason for the compiler not to optimize this code away.
-- cut --
Please note that most of ARM code uses *this* cp_delay() implementation. If I understood correctly at IRC, Scott Wood made some tests and volatile prevents gcc from optimizing loop away.
cpu/arm_cortexa8/cpu.c | 5 ++---
cpu/arm_cortexa8/start.S | 2 +-
2 files changed, 3 insertions(+), 4 deletions(-)
Index: u-boot-arm/cpu/arm_cortexa8/start.S
===================================================================
--- u-boot-arm.orig/cpu/arm_cortexa8/start.S
+++ u-boot-arm/cpu/arm_cortexa8/start.S
@@ -394,7 +394,7 @@ irq:
.align 5
fiq:
get_fiq_stack
- /* someone ought to write a more effiction fiq_save_user_regs */
+ /* someone ought to write a more effective fiq_save_user_regs */
irq_save_user_regs
bl do_fiq
irq_restore_user_regs
Index: u-boot-arm/cpu/arm_cortexa8/cpu.c
===================================================================
--- u-boot-arm.orig/cpu/arm_cortexa8/cpu.c
+++ u-boot-arm/cpu/arm_cortexa8/cpu.c
@@ -68,10 +68,9 @@ static void write_p15_c1(unsigned long v
static void cp_delay(void)
{
- volatile int i;
-
/* Many OMAP regs need@least 2 nops */
- for (i = 0; i < 100; i++) ;
+ asm("nop");
+ asm("nop");
}
/* See also ARM Ref. Man. */
^ permalink raw reply [flat|nested] 2+ messages in thread* [U-Boot] [PATCH-OMAP3] OMAP3: Fix typo and cp_delay
2008-11-09 18:38 [U-Boot] [PATCH-OMAP3] OMAP3: Fix typo and cp_delay dirk.behme at googlemail.com
@ 2008-11-09 20:03 ` Wolfgang Denk
0 siblings, 0 replies; 2+ messages in thread
From: Wolfgang Denk @ 2008-11-09 20:03 UTC (permalink / raw)
To: u-boot
Dear dirk.behme at googlemail.com,
In message <49172e21.0407560a.71cf.ffffba13@mx.google.com> you wrote:
> Subject: [PATCH-OMAP3] OMAP3: Fix typo and cp_delay
>
> From: Dirk Behme <dirk.behme@gmail.com>
>
> Fix typo and cp_delay. Requested by Wolfgang Denk.
See previous comments.
> Signed-off-by: Dirk Behme <dirk.behme@gmail.com>
>
> ---
>
> Regarding cp_delay there was the comment:
>
> -- cut --
> >+static void cp_delay(void)
> >+{
> >+ volatile int i;
> >+
> >+ /* Many OMAP regs need at least 2 nops */
> >+ for (i = 0; i < 100; i++) ;
>
> There is not much reason for the compiler not to optimize this code away.
> -- cut --
>
> Please note that most of ARM code uses *this* cp_delay() implementation. If I understood correctly at IRC, Scott Wood made some tests and volatile prevents gcc from optimizing loop away.
Now this is actually some interesting information which probably
should be part of the commit message - in the present form, it just
gets lost.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"Deliver yesterday, code today, think tomorrow."
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2008-11-09 20:03 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-11-09 18:38 [U-Boot] [PATCH-OMAP3] OMAP3: Fix typo and cp_delay dirk.behme at googlemail.com
2008-11-09 20:03 ` Wolfgang Denk
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.