summaryrefslogtreecommitdiffstats
path: root/sys/amd64/include/intr_machdep.h
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2004-05-16 20:30:47 +0000
committerpeter <peter@FreeBSD.org>2004-05-16 20:30:47 +0000
commitc6a708cab1fe9ed93c6074b3b8eb8d13d2444714 (patch)
treeac59674841a63dcc64ad5a52b994c40c72da21fc /sys/amd64/include/intr_machdep.h
parent5c28654d4937a2c64c6d99289b78f90d81a8c58a (diff)
downloadFreeBSD-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.h9
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);
OpenPOWER on IntegriCloud