1,5 → 1,6 |
#include<asm/bitops.h> |
#include<kernel/kern.h> |
#include <time.h> |
|
struct device *irq2dev_map[16] = {0, 0, /* ... zeroed */}; |
|
17,6 → 18,7 |
int autoirq_setup(int waittime) |
{ |
int i; |
struct timespec delay; |
|
handled = 0; |
|
27,7 → 29,9 |
} |
|
/* Hang out at least <waittime> jiffies waiting for bogus IRQ hits. */ |
task_delay(waittime); |
delay.tv_sec = waittime/1000000; |
delay.tv_nsec = (waittime%1000000)*1000; |
nanosleep(&delay, NULL); |
|
return handled; |
} |
34,10 → 38,13 |
|
int autoirq_report(int waittime) |
{ |
struct timespec delay; |
int i; |
|
|
/* Hang out at least <waittime> jiffies waiting for the IRQ. */ |
task_delay(waittime); |
delay.tv_sec=waittime/1000000; |
delay.tv_nsec=(waittime%1000000)*1000; |
nanosleep(&delay, NULL); |
|
/* Retract the irq handlers that we installed. */ |
for (i = 0; i < 16; i++) { |