projects
/
seabios.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
grml...
[seabios.git]
/
src
/
pic.h
diff --git
a/src/pic.h
b/src/pic.h
index 586ef3831f78a04c8961232b52c627f02858252a..c75af3e665d08efffc93db87f4ad5099689cdf14 100644
(file)
--- a/
src/pic.h
+++ b/
src/pic.h
@@
-8,6
+8,7
@@
#define __PIC_H
#include "ioport.h" // PORT_PIC*
#define __PIC_H
#include "ioport.h" // PORT_PIC*
+#include "biosvar.h" // SET_IVT
// PORT_PIC1 bitdefs
#define PIC1_IRQ0 (1<<0)
// PORT_PIC1 bitdefs
#define PIC1_IRQ0 (1<<0)
@@
-76,11
+77,8
@@
get_pic2_isr(void)
return inb(PORT_PIC2_CMD);
}
return inb(PORT_PIC2_CMD);
}
-// post.c
-void __set_irq(int vector, void *loc);
-
static inline void
static inline void
-
__enable_hwirq(int hwirq, void (*func)(void)
)
+
enable_hwirq(int hwirq, struct segoff_s func
)
{
int vector;
if (hwirq < 8) {
{
int vector;
if (hwirq < 8) {
@@
-90,14
+88,9
@@
__enable_hwirq(int hwirq, void (*func)(void))
unmask_pic2(1 << (hwirq - 8));
vector = 0x70 + hwirq - 8;
}
unmask_pic2(1 << (hwirq - 8));
vector = 0x70 + hwirq - 8;
}
-
__set_irq
(vector, func);
+
SET_IVT
(vector, func);
}
}
-#define enable_hwirq(irq, func) do { \
- extern void func (void); \
- __enable_hwirq(irq, func); \
- } while (0)
-
void set_pics(u8 irq0, u8 irq8);
void pic_setup(void);
void set_pics(u8 irq0, u8 irq8);
void pic_setup(void);