root / include / hw / hw.h @ 083b79c9
History | View | Annotate | Download (2.5 kB)
1 |
/* Declarations for use by hardware emulation. */
|
---|---|
2 |
#ifndef QEMU_HW_H
|
3 |
#define QEMU_HW_H
|
4 |
|
5 |
#include "qemu-common.h" |
6 |
|
7 |
#if !defined(CONFIG_USER_ONLY) && !defined(NEED_CPU_H)
|
8 |
#include "exec/cpu-common.h" |
9 |
#endif
|
10 |
|
11 |
#include "exec/ioport.h" |
12 |
#include "hw/irq.h" |
13 |
#include "block/aio.h" |
14 |
#include "migration/qemu-file.h" |
15 |
#include "migration/vmstate.h" |
16 |
#include "qemu/log.h" |
17 |
|
18 |
#ifdef NEED_CPU_H
|
19 |
#if TARGET_LONG_BITS == 64 |
20 |
#define qemu_put_betl qemu_put_be64
|
21 |
#define qemu_get_betl qemu_get_be64
|
22 |
#define qemu_put_betls qemu_put_be64s
|
23 |
#define qemu_get_betls qemu_get_be64s
|
24 |
#define qemu_put_sbetl qemu_put_sbe64
|
25 |
#define qemu_get_sbetl qemu_get_sbe64
|
26 |
#define qemu_put_sbetls qemu_put_sbe64s
|
27 |
#define qemu_get_sbetls qemu_get_sbe64s
|
28 |
#else
|
29 |
#define qemu_put_betl qemu_put_be32
|
30 |
#define qemu_get_betl qemu_get_be32
|
31 |
#define qemu_put_betls qemu_put_be32s
|
32 |
#define qemu_get_betls qemu_get_be32s
|
33 |
#define qemu_put_sbetl qemu_put_sbe32
|
34 |
#define qemu_get_sbetl qemu_get_sbe32
|
35 |
#define qemu_put_sbetls qemu_put_sbe32s
|
36 |
#define qemu_get_sbetls qemu_get_sbe32s
|
37 |
#endif
|
38 |
#endif
|
39 |
|
40 |
typedef void QEMUResetHandler(void *opaque); |
41 |
|
42 |
void qemu_register_reset(QEMUResetHandler *func, void *opaque); |
43 |
void qemu_unregister_reset(QEMUResetHandler *func, void *opaque); |
44 |
|
45 |
/* handler to set the boot_device order for a specific type of QEMUMachine */
|
46 |
/* return 0 if success */
|
47 |
typedef int QEMUBootSetHandler(void *opaque, const char *boot_order); |
48 |
void qemu_register_boot_set(QEMUBootSetHandler *func, void *opaque); |
49 |
int qemu_boot_set(const char *boot_order); |
50 |
|
51 |
#ifdef NEED_CPU_H
|
52 |
#if TARGET_LONG_BITS == 64 |
53 |
#define VMSTATE_UINTTL_V(_f, _s, _v) \
|
54 |
VMSTATE_UINT64_V(_f, _s, _v) |
55 |
#define VMSTATE_UINTTL_EQUAL_V(_f, _s, _v) \
|
56 |
VMSTATE_UINT64_EQUAL_V(_f, _s, _v) |
57 |
#define VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, _v) \
|
58 |
VMSTATE_UINT64_ARRAY_V(_f, _s, _n, _v) |
59 |
#else
|
60 |
#define VMSTATE_UINTTL_V(_f, _s, _v) \
|
61 |
VMSTATE_UINT32_V(_f, _s, _v) |
62 |
#define VMSTATE_UINTTL_EQUAL_V(_f, _s, _v) \
|
63 |
VMSTATE_UINT32_EQUAL_V(_f, _s, _v) |
64 |
#define VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, _v) \
|
65 |
VMSTATE_UINT32_ARRAY_V(_f, _s, _n, _v) |
66 |
#endif
|
67 |
#define VMSTATE_UINTTL(_f, _s) \
|
68 |
VMSTATE_UINTTL_V(_f, _s, 0)
|
69 |
#define VMSTATE_UINTTL_EQUAL(_f, _s) \
|
70 |
VMSTATE_UINTTL_EQUAL_V(_f, _s, 0)
|
71 |
#define VMSTATE_UINTTL_ARRAY(_f, _s, _n) \
|
72 |
VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, 0)
|
73 |
|
74 |
#endif
|
75 |
|
76 |
#endif
|