From 845773ab03a8dde681ff1b929bbb41e67d0131a6 Mon Sep 17 00:00:00 2001 From: Isaku Yamahata Date: Fri, 14 May 2010 16:29:15 +0900 Subject: 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 Acked-by: Gerd Hoffmann Signed-off-by: Blue Swirl --- hw/pc.h | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'hw/pc.h') diff --git a/hw/pc.h b/hw/pc.h index abf02decac..8cfec6c0dc 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); -- cgit v1.2.3-55-g7522