delay.c
来自「这个linux源代码是很全面的~基本完整了~使用c编译的~由于时间问题我没有亲自」· C语言 代码 · 共 36 行
C
36 行
/* * Precise Delay Loops for SuperH * * Copyright (C) 1999 Niibe Yutaka & Kaz Kojima */#include <linux/sched.h>#include <linux/delay.h>void __delay(unsigned long loops){ __asm__ __volatile__( "tst %0, %0\n\t" "1:\t" "bf/s 1b\n\t" " dt %0" : "=r" (loops) : "0" (loops) : "t");}inline void __const_udelay(unsigned long xloops){ __asm__("dmulu.l %0, %2\n\t" "sts mach, %0" : "=r" (xloops) : "0" (xloops), "r" (current_cpu_data.loops_per_jiffy) : "macl", "mach"); __delay(xloops * HZ);}void __udelay(unsigned long usecs){ __const_udelay(usecs * 0x000010c6); /* 2**32 / 1000000 */}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?