summaryrefslogtreecommitdiffstats
path: root/hw/pc.h
diff options
context:
space:
mode:
authorIsaku Yamahata <yamahata@valinux.co.jp>2010-05-14 16:29:15 +0900
committerBlue Swirl <blauwirbel@gmail.com>2010-05-15 15:53:25 +0000
commit845773ab03a8dde681ff1b929bbb41e67d0131a6 (patch)
tree379bc2f98bd3c5b5b5fd13860fb982983fa3b73d /hw/pc.h
parente3a5cf425032e03930a650788332e3d0ff8fc9c7 (diff)
downloadhqemu-845773ab03a8dde681ff1b929bbb41e67d0131a6.zip
hqemu-845773ab03a8dde681ff1b929bbb41e67d0131a6.tar.gz
pc: split out piix specific part from pc.c into pc_piix.c
Finally, we can safely split out the piix specific part from pc.c into pc_piix.c. Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp> Acked-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Diffstat (limited to 'hw/pc.h')
-rw-r--r--hw/pc.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/hw/pc.h b/hw/pc.h
index abf02de..8cfec6c 100644
--- a/hw/pc.h
+++ b/hw/pc.h
@@ -3,6 +3,8 @@
#include "qemu-common.h"
#include "ioport.h"
+#include "isa.h"
+#include "fdc.h"
/* PC-style peripherals (also used by other machines). */
@@ -36,6 +38,14 @@ uint32_t pic_intack_read(PicState2 *s);
void pic_info(Monitor *mon);
void irq_info(Monitor *mon);
+/* ISA */
+typedef struct isa_irq_state {
+ qemu_irq *i8259;
+ qemu_irq *ioapic;
+} IsaIrqState;
+
+void isa_irq_handler(void *opaque, int n, int level);
+
/* i8254.c */
#define PIT_FREQ 1193182
@@ -78,6 +88,29 @@ void rtc_set_date(RTCState *s, const struct tm *tm);
extern int fd_bootchk;
void pc_register_ferr_irq(qemu_irq irq);
+void pc_cmos_set_s3_resume(void *opaque, int irq, int level);
+void pc_acpi_smi_interrupt(void *opaque, int irq, int level);
+
+void pc_cpus_init(const char *cpu_model);
+void pc_memory_init(ram_addr_t ram_size,
+ const char *kernel_filename,
+ const char *kernel_cmdline,
+ const char *initrd_filename,
+ ram_addr_t *below_4g_mem_size_p,
+ ram_addr_t *above_4g_mem_size_p);
+qemu_irq *pc_allocate_cpu_irq(void);
+void pc_vga_init(PCIBus *pci_bus);
+void pc_basic_device_init(qemu_irq *isa_irq,
+ FDCtrl **floppy_controller,
+ RTCState **rtc_state);
+void pc_init_ne2k_isa(NICInfo *nd);
+#ifdef HAS_AUDIO
+void pc_audio_init (PCIBus *pci_bus, qemu_irq *pic);
+#endif
+void pc_cmos_init(ram_addr_t ram_size, ram_addr_t above_4g_mem_size,
+ const char *boot_device, DriveInfo **hd_table,
+ FDCtrl *floppy_controller, RTCState *s);
+void pc_pci_device_init(PCIBus *pci_bus);
void ioport_set_a20(int enable);
int ioport_get_a20(void);
OpenPOWER on IntegriCloud