aboutsummaryrefslogtreecommitdiff
path: root/vl.h
diff options
context:
space:
mode:
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2005-07-02 18:11:44 +0000
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2005-07-02 18:11:44 +0000
commit3de388f676e936097f99fb58e8a58c5461eb696e (patch)
treeab63f67817bf6bb17c1245bbc2e08cae7fe8d2de /vl.h
parent73133662c6db9e58d02716d9517b3947c853de68 (diff)
more generic i8259 support
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1487 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'vl.h')
-rw-r--r--vl.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/vl.h b/vl.h
index 64e9777a4f..6f6aba75b8 100644
--- a/vl.h
+++ b/vl.h
@@ -469,6 +469,7 @@ typedef struct QEMUMachine {
int qemu_register_machine(QEMUMachine *m);
typedef void SetIRQFunc(void *opaque, int irq_num, int level);
+typedef void IRQRequestFunc(void *opaque, int level);
/* ISA bus */
@@ -687,10 +688,14 @@ ParallelState *parallel_init(int base, int irq, CharDriverState *chr);
/* i8259.c */
+typedef struct PicState2 PicState2;
+extern PicState2 *isa_pic;
void pic_set_irq(int irq, int level);
void pic_set_irq_new(void *opaque, int irq, int level);
-void pic_init(void);
-uint32_t pic_intack_read(CPUState *env);
+PicState2 *pic_init(IRQRequestFunc *irq_request, void *irq_request_opaque);
+int pic_read_irq(PicState2 *s);
+void pic_update_irq(PicState2 *s);
+uint32_t pic_intack_read(PicState2 *s);
void pic_info(void);
void irq_info(void);