Message ID | 20220519153402.41540-2-damien.hedde@greensocs.com |
---|---|
State | New |
Headers | show |
Series | QAPI support for device cold-plug | expand |
Tested-by: Jim Shu <jim.shu@sifive.com> On Thu, May 19, 2022 at 11:41 PM Damien Hedde <damien.hedde@greensocs.com> wrote: > phase_get() returns the current phase, we'll use it in next > commit. > > Signed-off-by: Damien Hedde <damien.hedde@greensocs.com> > Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > --- > include/hw/qdev-core.h | 19 +++++++++++++++++++ > hw/core/qdev.c | 5 +++++ > 2 files changed, 24 insertions(+) > > diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h > index 92c3d65208..e29c705b74 100644 > --- a/include/hw/qdev-core.h > +++ b/include/hw/qdev-core.h > @@ -887,7 +887,26 @@ typedef enum MachineInitPhase { > PHASE_MACHINE_READY, > } MachineInitPhase; > > +/* > + * phase_get: > + * Returns the current phase > + */ > +MachineInitPhase phase_get(void); > + > +/** > + * phase_check: > + * Test if current phase is at least @phase. > + * > + * Returns true if this is the case. > + */ > extern bool phase_check(MachineInitPhase phase); > + > +/** > + * @phase_advance: > + * Update the current phase to @phase. > + * > + * Must only be used to make a single phase step. > + */ > extern void phase_advance(MachineInitPhase phase); > > #endif > diff --git a/hw/core/qdev.c b/hw/core/qdev.c > index 84f3019440..632dc0a4be 100644 > --- a/hw/core/qdev.c > +++ b/hw/core/qdev.c > @@ -910,6 +910,11 @@ Object *qdev_get_machine(void) > > static MachineInitPhase machine_phase; > > +MachineInitPhase phase_get(void) > +{ > + return machine_phase; > +} > + > bool phase_check(MachineInitPhase phase) > { > return machine_phase >= phase; > -- > 2.36.1 > > >
diff --git a/include/hw/qdev-core.h b/include/hw/qdev-core.h index 92c3d65208..e29c705b74 100644 --- a/include/hw/qdev-core.h +++ b/include/hw/qdev-core.h @@ -887,7 +887,26 @@ typedef enum MachineInitPhase { PHASE_MACHINE_READY, } MachineInitPhase; +/* + * phase_get: + * Returns the current phase + */ +MachineInitPhase phase_get(void); + +/** + * phase_check: + * Test if current phase is at least @phase. + * + * Returns true if this is the case. + */ extern bool phase_check(MachineInitPhase phase); + +/** + * @phase_advance: + * Update the current phase to @phase. + * + * Must only be used to make a single phase step. + */ extern void phase_advance(MachineInitPhase phase); #endif diff --git a/hw/core/qdev.c b/hw/core/qdev.c index 84f3019440..632dc0a4be 100644 --- a/hw/core/qdev.c +++ b/hw/core/qdev.c @@ -910,6 +910,11 @@ Object *qdev_get_machine(void) static MachineInitPhase machine_phase; +MachineInitPhase phase_get(void) +{ + return machine_phase; +} + bool phase_check(MachineInitPhase phase) { return machine_phase >= phase;