diff --git a/cpu-common.h b/cpu-common.h index 72eb731c3e3f26bbf3a3fb9d95e470ac175bc3bb..8295e4fea4eceef55bfd78298802652dde0d5c2b 100644 --- a/cpu-common.h +++ b/cpu-common.h @@ -38,37 +38,7 @@ typedef unsigned long ram_addr_t; typedef void CPUWriteMemoryFunc(void *opaque, target_phys_addr_t addr, uint32_t value); typedef uint32_t CPUReadMemoryFunc(void *opaque, target_phys_addr_t addr); -void cpu_register_physical_memory_log(target_phys_addr_t start_addr, - ram_addr_t size, - ram_addr_t phys_offset, - ram_addr_t region_offset, - bool log_dirty); - -static inline void cpu_register_physical_memory_offset(target_phys_addr_t start_addr, - ram_addr_t size, - ram_addr_t phys_offset, - ram_addr_t region_offset) -{ - cpu_register_physical_memory_log(start_addr, size, phys_offset, - region_offset, false); -} - -static inline void cpu_register_physical_memory(target_phys_addr_t start_addr, - ram_addr_t size, - ram_addr_t phys_offset) -{ - cpu_register_physical_memory_offset(start_addr, size, phys_offset, 0); -} - ram_addr_t cpu_get_physical_page_desc(target_phys_addr_t addr); -struct MemoryRegion; -ram_addr_t qemu_ram_alloc_from_ptr(DeviceState *dev, const char *name, - ram_addr_t size, void *host, - struct MemoryRegion *mr); -ram_addr_t qemu_ram_alloc(DeviceState *dev, const char *name, ram_addr_t size, - struct MemoryRegion *mr); -void qemu_ram_free(ram_addr_t addr); -void qemu_ram_free_from_ptr(ram_addr_t addr); void qemu_ram_remap(ram_addr_t addr, ram_addr_t length); /* This should only be used for ram local to a device. */ void *qemu_get_ram_ptr(ram_addr_t addr); @@ -81,11 +51,6 @@ void qemu_put_ram_ptr(void *addr); int qemu_ram_addr_from_host(void *ptr, ram_addr_t *ram_addr); ram_addr_t qemu_ram_addr_from_host_nofail(void *ptr); -int cpu_register_io_memory(CPUReadMemoryFunc * const *mem_read, - CPUWriteMemoryFunc * const *mem_write, - void *opaque, enum device_endian endian); -void cpu_unregister_io_memory(int table_address); - void cpu_physical_memory_rw(target_phys_addr_t addr, uint8_t *buf, int len, int is_write); static inline void cpu_physical_memory_read(target_phys_addr_t addr, @@ -134,10 +99,6 @@ void cpu_unregister_phys_memory_client(CPUPhysMemoryClient *); * 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); diff --git a/exec-obsolete.h b/exec-obsolete.h new file mode 100644 index 0000000000000000000000000000000000000000..34b9fc56bde40d7ad660ffd55716f36892bcbb62 --- /dev/null +++ b/exec-obsolete.h @@ -0,0 +1,68 @@ +/* + * Declarations for obsolete exec.c functions + * + * Copyright 2011 Red Hat, Inc. and/or its affiliates + * + * Authors: + * Avi Kivity + * + * This work is licensed under the terms of the GNU GPL, version 2. See + * the COPYING file in the top-level directory. + * + */ + +/* + * This header is for use by exec.c and memory.c ONLY. Do not include it. + * The functions declared here will be removed soon. + */ + +#ifndef EXEC_OBSOLETE_H +#define EXEC_OBSOLETE_H + +#ifndef WANT_EXEC_OBSOLETE +#error Do not include exec-obsolete.h +#endif + +#ifndef CONFIG_USER_ONLY + +ram_addr_t qemu_ram_alloc_from_ptr(DeviceState *dev, const char *name, + ram_addr_t size, void *host, + MemoryRegion *mr); +ram_addr_t qemu_ram_alloc(DeviceState *dev, const char *name, ram_addr_t size, + MemoryRegion *mr); +void qemu_ram_free(ram_addr_t addr); +void qemu_ram_free_from_ptr(ram_addr_t addr); + +int cpu_register_io_memory(CPUReadMemoryFunc * const *mem_read, + CPUWriteMemoryFunc * const *mem_write, + void *opaque, enum device_endian endian); +void cpu_unregister_io_memory(int table_address); + +void cpu_register_physical_memory_log(target_phys_addr_t start_addr, + ram_addr_t size, + ram_addr_t phys_offset, + ram_addr_t region_offset, + bool log_dirty); + +static inline void cpu_register_physical_memory_offset(target_phys_addr_t start_addr, + ram_addr_t size, + ram_addr_t phys_offset, + ram_addr_t region_offset) +{ + cpu_register_physical_memory_log(start_addr, size, phys_offset, + region_offset, false); +} + +static inline void cpu_register_physical_memory(target_phys_addr_t start_addr, + ram_addr_t size, + ram_addr_t phys_offset) +{ + cpu_register_physical_memory_offset(start_addr, size, phys_offset, 0); +} + +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); + +#endif + +#endif diff --git a/exec.c b/exec.c index fbcb1bf02810e82e55e53d49d79be7f3432e108c..32782b48c9b9832bea5543e5a69f81a9ffec282d 100644 --- a/exec.c +++ b/exec.c @@ -57,6 +57,9 @@ #include "trace.h" #endif +#define WANT_EXEC_OBSOLETE +#include "exec-obsolete.h" + //#define DEBUG_TB_INVALIDATE //#define DEBUG_FLUSH //#define DEBUG_TLB diff --git a/hw/etraxfs_eth.c b/hw/etraxfs_eth.c index 5ac2d15fa1f86e767206dcea10e2f4d3918fa76c..b5252580a57510ee31e39880dbb9418c78fce0b6 100644 --- a/hw/etraxfs_eth.c +++ b/hw/etraxfs_eth.c @@ -323,7 +323,6 @@ struct fs_eth MemoryRegion mmio; NICState *nic; NICConf conf; - int ethregs; /* Two addrs in the filter. */ uint8_t macaddr[2][6]; @@ -571,8 +570,6 @@ static void eth_cleanup(VLANClientState *nc) { struct fs_eth *eth = DO_UPCAST(NICState, nc, nc)->opaque; - cpu_unregister_io_memory(eth->ethregs); - /* Disconnect the client. */ eth->dma_out->client.push = NULL; eth->dma_out->client.opaque = NULL; diff --git a/memory.c b/memory.c index 37e4f0905b8e3e36facfff8b4c34d69a9ad1427e..a7e615ad15f018fec2dbc01157801c9237d77153 100644 --- a/memory.c +++ b/memory.c @@ -18,6 +18,9 @@ #include "kvm.h" #include +#define WANT_EXEC_OBSOLETE +#include "exec-obsolete.h" + unsigned memory_region_transaction_depth = 0; static bool memory_region_update_pending = false;