]>
Commit | Line | Data |
---|---|---|
87ecb68b PB |
1 | /* Declarations for use by hardware emulation. */ |
2 | #ifndef QEMU_HW_H | |
3 | #define QEMU_HW_H | |
4 | ||
5 | #include "qemu-common.h" | |
1ad2134f | 6 | |
4be403c8 | 7 | #if !defined(CONFIG_USER_ONLY) && !defined(NEED_CPU_H) |
022c62cb | 8 | #include "exec/cpu-common.h" |
1ad2134f PB |
9 | #endif |
10 | ||
022c62cb | 11 | #include "exec/ioport.h" |
83c9f4ca | 12 | #include "hw/irq.h" |
737e150e | 13 | #include "block/aio.h" |
caf71f86 | 14 | #include "migration/vmstate.h" |
1de7afc9 | 15 | #include "qemu/log.h" |
b6c4f71f | 16 | |
87ecb68b PB |
17 | #ifdef NEED_CPU_H |
18 | #if TARGET_LONG_BITS == 64 | |
19 | #define qemu_put_betl qemu_put_be64 | |
20 | #define qemu_get_betl qemu_get_be64 | |
21 | #define qemu_put_betls qemu_put_be64s | |
22 | #define qemu_get_betls qemu_get_be64s | |
b6c4f71f BS |
23 | #define qemu_put_sbetl qemu_put_sbe64 |
24 | #define qemu_get_sbetl qemu_get_sbe64 | |
25 | #define qemu_put_sbetls qemu_put_sbe64s | |
26 | #define qemu_get_sbetls qemu_get_sbe64s | |
87ecb68b PB |
27 | #else |
28 | #define qemu_put_betl qemu_put_be32 | |
29 | #define qemu_get_betl qemu_get_be32 | |
30 | #define qemu_put_betls qemu_put_be32s | |
31 | #define qemu_get_betls qemu_get_be32s | |
b6c4f71f BS |
32 | #define qemu_put_sbetl qemu_put_sbe32 |
33 | #define qemu_get_sbetl qemu_get_sbe32 | |
34 | #define qemu_put_sbetls qemu_put_sbe32s | |
35 | #define qemu_get_sbetls qemu_get_sbe32s | |
87ecb68b PB |
36 | #endif |
37 | #endif | |
38 | ||
87ecb68b PB |
39 | typedef void QEMUResetHandler(void *opaque); |
40 | ||
a08d4367 | 41 | void qemu_register_reset(QEMUResetHandler *func, void *opaque); |
dda9b29f | 42 | void qemu_unregister_reset(QEMUResetHandler *func, void *opaque); |
87ecb68b | 43 | |
f89a8e4e JQ |
44 | #ifdef NEED_CPU_H |
45 | #if TARGET_LONG_BITS == 64 | |
46 | #define VMSTATE_UINTTL_V(_f, _s, _v) \ | |
47 | VMSTATE_UINT64_V(_f, _s, _v) | |
d58f5598 DG |
48 | #define VMSTATE_UINTTL_EQUAL_V(_f, _s, _v) \ |
49 | VMSTATE_UINT64_EQUAL_V(_f, _s, _v) | |
f89a8e4e JQ |
50 | #define VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, _v) \ |
51 | VMSTATE_UINT64_ARRAY_V(_f, _s, _n, _v) | |
52 | #else | |
53 | #define VMSTATE_UINTTL_V(_f, _s, _v) \ | |
54 | VMSTATE_UINT32_V(_f, _s, _v) | |
d58f5598 DG |
55 | #define VMSTATE_UINTTL_EQUAL_V(_f, _s, _v) \ |
56 | VMSTATE_UINT32_EQUAL_V(_f, _s, _v) | |
f89a8e4e JQ |
57 | #define VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, _v) \ |
58 | VMSTATE_UINT32_ARRAY_V(_f, _s, _n, _v) | |
59 | #endif | |
60 | #define VMSTATE_UINTTL(_f, _s) \ | |
61 | VMSTATE_UINTTL_V(_f, _s, 0) | |
d58f5598 DG |
62 | #define VMSTATE_UINTTL_EQUAL(_f, _s) \ |
63 | VMSTATE_UINTTL_EQUAL_V(_f, _s, 0) | |
f89a8e4e JQ |
64 | #define VMSTATE_UINTTL_ARRAY(_f, _s, _n) \ |
65 | VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, 0) | |
66 | ||
67 | #endif | |
68 | ||
87ecb68b | 69 | #endif |