version 1.1.1.1, 2008/06/03 10:38:45 |
version 1.1.1.1.2.1, 2008/08/13 17:12:30 |
|
|
int vector; /* vector number */ |
int vector; /* vector number */ |
int (*isr)(int); /* pointer to isr */ |
int (*isr)(int); /* pointer to isr */ |
void (*ist)(int); /* pointer to ist */ |
void (*ist)(int); /* pointer to ist */ |
u_int count; /* interrupt count */ |
int istreq; /* number of ist request */ |
int ist_request; /* number of ist request */ |
|
thread_t thread; /* thread id of ist */ |
thread_t thread; /* thread id of ist */ |
struct event ist_event; /* event for ist */ |
struct event istevt; /* event for ist */ |
}; |
}; |
|
|
/* |
/* |
|
|
*/ |
*/ |
#define ISTPRIO(prio) (PRIO_IST + (IPL_HIGH - prio)) |
#define ISTPRIO(prio) (PRIO_IST + (IPL_HIGH - prio)) |
|
|
extern int irq_attach(int, int, int, int (*)(int), void (*)(int)); |
extern irq_t irq_attach(int, int, int, int (*)(int), void (*)(int)); |
extern void irq_detach(int); |
extern void irq_detach(irq_t); |
extern void irq_lock(void); |
extern void irq_lock(void); |
extern void irq_unlock(void); |
extern void irq_unlock(void); |
extern void irq_handler(int); |
extern void irq_handler(int); |
extern void irq_dump(void); |
|
extern void irq_init(void); |
extern void irq_init(void); |
|
|
#endif /* !_IRQ_H */ |
#endif /* !_IRQ_H */ |