aboutsummaryrefslogtreecommitdiff
path: root/kernel/include
diff options
context:
space:
mode:
authorFranklin Wei <frankhwei536@gmail.com>2015-02-11 17:13:26 -0500
committerFranklin Wei <frankhwei536@gmail.com>2015-02-11 17:13:26 -0500
commite3305e8f7c119c83fd04f1995e07ff71a1110887 (patch)
treef95921215c215a60d80b1be068b2cccd72459ee2 /kernel/include
parent90fda5287e3dae56508a4b31e1bc4e29cd83e377 (diff)
downloadkappa-e3305e8f7c119c83fd04f1995e07ff71a1110887.zip
kappa-e3305e8f7c119c83fd04f1995e07ff71a1110887.tar.gz
kappa-e3305e8f7c119c83fd04f1995e07ff71a1110887.tar.bz2
kappa-e3305e8f7c119c83fd04f1995e07ff71a1110887.tar.xz
optimize interrupt performance
Diffstat (limited to 'kernel/include')
-rw-r--r--kernel/include/irq.h2
-rw-r--r--kernel/include/isr.h4
2 files changed, 2 insertions, 4 deletions
diff --git a/kernel/include/irq.h b/kernel/include/irq.h
index 8fac8e1..de1d545 100644
--- a/kernel/include/irq.h
+++ b/kernel/include/irq.h
@@ -15,6 +15,4 @@ extern void _irq13(void);
extern void _irq14(void);
extern void _irq15(void);
-struct regs_t;
-
void irq_init(void);
diff --git a/kernel/include/isr.h b/kernel/include/isr.h
index de81cd2..4cc7f1b 100644
--- a/kernel/include/isr.h
+++ b/kernel/include/isr.h
@@ -41,11 +41,11 @@ void isr_init(void);
struct regs_t {
uint32_t gs, fs, es, ds; /* pushed the segs last */
uint32_t edi, esi, ebp, esp, ebx, edx, ecx, eax; /* pushed by 'pusha' */
- uint32_t err_code; /* exceptions push this */
uint32_t int_no; /* interrupt stubs do this */
+ uint32_t err_code; /* exceptions push this */
uint32_t eip, cs, eflags, useresp, ss; /* pushed by the processor automatically */
} __attribute__((packed));
#define IRQ(x) (32+x)
-void set_interrupt_handler(uint8_t interrupt, void (*func)(struct regs_t));
+void set_interrupt_handler(uint8_t interrupt, void (*func)(struct regs_t*));