summaryrefslogtreecommitdiff
path: root/firmware/src/os/system_irq.h
diff options
context:
space:
mode:
authorlaforge <laforge@6dc7ffe9-61d6-0310-9af1-9938baff3ed1>2006-10-01 21:45:43 +0000
committerlaforge <laforge@6dc7ffe9-61d6-0310-9af1-9938baff3ed1>2006-10-01 21:45:43 +0000
commitbfff30bfec74c508e3f8904f8732799f30e6829d (patch)
treec104e38c808859adf0c7edcfd76873ce07b75f3b /firmware/src/os/system_irq.h
parent2b55faec5a6e3a4d2130ad341f01cd55116b64c3 (diff)
- add proper system interrupt (shared) demultiplexing code
- port debug unit, watchdog timer, periodic interval timer to system_irq.c git-svn-id: https://svn.openpcd.org:2342/trunk@252 6dc7ffe9-61d6-0310-9af1-9938baff3ed1
Diffstat (limited to 'firmware/src/os/system_irq.h')
-rw-r--r--firmware/src/os/system_irq.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/firmware/src/os/system_irq.h b/firmware/src/os/system_irq.h
new file mode 100644
index 0000000..195b7b9
--- /dev/null
+++ b/firmware/src/os/system_irq.h
@@ -0,0 +1,22 @@
+#ifndef _SYSTEM_IRQ_H
+#define _SYSTEM_IRQ_H
+
+#include <sys/types.h>
+
+enum sysirqs {
+ AT91SAM7_SYSIRQ_PIT = 0,
+ AT91SAM7_SYSIRQ_DBGU = 1,
+ AT91SAM7_SYSIRQ_EFC = 2,
+ AT91SAM7_SYSIRQ_WDT = 3,
+ AT91SAM7_SYSIRQ_RTT = 4,
+ AT91SAM7_SYSIRQ_RSTC = 5,
+ AT91SAM7_SYSIRQ_PMC = 6,
+ AT91SAM7_SYSIRQ_COUNT
+};
+
+typedef void sysirq_hdlr(u_int32_t sr);
+
+extern void sysirq_register(enum sysirqs irq, sysirq_hdlr *hdlr);
+extern void sysirq_init(void);
+
+#endif
personal git repositories of Harald Welte. Your mileage may vary