Statistics
| Branch: | Revision:

root / hw / hw.h @ a1bc20df

History | View | Annotate | Download (2.1 kB)

1 87ecb68b pbrook
/* Declarations for use by hardware emulation.  */
2 87ecb68b pbrook
#ifndef QEMU_HW_H
3 87ecb68b pbrook
#define QEMU_HW_H
4 87ecb68b pbrook
5 87ecb68b pbrook
#include "qemu-common.h"
6 1ad2134f Paul Brook
7 4be403c8 Avi Kivity
#if !defined(CONFIG_USER_ONLY) && !defined(NEED_CPU_H)
8 1ad2134f Paul Brook
#include "cpu-common.h"
9 1ad2134f Paul Brook
#endif
10 1ad2134f Paul Brook
11 32993977 Isaku Yamahata
#include "ioport.h"
12 87ecb68b pbrook
#include "irq.h"
13 701a8f76 Paolo Bonzini
#include "qemu-file.h"
14 701a8f76 Paolo Bonzini
#include "vmstate.h"
15 051c02b6 Peter Maydell
#include "qemu-log.h"
16 b6c4f71f blueswir1
17 87ecb68b pbrook
#ifdef NEED_CPU_H
18 87ecb68b pbrook
#if TARGET_LONG_BITS == 64
19 87ecb68b pbrook
#define qemu_put_betl qemu_put_be64
20 87ecb68b pbrook
#define qemu_get_betl qemu_get_be64
21 87ecb68b pbrook
#define qemu_put_betls qemu_put_be64s
22 87ecb68b pbrook
#define qemu_get_betls qemu_get_be64s
23 b6c4f71f blueswir1
#define qemu_put_sbetl qemu_put_sbe64
24 b6c4f71f blueswir1
#define qemu_get_sbetl qemu_get_sbe64
25 b6c4f71f blueswir1
#define qemu_put_sbetls qemu_put_sbe64s
26 b6c4f71f blueswir1
#define qemu_get_sbetls qemu_get_sbe64s
27 87ecb68b pbrook
#else
28 87ecb68b pbrook
#define qemu_put_betl qemu_put_be32
29 87ecb68b pbrook
#define qemu_get_betl qemu_get_be32
30 87ecb68b pbrook
#define qemu_put_betls qemu_put_be32s
31 87ecb68b pbrook
#define qemu_get_betls qemu_get_be32s
32 b6c4f71f blueswir1
#define qemu_put_sbetl qemu_put_sbe32
33 b6c4f71f blueswir1
#define qemu_get_sbetl qemu_get_sbe32
34 b6c4f71f blueswir1
#define qemu_put_sbetls qemu_put_sbe32s
35 b6c4f71f blueswir1
#define qemu_get_sbetls qemu_get_sbe32s
36 87ecb68b pbrook
#endif
37 87ecb68b pbrook
#endif
38 87ecb68b pbrook
39 87ecb68b pbrook
typedef void QEMUResetHandler(void *opaque);
40 87ecb68b pbrook
41 a08d4367 Jan Kiszka
void qemu_register_reset(QEMUResetHandler *func, void *opaque);
42 dda9b29f Jan Kiszka
void qemu_unregister_reset(QEMUResetHandler *func, void *opaque);
43 87ecb68b pbrook
44 76e30d0f Jan Kiszka
/* handler to set the boot_device order for a specific type of QEMUMachine */
45 0ecdffbb aurel32
/* return 0 if success */
46 76e30d0f Jan Kiszka
typedef int QEMUBootSetHandler(void *opaque, const char *boot_devices);
47 3b4366de blueswir1
void qemu_register_boot_set(QEMUBootSetHandler *func, void *opaque);
48 76e30d0f Jan Kiszka
int qemu_boot_set(const char *boot_devices);
49 0ecdffbb aurel32
50 f89a8e4e Juan Quintela
#ifdef NEED_CPU_H
51 f89a8e4e Juan Quintela
#if TARGET_LONG_BITS == 64
52 f89a8e4e Juan Quintela
#define VMSTATE_UINTTL_V(_f, _s, _v)                                  \
53 f89a8e4e Juan Quintela
    VMSTATE_UINT64_V(_f, _s, _v)
54 f89a8e4e Juan Quintela
#define VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, _v)                        \
55 f89a8e4e Juan Quintela
    VMSTATE_UINT64_ARRAY_V(_f, _s, _n, _v)
56 f89a8e4e Juan Quintela
#else
57 f89a8e4e Juan Quintela
#define VMSTATE_UINTTL_V(_f, _s, _v)                                  \
58 f89a8e4e Juan Quintela
    VMSTATE_UINT32_V(_f, _s, _v)
59 f89a8e4e Juan Quintela
#define VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, _v)                        \
60 f89a8e4e Juan Quintela
    VMSTATE_UINT32_ARRAY_V(_f, _s, _n, _v)
61 f89a8e4e Juan Quintela
#endif
62 f89a8e4e Juan Quintela
#define VMSTATE_UINTTL(_f, _s)                                        \
63 f89a8e4e Juan Quintela
    VMSTATE_UINTTL_V(_f, _s, 0)
64 f89a8e4e Juan Quintela
#define VMSTATE_UINTTL_ARRAY(_f, _s, _n)                              \
65 f89a8e4e Juan Quintela
    VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, 0)
66 f89a8e4e Juan Quintela
67 f89a8e4e Juan Quintela
#endif
68 f89a8e4e Juan Quintela
69 87ecb68b pbrook
#endif