blob: c71e32b6741e23c324a42571149a46db84df3815 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef __UM_DELAY_H
2#define __UM_DELAY_H
3
Bodo Stroesser5fd861b2005-05-05 16:15:37 -07004#define MILLION 1000000
5
Paolo 'Blaisorblade' Giarrusso10fa1152007-04-01 23:49:37 -07006/* Undefined on purpose */
7extern void __bad_udelay(void);
8
9extern void __udelay(unsigned long usecs);
10extern void __delay(unsigned long loops);
11
12#define udelay(n) ((__builtin_constant_p(n) && (n) > 20000) ? \
13 __bad_udelay() : __udelay(n))
14
15/* It appears that ndelay is not used at all for UML, and has never been
16 * implemented. */
17extern void __unimplemented_ndelay(void);
18#define ndelay(n) __unimplemented_ndelay()
19
Linus Torvalds1da177e2005-04-16 15:20:36 -070020#endif