diff options
author | Paul Brook <paul@codesourcery.com> | 2009-05-19 16:17:58 +0100 |
---|---|---|
committer | Paul Brook <paul@codesourcery.com> | 2009-05-19 16:17:58 +0100 |
commit | 1ad2134f914dfd4c8f92307c94c9a5a1e28f0059 (patch) | |
tree | fafeb00db8346df20b35434ea3f1eaad1fd67832 /hw | |
parent | 8a637d444387bbdb60eff803d321244487521c86 (diff) |
Hardware convenience library
The only target dependency for most hardware is sizeof(target_phys_addr_t).
Build these files into a convenience library, and use that instead of
building for every target.
Remove and poison various target specific macros to avoid bogus target
dependencies creeping back in.
Big/Little endian is not handled because devices should not know or care
about this to start with.
Signed-off-by: Paul Brook <paul@codesourcery.com>
Diffstat (limited to 'hw')
-rw-r--r-- | hw/etraxfs_pic.c | 4 | ||||
-rw-r--r-- | hw/hw.h | 7 | ||||
-rw-r--r-- | hw/poison.h | 27 | ||||
-rw-r--r-- | hw/virtio-pci.c | 2 |
4 files changed, 37 insertions, 3 deletions
diff --git a/hw/etraxfs_pic.c b/hw/etraxfs_pic.c index 9f650de28d..da9d0c3be6 100644 --- a/hw/etraxfs_pic.c +++ b/hw/etraxfs_pic.c @@ -24,8 +24,8 @@ #include "sysbus.h" #include "hw.h" -#include "pc.h" -#include "etraxfs.h" +//#include "pc.h" +//#include "etraxfs.h" #define D(x) @@ -3,6 +3,13 @@ #define QEMU_HW_H #include "qemu-common.h" + +#if defined(TARGET_PHYS_ADDR_BITS) && !defined(NEED_CPU_H) +#include "targphys.h" +#include "poison.h" +#include "cpu-common.h" +#endif + #include "irq.h" /* VM Load/Save */ diff --git a/hw/poison.h b/hw/poison.h new file mode 100644 index 0000000000..94abff2f1a --- /dev/null +++ b/hw/poison.h @@ -0,0 +1,27 @@ +/* Poison identifiers that should not be used when building + target independent device code. */ + +#ifndef HW_POISON_H +#define HW_POISON_H +#ifdef __GNUC__ + +#pragma GCC poison TARGET_I386 +#pragma GCC poison TARGET_X86_64 +#pragma GCC poison TARGET_ALPHA +#pragma GCC poison TARGET_ARM +#pragma GCC poison TARGET_CRIS +#pragma GCC poison TARGET_M68K +#pragma GCC poison TARGET_MIPS +#pragma GCC poison TARGET_MIPS64 +#pragma GCC poison TARGET_PPC +#pragma GCC poison TARGET_PPCEMB +#pragma GCC poison TARGET_PPC64 +#pragma GCC poison TARGET_ABI32 +#pragma GCC poison TARGET_SH4 +#pragma GCC poison TARGET_SPARC +#pragma GCC poison TARGET_SPARC64 + +#pragma GCC poison TARGET_WORDS_BIGENDIAN + +#endif +#endif diff --git a/hw/virtio-pci.c b/hw/virtio-pci.c index ebc84cc2fe..c072423dcf 100644 --- a/hw/virtio-pci.c +++ b/hw/virtio-pci.c @@ -17,7 +17,7 @@ #include "virtio.h" #include "pci.h" -#include "sysemu.h" +//#include "sysemu.h" /* from Linux's linux/virtio_pci.h */ |