]> git.proxmox.com Git - mirror_qemu.git/commitdiff
Move x86 specific PC declarations to a separate file
authorBlue Swirl <blauwirbel@gmail.com>
Sun, 21 Mar 2010 19:46:26 +0000 (19:46 +0000)
committerBlue Swirl <blauwirbel@gmail.com>
Sun, 21 Mar 2010 19:46:26 +0000 (19:46 +0000)
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>
hw/apic.c
hw/apic.h [new file with mode: 0644]
hw/ioapic.c
hw/mc146818rtc.c
hw/pc.c
hw/pc.h

index 3c90f4c84536593d2e73411243d779bc836cd388..9029dad614c17b650584455986e928cd38f96432 100644 (file)
--- a/hw/apic.c
+++ b/hw/apic.c
@@ -18,6 +18,7 @@
  */
 #include "hw.h"
 #include "pc.h"
+#include "apic.h"
 #include "pci.h"
 #include "msix.h"
 #include "qemu-timer.h"
diff --git a/hw/apic.h b/hw/apic.h
new file mode 100644 (file)
index 0000000..132fcab
--- /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
index b0ad78f2412f04ff46ebbde90128c79834627323..7ad8018518d2f954ab285df077066640b5ddb80a 100644 (file)
@@ -22,6 +22,7 @@
 
 #include "hw.h"
 #include "pc.h"
+#include "apic.h"
 #include "qemu-timer.h"
 #include "host-utils.h"
 
index a53785593f7ee365dfe41207af0d60ce79c43b06..89a423e08f8c2e7b4e42687b322aead1de9d04ee 100644 (file)
@@ -25,6 +25,7 @@
 #include "qemu-timer.h"
 #include "sysemu.h"
 #include "pc.h"
+#include "apic.h"
 #include "isa.h"
 #include "hpet_emul.h"
 
diff --git a/hw/pc.c b/hw/pc.c
index 2b3063df8d743406366596804e474ae6553395c8..ba14df067d96023f36951a4716ff1d3ccd0fe64e 100644 (file)
--- a/hw/pc.c
+++ b/hw/pc.c
@@ -23,6 +23,7 @@
  */
 #include "hw.h"
 #include "pc.h"
+#include "apic.h"
 #include "fdc.h"
 #include "pci.h"
 #include "vmware_vga.h"
diff --git a/hw/pc.h b/hw/pc.h
index d54959aa59d774ffbb503b16a45ed29570f652af..5bbe39abfd53d480aa0c797893b6add56dd79a01 100644 (file)
--- a/hw/pc.h
+++ b/hw/pc.h
@@ -35,21 +35,6 @@ uint32_t pic_intack_read(PicState2 *s);
 void pic_info(Monitor *mon);
 void irq_info(Monitor *mon);
 
-/* APIC */
-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);
-
 /* i8254.c */
 
 #define PIT_FREQ 1193182
@@ -150,8 +135,6 @@ void isa_cirrus_vga_init(void);
 
 void isa_ne2000_init(int base, int irq, NICInfo *nd);
 
-int cpu_is_bsp(CPUState *env);
-
 /* e820 types */
 #define E820_RAM        1
 #define E820_RESERVED   2