[timer] Formalise the timer API
[people/asdlkf/gpxe.git] / src / include / unistd.h
index 7c44a0c..dc1f67f 100644 (file)
@@ -4,7 +4,6 @@
 #include <stddef.h>
 #include <stdarg.h>
 
-unsigned int sleep ( unsigned int seconds );
 extern int execv ( const char *command, char * const argv[] );
 
 /**
@@ -22,10 +21,21 @@ extern int execv ( const char *command, char * const argv[] );
                rc;                                                     \
        } )
 
-void udelay(unsigned int usecs);
-void mdelay(unsigned int msecs);
+/* Pick up udelay() */
+#include <gpxe/timer.h>
 
-#define usleep(x) udelay(x)
+/*
+ * sleep() prototype is defined by POSIX.1.  usleep() prototype is
+ * defined by 4.3BSD.  udelay() and mdelay() prototypes are chosen to
+ * be reasonably sensible.
+ *
+ */
+
+extern unsigned int sleep ( unsigned int seconds );
+extern void mdelay ( unsigned long msecs );
 
+static inline __always_inline void usleep ( unsigned long usecs ) {
+       udelay ( usecs );
+}
 
 #endif /* _UNISTD_H */