summaryrefslogtreecommitdiffstats
path: root/hw/apic.h
diff options
context:
space:
mode:
authorBlue Swirl2010-03-21 20:46:26 +0100
committerBlue Swirl2010-03-21 20:46:26 +0100
commitaa28b9bf9ba0904766b15e7ab8d62a76cb3225da (patch)
tree3afc291dfc479de4ca7613c1316bda8aa2389909 /hw/apic.h
parentRevert 'Fix build' (diff)
downloadqemu-aa28b9bf9ba0904766b15e7ab8d62a76cb3225da.tar.gz
qemu-aa28b9bf9ba0904766b15e7ab8d62a76cb3225da.tar.xz
qemu-aa28b9bf9ba0904766b15e7ab8d62a76cb3225da.zip
Move x86 specific PC declarations to a separate file
x86 definitions (especially CPUState uses) prevent many files from being compiled within libhw. Move x86 specific declarations (APIC stuff) to a separate file. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Diffstat (limited to 'hw/apic.h')
-rw-r--r--hw/apic.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/hw/apic.h b/hw/apic.h
new file mode 100644
index 0000000000..132fcab4d0
--- /dev/null
+++ b/hw/apic.h
@@ -0,0 +1,20 @@
+#ifndef APIC_H
+#define APIC_H
+
+typedef struct IOAPICState IOAPICState;
+void apic_deliver_irq(uint8_t dest, uint8_t dest_mode,
+ uint8_t delivery_mode,
+ uint8_t vector_num, uint8_t polarity,
+ uint8_t trigger_mode);
+int apic_init(CPUState *env);
+int apic_accept_pic_intr(CPUState *env);
+void apic_deliver_pic_intr(CPUState *env, int level);
+int apic_get_interrupt(CPUState *env);
+qemu_irq *ioapic_init(void);
+void ioapic_set_irq(void *opaque, int vector, int level);
+void apic_reset_irq_delivered(void);
+int apic_get_irq_delivered(void);
+
+int cpu_is_bsp(CPUState *env);
+
+#endif