public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
To: u-boot@lists.denx.de
Subject: [U-Boot-Users] [PATCH 2/3][MIPS] lib_mips/time.c: Fix udelay
Date: Sat, 24 May 2008 21:59:51 +0900	[thread overview]
Message-ID: <48381147.5060803@ruby.dti.ne.jp> (raw)
In-Reply-To: <483810E2.7020105@ruby.dti.ne.jp>

What we have to do is just to wait for given micro-seconds. No need to
take into account current time, get_timer and CFG_HZ.

Signed-off-by: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
---

 lib_mips/time.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)


diff --git a/lib_mips/time.c b/lib_mips/time.c
index f03f023..154d792 100644
--- a/lib_mips/time.c
+++ b/lib_mips/time.c
@@ -51,13 +51,13 @@ void set_timer(ulong t)
 	write_32bit_cp0_register(CP0_COUNT, t);
 }
 
-void udelay (unsigned long usec)
+void udelay(unsigned long usec)
 {
 	ulong tmo;
-	ulong start = get_timer(0);
+	unsigned int start = read_32bit_cp0_register(CP0_COUNT);
 
-	tmo = usec * (CFG_HZ / 1000000);
-	while ((ulong)((read_32bit_cp0_register(CP0_COUNT) - start)) < tmo)
+	tmo = start + (usec * (CONFIG_MIPS_TIMER_FREQ / 1000000));
+	while ((ulong)(tmo - read_32bit_cp0_register(CP0_COUNT)) < 0x7fffffff)
 		/*NOP*/;
 }
 

  reply	other threads:[~2008-05-24 12:59 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-20 16:24 [U-Boot-Users] [PATCH] [resend] mips: Support to set CFG_HZ to 1000, consistent with other architectures Jason McMullan
2008-05-21  3:53 ` Shinya Kuribayashi
2008-05-21 15:32   ` Scott Wood
2008-05-24 12:58     ` [U-Boot-Users] [PATCH 1/3][MIPS] lib_mips/time.c: Replace CP0 access functions with existing macros Shinya Kuribayashi
2008-05-24 12:59       ` Shinya Kuribayashi [this message]
2008-05-24 13:02         ` [U-Boot-Users] [PATCH 3/3][MIPS] lib_mips/time.c: Fix improper use of CFG_HZ and timer routines Shinya Kuribayashi
2008-05-24 19:59           ` Wolfgang Denk
2008-05-25  2:04             ` Shinya Kuribayashi
2008-05-25  8:15               ` Wolfgang Denk
2008-05-25 13:45                 ` Shinya Kuribayashi
2008-05-25 15:18                   ` Wolfgang Denk
2008-05-31  6:12                     ` Shinya Kuribayashi
2008-05-31  6:17                       ` Shinya Kuribayashi
2008-05-31 14:40           ` [U-Boot-Users] [PATCH 3/3 v2][MIPS] lib_mips/time.c: Fix CP0 count register usage " Shinya Kuribayashi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=48381147.5060803@ruby.dti.ne.jp \
    --to=skuribay@ruby.dti.ne.jp \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox