1 #ifndef _ASM_POWERPC_DELAY_H 2 #define _ASM_POWERPC_DELAY_H 3 #ifdef __KERNEL__ 4 5 /* 6 * Copyright 1996, Paul Mackerras. 7 * 8 * This program is free software; you can redistribute it and/or 9 * modify it under the terms of the GNU General Public License 10 * as published by the Free Software Foundation; either version 11 * 2 of the License, or (at your option) any later version. 12 * 13 * PPC64 Support added by Dave Engebretsen, Todd Inglett, Mike Corrigan, 14 * Anton Blanchard. 15 */ 16 17 extern void __delay(unsigned long loops); 18 extern void udelay(unsigned long usecs); 19 20 /* 21 * On shared processor machines the generic implementation of mdelay can 22 * result in large errors. While each iteration of the loop inside mdelay 23 * is supposed to take 1ms, the hypervisor could sleep our partition for 24 * longer (eg 10ms). With the right timing these errors can add up. 25 * 26 * Since there is no 32bit overflow issue on 64bit kernels, just call 27 * udelay directly. 28 */ 29 #ifdef CONFIG_PPC64 30 #define mdelay(n) udelay((n) * 1000) 31 #endif 32 33 #endif /* __KERNEL__ */ 34 #endif /* _ASM_POWERPC_DELAY_H */ 35