diff options
author | peter <peter@FreeBSD.org> | 2004-05-16 20:30:47 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 2004-05-16 20:30:47 +0000 |
commit | c6a708cab1fe9ed93c6074b3b8eb8d13d2444714 (patch) | |
tree | ac59674841a63dcc64ad5a52b994c40c72da21fc /sys/amd64/include/intr_machdep.h | |
parent | 5c28654d4937a2c64c6d99289b78f90d81a8c58a (diff) | |
download | FreeBSD-src-c6a708cab1fe9ed93c6074b3b8eb8d13d2444714.zip FreeBSD-src-c6a708cab1fe9ed93c6074b3b8eb8d13d2444714.tar.gz |
MFi386: numerous interrupt and acpi updates
Diffstat (limited to 'sys/amd64/include/intr_machdep.h')
-rw-r--r-- | sys/amd64/include/intr_machdep.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sys/amd64/include/intr_machdep.h b/sys/amd64/include/intr_machdep.h index 0aacd91..d8256c9 100644 --- a/sys/amd64/include/intr_machdep.h +++ b/sys/amd64/include/intr_machdep.h @@ -57,6 +57,8 @@ struct pic { int (*pic_source_pending)(struct intsrc *); void (*pic_suspend)(struct intsrc *); void (*pic_resume)(struct intsrc *); + int (*pic_config_intr)(struct intsrc *, enum intr_trigger, + enum intr_polarity); }; /* @@ -77,8 +79,15 @@ struct intrframe; extern struct mtx icu_lock; +/* XXX: The elcr_* prototypes probably belong somewhere else. */ +int elcr_probe(void); +enum intr_trigger elcr_read_trigger(u_int irq); +void elcr_resume(void); +void elcr_write_trigger(u_int irq, enum intr_trigger trigger); int intr_add_handler(const char *name, int vector, driver_intr_t handler, void *arg, enum intr_type flags, void **cookiep); +int intr_config_intr(int vector, enum intr_trigger trig, + enum intr_polarity pol); void intr_execute_handlers(struct intsrc *isrc, struct intrframe *iframe); struct intsrc *intr_lookup_source(int vector); int intr_register_source(struct intsrc *isrc); |