hw: move CPU state serialization to migration/cpu.h
Remove usage of NEED_CPU_H from hw/hw.h. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
cbd62f8616
commit
1e00b8d57a
@ -14,28 +14,6 @@
|
|||||||
#include "qemu/log.h"
|
#include "qemu/log.h"
|
||||||
#include "qemu/module.h"
|
#include "qemu/module.h"
|
||||||
|
|
||||||
#ifdef NEED_CPU_H
|
|
||||||
#if TARGET_LONG_BITS == 64
|
|
||||||
#define qemu_put_betl qemu_put_be64
|
|
||||||
#define qemu_get_betl qemu_get_be64
|
|
||||||
#define qemu_put_betls qemu_put_be64s
|
|
||||||
#define qemu_get_betls qemu_get_be64s
|
|
||||||
#define qemu_put_sbetl qemu_put_sbe64
|
|
||||||
#define qemu_get_sbetl qemu_get_sbe64
|
|
||||||
#define qemu_put_sbetls qemu_put_sbe64s
|
|
||||||
#define qemu_get_sbetls qemu_get_sbe64s
|
|
||||||
#else
|
|
||||||
#define qemu_put_betl qemu_put_be32
|
|
||||||
#define qemu_get_betl qemu_get_be32
|
|
||||||
#define qemu_put_betls qemu_put_be32s
|
|
||||||
#define qemu_get_betls qemu_get_be32s
|
|
||||||
#define qemu_put_sbetl qemu_put_sbe32
|
|
||||||
#define qemu_get_sbetl qemu_get_sbe32
|
|
||||||
#define qemu_put_sbetls qemu_put_sbe32s
|
|
||||||
#define qemu_get_sbetls qemu_get_sbe32s
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
typedef void QEMUResetHandler(void *opaque);
|
typedef void QEMUResetHandler(void *opaque);
|
||||||
|
|
||||||
void qemu_register_reset(QEMUResetHandler *func, void *opaque);
|
void qemu_register_reset(QEMUResetHandler *func, void *opaque);
|
||||||
@ -43,31 +21,4 @@ void qemu_unregister_reset(QEMUResetHandler *func, void *opaque);
|
|||||||
|
|
||||||
void QEMU_NORETURN hw_error(const char *fmt, ...) GCC_FMT_ATTR(1, 2);
|
void QEMU_NORETURN hw_error(const char *fmt, ...) GCC_FMT_ATTR(1, 2);
|
||||||
|
|
||||||
#ifdef NEED_CPU_H
|
|
||||||
#if TARGET_LONG_BITS == 64
|
|
||||||
#define VMSTATE_UINTTL_V(_f, _s, _v) \
|
|
||||||
VMSTATE_UINT64_V(_f, _s, _v)
|
|
||||||
#define VMSTATE_UINTTL_EQUAL_V(_f, _s, _v) \
|
|
||||||
VMSTATE_UINT64_EQUAL_V(_f, _s, _v)
|
|
||||||
#define VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, _v) \
|
|
||||||
VMSTATE_UINT64_ARRAY_V(_f, _s, _n, _v)
|
|
||||||
#define vmstate_info_uinttl vmstate_info_uint64
|
|
||||||
#else
|
|
||||||
#define VMSTATE_UINTTL_V(_f, _s, _v) \
|
|
||||||
VMSTATE_UINT32_V(_f, _s, _v)
|
|
||||||
#define VMSTATE_UINTTL_EQUAL_V(_f, _s, _v) \
|
|
||||||
VMSTATE_UINT32_EQUAL_V(_f, _s, _v)
|
|
||||||
#define VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, _v) \
|
|
||||||
VMSTATE_UINT32_ARRAY_V(_f, _s, _n, _v)
|
|
||||||
#define vmstate_info_uinttl vmstate_info_uint32
|
|
||||||
#endif
|
|
||||||
#define VMSTATE_UINTTL(_f, _s) \
|
|
||||||
VMSTATE_UINTTL_V(_f, _s, 0)
|
|
||||||
#define VMSTATE_UINTTL_EQUAL(_f, _s) \
|
|
||||||
VMSTATE_UINTTL_EQUAL_V(_f, _s, 0)
|
|
||||||
#define VMSTATE_UINTTL_ARRAY(_f, _s, _n) \
|
|
||||||
VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, 0)
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
48
include/migration/cpu.h
Normal file
48
include/migration/cpu.h
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
/* Declarations for use for CPU state serialization. */
|
||||||
|
#ifndef MIGRATION_CPU_H
|
||||||
|
#define MIGRATION_CPU_H
|
||||||
|
|
||||||
|
#if TARGET_LONG_BITS == 64
|
||||||
|
#define qemu_put_betl qemu_put_be64
|
||||||
|
#define qemu_get_betl qemu_get_be64
|
||||||
|
#define qemu_put_betls qemu_put_be64s
|
||||||
|
#define qemu_get_betls qemu_get_be64s
|
||||||
|
#define qemu_put_sbetl qemu_put_sbe64
|
||||||
|
#define qemu_get_sbetl qemu_get_sbe64
|
||||||
|
#define qemu_put_sbetls qemu_put_sbe64s
|
||||||
|
#define qemu_get_sbetls qemu_get_sbe64s
|
||||||
|
|
||||||
|
#define VMSTATE_UINTTL_V(_f, _s, _v) \
|
||||||
|
VMSTATE_UINT64_V(_f, _s, _v)
|
||||||
|
#define VMSTATE_UINTTL_EQUAL_V(_f, _s, _v) \
|
||||||
|
VMSTATE_UINT64_EQUAL_V(_f, _s, _v)
|
||||||
|
#define VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, _v) \
|
||||||
|
VMSTATE_UINT64_ARRAY_V(_f, _s, _n, _v)
|
||||||
|
#define vmstate_info_uinttl vmstate_info_uint64
|
||||||
|
#else
|
||||||
|
#define qemu_put_betl qemu_put_be32
|
||||||
|
#define qemu_get_betl qemu_get_be32
|
||||||
|
#define qemu_put_betls qemu_put_be32s
|
||||||
|
#define qemu_get_betls qemu_get_be32s
|
||||||
|
#define qemu_put_sbetl qemu_put_sbe32
|
||||||
|
#define qemu_get_sbetl qemu_get_sbe32
|
||||||
|
#define qemu_put_sbetls qemu_put_sbe32s
|
||||||
|
#define qemu_get_sbetls qemu_get_sbe32s
|
||||||
|
|
||||||
|
#define VMSTATE_UINTTL_V(_f, _s, _v) \
|
||||||
|
VMSTATE_UINT32_V(_f, _s, _v)
|
||||||
|
#define VMSTATE_UINTTL_EQUAL_V(_f, _s, _v) \
|
||||||
|
VMSTATE_UINT32_EQUAL_V(_f, _s, _v)
|
||||||
|
#define VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, _v) \
|
||||||
|
VMSTATE_UINT32_ARRAY_V(_f, _s, _n, _v)
|
||||||
|
#define vmstate_info_uinttl vmstate_info_uint32
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define VMSTATE_UINTTL(_f, _s) \
|
||||||
|
VMSTATE_UINTTL_V(_f, _s, 0)
|
||||||
|
#define VMSTATE_UINTTL_EQUAL(_f, _s) \
|
||||||
|
VMSTATE_UINTTL_EQUAL_V(_f, _s, 0)
|
||||||
|
#define VMSTATE_UINTTL_ARRAY(_f, _s, _n) \
|
||||||
|
VMSTATE_UINTTL_ARRAY_V(_f, _s, _n, 0)
|
||||||
|
|
||||||
|
#endif
|
@ -1,6 +1,7 @@
|
|||||||
#include "qemu/osdep.h"
|
#include "qemu/osdep.h"
|
||||||
#include "hw/hw.h"
|
#include "hw/hw.h"
|
||||||
#include "hw/boards.h"
|
#include "hw/boards.h"
|
||||||
|
#include "migration/cpu.h"
|
||||||
|
|
||||||
static int get_fpcr(QEMUFile *f, void *opaque, size_t size)
|
static int get_fpcr(QEMUFile *f, void *opaque, size_t size)
|
||||||
{
|
{
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
#include "sysemu/kvm.h"
|
#include "sysemu/kvm.h"
|
||||||
#include "kvm_arm.h"
|
#include "kvm_arm.h"
|
||||||
#include "internals.h"
|
#include "internals.h"
|
||||||
|
#include "migration/cpu.h"
|
||||||
|
|
||||||
static bool vfp_needed(void *opaque)
|
static bool vfp_needed(void *opaque)
|
||||||
{
|
{
|
||||||
|
@ -20,6 +20,7 @@
|
|||||||
|
|
||||||
#include "qemu/osdep.h"
|
#include "qemu/osdep.h"
|
||||||
#include "hw/hw.h"
|
#include "hw/hw.h"
|
||||||
|
#include "migration/cpu.h"
|
||||||
|
|
||||||
static const VMStateDescription vmstate_tlbset = {
|
static const VMStateDescription vmstate_tlbset = {
|
||||||
.name = "cpu/tlbset",
|
.name = "cpu/tlbset",
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
#include "hw/boards.h"
|
#include "hw/boards.h"
|
||||||
#include "hw/i386/pc.h"
|
#include "hw/i386/pc.h"
|
||||||
#include "hw/isa/isa.h"
|
#include "hw/isa/isa.h"
|
||||||
|
#include "migration/cpu.h"
|
||||||
|
|
||||||
#include "cpu.h"
|
#include "cpu.h"
|
||||||
#include "sysemu/kvm.h"
|
#include "sysemu/kvm.h"
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
#include "qemu/osdep.h"
|
#include "qemu/osdep.h"
|
||||||
#include "hw/hw.h"
|
#include "hw/hw.h"
|
||||||
#include "hw/boards.h"
|
#include "hw/boards.h"
|
||||||
|
#include "migration/cpu.h"
|
||||||
|
|
||||||
static const VMStateDescription vmstate_env = {
|
static const VMStateDescription vmstate_env = {
|
||||||
.name = "env",
|
.name = "env",
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#include "qemu/osdep.h"
|
#include "qemu/osdep.h"
|
||||||
#include "hw/hw.h"
|
#include "hw/hw.h"
|
||||||
|
|
||||||
#include "cpu.h"
|
#include "cpu.h"
|
||||||
|
#include "migration/cpu.h"
|
||||||
|
|
||||||
static int cpu_post_load(void *opaque, int version_id)
|
static int cpu_post_load(void *opaque, int version_id)
|
||||||
{
|
{
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
#include "hw/hw.h"
|
#include "hw/hw.h"
|
||||||
#include "hw/boards.h"
|
#include "hw/boards.h"
|
||||||
#include "machine.h"
|
#include "machine.h"
|
||||||
|
#include "migration/cpu.h"
|
||||||
|
|
||||||
const VMStateDescription vmstate_moxie_cpu = {
|
const VMStateDescription vmstate_moxie_cpu = {
|
||||||
.name = "cpu",
|
.name = "cpu",
|
||||||
|
@ -20,6 +20,7 @@
|
|||||||
#include "qemu/osdep.h"
|
#include "qemu/osdep.h"
|
||||||
#include "hw/hw.h"
|
#include "hw/hw.h"
|
||||||
#include "hw/boards.h"
|
#include "hw/boards.h"
|
||||||
|
#include "migration/cpu.h"
|
||||||
|
|
||||||
static const VMStateDescription vmstate_env = {
|
static const VMStateDescription vmstate_env = {
|
||||||
.name = "env",
|
.name = "env",
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
#include "sysemu/kvm.h"
|
#include "sysemu/kvm.h"
|
||||||
#include "helper_regs.h"
|
#include "helper_regs.h"
|
||||||
#include "mmu-hash64.h"
|
#include "mmu-hash64.h"
|
||||||
|
#include "migration/cpu.h"
|
||||||
|
|
||||||
static int cpu_load_old(QEMUFile *f, void *opaque, int version_id)
|
static int cpu_load_old(QEMUFile *f, void *opaque, int version_id)
|
||||||
{
|
{
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
#include "qemu/timer.h"
|
#include "qemu/timer.h"
|
||||||
|
|
||||||
#include "cpu.h"
|
#include "cpu.h"
|
||||||
|
#include "migration/cpu.h"
|
||||||
|
|
||||||
#ifdef TARGET_SPARC64
|
#ifdef TARGET_SPARC64
|
||||||
static const VMStateDescription vmstate_cpu_timer = {
|
static const VMStateDescription vmstate_cpu_timer = {
|
||||||
|
Loading…
Reference in New Issue
Block a user