1/* 2 * Copyright 2003 PathScale, Inc. 3 * Copied from arch/x86_64 4 * 5 * Licensed under the GPL 6 */ 7 8#include <linux/module.h> 9#include <linux/delay.h> 10#include <asm/processor.h> 11#include <asm/param.h> 12 13void __delay(unsigned long loops) 14{ 15 unsigned long i; 16 17 for(i = 0; i < loops; i++) 18 cpu_relax(); 19} 20 21void __udelay(unsigned long usecs) 22{ 23 unsigned long i, n; 24 25 n = (loops_per_jiffy * HZ * usecs) / MILLION; 26 for(i=0;i<n;i++) 27 cpu_relax(); 28} 29 30EXPORT_SYMBOL(__udelay); 31