Message ID | 20220223090706.4888-8-damien.hedde@greensocs.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Initial support for machine creation via QMP | expand |
On 23/2/22 10:06, Damien Hedde wrote: > The none machine was using the parent state structure. > We'll need a custom state to add a field in the following commit. > > Signed-off-by: Damien Hedde <damien.hedde@greensocs.com> > --- > hw/core/null-machine.c | 24 ++++++++++++++++++++++-- > 1 file changed, 22 insertions(+), 2 deletions(-) Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Jim Shu <jim.shu@sifive.com> On Wed, Feb 23, 2022 at 5:59 PM Damien Hedde <damien.hedde@greensocs.com> wrote: > The none machine was using the parent state structure. > We'll need a custom state to add a field in the following commit. > > Signed-off-by: Damien Hedde <damien.hedde@greensocs.com> > --- > hw/core/null-machine.c | 24 ++++++++++++++++++++++-- > 1 file changed, 22 insertions(+), 2 deletions(-) > > diff --git a/hw/core/null-machine.c b/hw/core/null-machine.c > index f586a4bef5..7eb258af07 100644 > --- a/hw/core/null-machine.c > +++ b/hw/core/null-machine.c > @@ -17,6 +17,13 @@ > #include "exec/address-spaces.h" > #include "hw/core/cpu.h" > > +struct NoneMachineState { > + MachineState parent; > +}; > + > +#define TYPE_NONE_MACHINE MACHINE_TYPE_NAME("none") > +OBJECT_DECLARE_SIMPLE_TYPE(NoneMachineState, NONE_MACHINE) > + > static void machine_none_init(MachineState *mch) > { > CPUState *cpu = NULL; > @@ -42,8 +49,10 @@ static void machine_none_init(MachineState *mch) > } > } > > -static void machine_none_machine_init(MachineClass *mc) > +static void machine_none_class_init(ObjectClass *oc, void *data) > { > + MachineClass *mc = MACHINE_CLASS(oc); > + > mc->desc = "empty machine"; > mc->init = machine_none_init; > mc->max_cpus = 1; > @@ -56,4 +65,15 @@ static void machine_none_machine_init(MachineClass *mc) > mc->no_sdcard = 1; > } > > -DEFINE_MACHINE("none", machine_none_machine_init) > +static const TypeInfo none_machine_info = { > + .name = TYPE_NONE_MACHINE, > + .parent = TYPE_MACHINE, > + .instance_size = sizeof(NoneMachineState), > + .class_init = machine_none_class_init, > +}; > + > +static void none_machine_register_types(void) > +{ > + type_register_static(&none_machine_info); > +} > +type_init(none_machine_register_types); > -- > 2.35.1 > > >
diff --git a/hw/core/null-machine.c b/hw/core/null-machine.c index f586a4bef5..7eb258af07 100644 --- a/hw/core/null-machine.c +++ b/hw/core/null-machine.c @@ -17,6 +17,13 @@ #include "exec/address-spaces.h" #include "hw/core/cpu.h" +struct NoneMachineState { + MachineState parent; +}; + +#define TYPE_NONE_MACHINE MACHINE_TYPE_NAME("none") +OBJECT_DECLARE_SIMPLE_TYPE(NoneMachineState, NONE_MACHINE) + static void machine_none_init(MachineState *mch) { CPUState *cpu = NULL; @@ -42,8 +49,10 @@ static void machine_none_init(MachineState *mch) } } -static void machine_none_machine_init(MachineClass *mc) +static void machine_none_class_init(ObjectClass *oc, void *data) { + MachineClass *mc = MACHINE_CLASS(oc); + mc->desc = "empty machine"; mc->init = machine_none_init; mc->max_cpus = 1; @@ -56,4 +65,15 @@ static void machine_none_machine_init(MachineClass *mc) mc->no_sdcard = 1; } -DEFINE_MACHINE("none", machine_none_machine_init) +static const TypeInfo none_machine_info = { + .name = TYPE_NONE_MACHINE, + .parent = TYPE_MACHINE, + .instance_size = sizeof(NoneMachineState), + .class_init = machine_none_class_init, +}; + +static void none_machine_register_types(void) +{ + type_register_static(&none_machine_info); +} +type_init(none_machine_register_types);
The none machine was using the parent state structure. We'll need a custom state to add a field in the following commit. Signed-off-by: Damien Hedde <damien.hedde@greensocs.com> --- hw/core/null-machine.c | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-)