mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-14 21:52:18 -06:00
accel: Make AccelCPUClass structure target-agnostic
Move the target-agnostic parts of "accel/accel-cpu-target.h" to "accel/accel-cpu.h". Doing so we need to include missing "hw/core/cpu.h" header in "accel/accel-cpu.h" otherwise we get: include/accel/accel-cpu-target.h:39:28: error: unknown type name 'CPUClass' 39 | void (*cpu_class_init)(CPUClass *cc); | ^ Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-Id: <20250417165430.58213-7-philmd@linaro.org>
This commit is contained in:
parent
559fe89916
commit
44246e7170
4 changed files with 25 additions and 13 deletions
|
@ -499,7 +499,7 @@ F: include/qemu/accel.h
|
||||||
F: include/qemu/target-info*.h
|
F: include/qemu/target-info*.h
|
||||||
F: include/system/accel-*.h
|
F: include/system/accel-*.h
|
||||||
F: include/system/cpus.h
|
F: include/system/cpus.h
|
||||||
F: include/accel/accel-cpu-target.h
|
F: include/accel/accel-cpu*.h
|
||||||
F: accel/accel-*.?
|
F: accel/accel-*.?
|
||||||
F: accel/Makefile.objs
|
F: accel/Makefile.objs
|
||||||
F: accel/stubs/Makefile.objs
|
F: accel/stubs/Makefile.objs
|
||||||
|
|
|
@ -27,7 +27,6 @@
|
||||||
#include "qemu/accel.h"
|
#include "qemu/accel.h"
|
||||||
#include "qemu/target-info.h"
|
#include "qemu/target-info.h"
|
||||||
|
|
||||||
#include "cpu.h"
|
|
||||||
#include "accel/accel-cpu-target.h"
|
#include "accel/accel-cpu-target.h"
|
||||||
#include "accel-internal.h"
|
#include "accel-internal.h"
|
||||||
|
|
||||||
|
|
|
@ -21,21 +21,11 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "qom/object.h"
|
#include "qom/object.h"
|
||||||
|
#include "accel/accel-cpu.h"
|
||||||
#include "cpu.h"
|
#include "cpu.h"
|
||||||
|
|
||||||
#define TYPE_ACCEL_CPU "accel-" CPU_RESOLVING_TYPE
|
#define TYPE_ACCEL_CPU "accel-" CPU_RESOLVING_TYPE
|
||||||
#define ACCEL_CPU_NAME(name) (name "-" TYPE_ACCEL_CPU)
|
#define ACCEL_CPU_NAME(name) (name "-" TYPE_ACCEL_CPU)
|
||||||
typedef struct AccelCPUClass AccelCPUClass;
|
|
||||||
DECLARE_CLASS_CHECKERS(AccelCPUClass, ACCEL_CPU, TYPE_ACCEL_CPU)
|
DECLARE_CLASS_CHECKERS(AccelCPUClass, ACCEL_CPU, TYPE_ACCEL_CPU)
|
||||||
|
|
||||||
typedef struct AccelCPUClass {
|
|
||||||
/*< private >*/
|
|
||||||
ObjectClass parent_class;
|
|
||||||
/*< public >*/
|
|
||||||
|
|
||||||
void (*cpu_class_init)(CPUClass *cc);
|
|
||||||
void (*cpu_instance_init)(CPUState *cpu);
|
|
||||||
bool (*cpu_target_realize)(CPUState *cpu, Error **errp);
|
|
||||||
} AccelCPUClass;
|
|
||||||
|
|
||||||
#endif /* ACCEL_CPU_H */
|
#endif /* ACCEL_CPU_H */
|
||||||
|
|
23
include/accel/accel-cpu.h
Normal file
23
include/accel/accel-cpu.h
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
/*
|
||||||
|
* Accelerator interface, specializes CPUClass
|
||||||
|
*
|
||||||
|
* Copyright 2021 SUSE LLC
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef ACCEL_CPU_H
|
||||||
|
#define ACCEL_CPU_H
|
||||||
|
|
||||||
|
#include "qom/object.h"
|
||||||
|
#include "hw/core/cpu.h"
|
||||||
|
|
||||||
|
typedef struct AccelCPUClass {
|
||||||
|
ObjectClass parent_class;
|
||||||
|
|
||||||
|
void (*cpu_class_init)(CPUClass *cc);
|
||||||
|
void (*cpu_instance_init)(CPUState *cpu);
|
||||||
|
bool (*cpu_target_realize)(CPUState *cpu, Error **errp);
|
||||||
|
} AccelCPUClass;
|
||||||
|
|
||||||
|
#endif /* ACCEL_CPU_H */
|
Loading…
Add table
Add a link
Reference in a new issue