summaryrefslogtreecommitdiffstats
path: root/udelay.c
diff options
context:
space:
mode:
authorCarl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>2009-12-24 03:11:55 +0000
committerCarl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>2009-12-24 03:11:55 +0000
commit36cc1c8144db8c0a84d7b79dd3011fb2a0398cfb (patch)
tree0522bdd685b608f066795f75bb905b31c3b56b43 /udelay.c
parent552420b0d677bfb8d3b0b487255b244964c948e9 (diff)
downloadflashrom-36cc1c8144db8c0a84d7b79dd3011fb2a0398cfb.tar.gz
flashrom-36cc1c8144db8c0a84d7b79dd3011fb2a0398cfb.tar.bz2
flashrom-36cc1c8144db8c0a84d7b79dd3011fb2a0398cfb.zip
Internal.c was always compiled in because it hosted the function internal_delay()
Move that function to udelay.c and compile internal.c only if really needed. physmap.c is only needed if the programmer is internal or a PCI card. Make its compilation conditional. Corresponding to flashrom svn r822. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> Acked-by: Idwer Vollering <vidwer@gmail.com>
Diffstat (limited to 'udelay.c')
-rw-r--r--udelay.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/udelay.c b/udelay.c
index 9a0ab365b..f61d793c6 100644
--- a/udelay.c
+++ b/udelay.c
@@ -63,3 +63,16 @@ void myusec_calibrate_delay(void)
(unsigned long)micro, timeusec);
printf("OK.\n");
}
+
+void internal_delay(int usecs)
+{
+ /* If the delay is >1 s, use usleep because timing does not need to
+ * be so precise.
+ */
+ if (usecs > 1000000) {
+ usleep(usecs);
+ } else {
+ myusec_delay(usecs);
+ }
+}
+