aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvi Kivity <avi@redhat.com>2009-05-20 18:48:28 +0300
committerAvi Kivity <avi@redhat.com>2009-05-20 19:10:44 +0300
commite2478f504fff20adf4a2eebe1401b791a62d6b33 (patch)
tree9ae21957aa7cfed42a7a0386fefd94c89ccbe698 /cpu-all.h
parentUse a bitmap for tracking used GSIs (diff)
parentkvm: add error message for when SMP is requested (diff)
downloadqemu-kvm-e2478f504fff20adf4a2eebe1401b791a62d6b33.tar.gz
qemu-kvm-e2478f504fff20adf4a2eebe1401b791a62d6b33.tar.bz2
qemu-kvm-e2478f504fff20adf4a2eebe1401b791a62d6b33.zip
Merge branch 'master' of git://git.sv.gnu.org/qemu
* 'master' of git://git.sv.gnu.org/qemu: (116 commits) kvm: add error message for when SMP is requested Remove initrd warning message initialize struct sigevent before timer_create Fix NULL alarm_timer pointer at exit keep initrd in below 4g area. migrate.c: migrate_fd_put_buffer: Do not busyloop: stop writing if EWOULDBLOCK kvm: work around supported cpuid ioctl() brokenness remove gcc 3.x requirement from documentation Remove dead code Format per CODING_STYLE Abort on attempts to allocate zero bytes Unbreak out-of-tree builds Hardware convenience library Disable >4G ram support on 32-bit targets Only define __llseek if it is going to be used Avoid implicit truncation compiler warnings Remove obsolete BIOS_SIZE from sysemu.h cris: First shot at qdev for CRIS interrupts. etrax: Don't keep the passed irq pointer. etrax: Remove unused eth irq line. ... Conflicts: Makefile Makefile.target block/raw-posix.c configure hw/boards.h hw/pc.h hw/pci.c hw/virtio-console.c target-ppc/cpu.h vl.c Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'cpu-all.h')
-rw-r--r--cpu-all.h85
1 files changed, 1 insertions, 84 deletions
diff --git a/cpu-all.h b/cpu-all.h
index d39b90f84..8c5e8be0d 100644
--- a/cpu-all.h
+++ b/cpu-all.h
@@ -21,10 +21,7 @@
#define CPU_ALL_H
#include "qemu-common.h"
-
-#if defined(__arm__) || defined(__sparc__) || defined(__mips__) || defined(__hppa__)
-#define WORDS_ALIGNED
-#endif
+#include "cpu-common.h"
/* some important defines:
*
@@ -39,7 +36,6 @@
* TARGET_WORDS_BIGENDIAN : same for target cpu
*/
-#include "bswap.h"
#include "softfloat.h"
#if defined(WORDS_BIGENDIAN) != defined(TARGET_WORDS_BIGENDIAN)
@@ -847,13 +843,6 @@ int cpu_inw(CPUState *env, int addr);
int cpu_inl(CPUState *env, int addr);
#endif
-/* address in the RAM (different from a physical address) */
-#ifdef CONFIG_KQEMU
-typedef uint32_t ram_addr_t;
-#else
-typedef unsigned long ram_addr_t;
-#endif
-
/* memory API */
extern int phys_ram_fd;
@@ -868,19 +857,8 @@ extern uint8_t *bios_mem;
3 flags. The ROMD code stores the page ram offset in iotlb entry,
so only a limited number of ids are avaiable. */
-#define IO_MEM_SHIFT 3
#define IO_MEM_NB_ENTRIES (1 << (TARGET_PAGE_BITS - IO_MEM_SHIFT))
-#define IO_MEM_RAM (0 << IO_MEM_SHIFT) /* hardcoded offset */
-#define IO_MEM_ROM (1 << IO_MEM_SHIFT) /* hardcoded offset */
-#define IO_MEM_UNASSIGNED (2 << IO_MEM_SHIFT)
-#define IO_MEM_NOTDIRTY (3 << IO_MEM_SHIFT)
-
-/* Acts like a ROM when read and like a device when written. */
-#define IO_MEM_ROMD (1)
-#define IO_MEM_SUBPAGE (2)
-#define IO_MEM_SUBWIDTH (4)
-
/* Flags stored in the low bits of the TLB virtual address. These are
defined so that fast path ram access is all zeros. */
/* Zero if TLB entry is valid. */
@@ -891,67 +869,6 @@ extern uint8_t *bios_mem;
/* Set if TLB entry is an IO callback. */
#define TLB_MMIO (1 << 5)
-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_offset(target_phys_addr_t start_addr,
- ram_addr_t size,
- ram_addr_t phys_offset,
- ram_addr_t region_offset);
-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);
-ram_addr_t qemu_ram_alloc(ram_addr_t);
-void qemu_ram_free(ram_addr_t addr);
-/* This should only be used for ram local to a device. */
-void *qemu_get_ram_ptr(ram_addr_t addr);
-/* This should not be used by devices. */
-ram_addr_t qemu_ram_addr_from_host(void *ptr);
-
-int cpu_register_io_memory(int io_index,
- CPUReadMemoryFunc **mem_read,
- CPUWriteMemoryFunc **mem_write,
- void *opaque);
-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,
- uint8_t *buf, int len)
-{
- cpu_physical_memory_rw(addr, buf, len, 0);
-}
-static inline void cpu_physical_memory_write(target_phys_addr_t addr,
- const uint8_t *buf, int len)
-{
- cpu_physical_memory_rw(addr, (uint8_t *)buf, len, 1);
-}
-void *cpu_physical_memory_map(target_phys_addr_t addr,
- target_phys_addr_t *plen,
- int is_write);
-void cpu_physical_memory_unmap(void *buffer, target_phys_addr_t len,
- int is_write, target_phys_addr_t access_len);
-void *cpu_register_map_client(void *opaque, void (*callback)(void *opaque));
-void cpu_unregister_map_client(void *cookie);
-
-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);
-uint64_t ldq_phys(target_phys_addr_t addr);
-void stl_phys_notdirty(target_phys_addr_t addr, uint32_t val);
-void stq_phys_notdirty(target_phys_addr_t addr, uint64_t val);
-void stb_phys(target_phys_addr_t addr, uint32_t val);
-void stw_phys(target_phys_addr_t addr, uint32_t val);
-void stl_phys(target_phys_addr_t addr, uint32_t val);
-void stq_phys(target_phys_addr_t addr, uint64_t val);
-
-void cpu_physical_memory_write_rom(target_phys_addr_t addr,
- const uint8_t *buf, int len);
int cpu_memory_rw_debug(CPUState *env, target_ulong addr,
uint8_t *buf, int len, int is_write);