From 6842a08ee0f59dd00adcd51fda4705c412b6a0dd Mon Sep 17 00:00:00 2001 From: Blue Swirl Date: Sun, 21 Mar 2010 19:47:13 +0000 Subject: [PATCH] Compile pci only once Move coalesced_mmio declarations to a more accessible location. Signed-off-by: Blue Swirl --- Makefile.objs | 2 +- Makefile.target | 2 +- cpu-all.h | 12 ------------ cpu-common.h | 11 +++++++++++ 4 files changed, 13 insertions(+), 14 deletions(-) diff --git a/Makefile.objs b/Makefile.objs index 1eb7e19d87..dd33ca4c78 100644 --- a/Makefile.objs +++ b/Makefile.objs @@ -129,7 +129,7 @@ user-obj-y += cutils.o cache-utils.o hw-obj-y = hw-obj-y += loader.o hw-obj-y += virtio.o virtio-console.o -hw-obj-y += fw_cfg.o +hw-obj-y += fw_cfg.o pci.o hw-obj-y += watchdog.o hw-obj-$(CONFIG_ISA_MMIO) += isa_mmio.o hw-obj-$(CONFIG_ECC) += ecc.o diff --git a/Makefile.target b/Makefile.target index b42dae2e0f..fc8589c462 100644 --- a/Makefile.target +++ b/Makefile.target @@ -161,7 +161,7 @@ endif #CONFIG_BSD_USER # System emulator target ifdef CONFIG_SOFTMMU -obj-y = vl.o monitor.o pci.o pci_host.o pcie_host.o machine.o gdbstub.o +obj-y = vl.o monitor.o pci_host.o pcie_host.o machine.o gdbstub.o obj-y += qemu-timer.o # virtio has to be here due to weird dependency between PCI and virtio-net. # need to fix this properly diff --git a/cpu-all.h b/cpu-all.h index 897cd448a0..f281a914ed 100644 --- a/cpu-all.h +++ b/cpu-all.h @@ -917,18 +917,6 @@ int cpu_physical_sync_dirty_bitmap(target_phys_addr_t start_addr, void dump_exec_info(FILE *f, int (*cpu_fprintf)(FILE *f, const char *fmt, ...)); - -/* Coalesced MMIO regions are areas where write operations can be reordered. - * This usually implies that write operations are side-effect free. This allows - * batching which can make a major impact on performance when using - * virtualization. - */ -void qemu_register_coalesced_mmio(target_phys_addr_t addr, ram_addr_t size); - -void qemu_unregister_coalesced_mmio(target_phys_addr_t addr, ram_addr_t size); - -void qemu_flush_coalesced_mmio_buffer(void); - #endif /* !CONFIG_USER_ONLY */ int cpu_memory_rw_debug(CPUState *env, target_ulong addr, diff --git a/cpu-common.h b/cpu-common.h index f53690ac8c..bb053007f7 100644 --- a/cpu-common.h +++ b/cpu-common.h @@ -82,6 +82,17 @@ struct CPUPhysMemoryClient { void cpu_register_phys_memory_client(CPUPhysMemoryClient *); void cpu_unregister_phys_memory_client(CPUPhysMemoryClient *); +/* Coalesced MMIO regions are areas where write operations can be reordered. + * This usually implies that write operations are side-effect free. This allows + * batching which can make a major impact on performance when using + * virtualization. + */ +void qemu_register_coalesced_mmio(target_phys_addr_t addr, ram_addr_t size); + +void qemu_unregister_coalesced_mmio(target_phys_addr_t addr, ram_addr_t size); + +void qemu_flush_coalesced_mmio_buffer(void); + uint32_t ldub_phys(target_phys_addr_t addr); uint32_t lduw_phys(target_phys_addr_t addr); uint32_t ldl_phys(target_phys_addr_t addr);