Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 2nd, 2012  |  syntax: None  |  size: 0.34 KB  |  hits: 15  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. static inline void udelay(unsigned usecs)
  2. {
  3.     unsigned cycles_per_usec = (cpu_frequency == CPUFREQ_MAX) ?
  4.         (CPUFREQ_MAX / 1000000) : (CPUFREQ_NORMAL / 1000000);
  5.     unsigned cycles = usecs * cycles_per_usec / 4;
  6.  
  7.     asm volatile(
  8.         "1: subs %0, %0, #1 \n"
  9.         "   bne 1b          \n"
  10.         : : "r"(cycles)
  11.     );
  12.  
  13. }