Statistics
| Branch: | Revision:

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