On Fri, 25 Nov 2022 at 14:10, Akihiko Odaki <akihiko.od...@daynix.com> wrote: > > This is part of recent efforts of refactoring e1000 and e1000e. > > DeviceClass's reset member is deprecated so migrate to ResettableClass. > Thre is no behavioral difference. > > Signed-off-by: Akihiko Odaki <akihiko.od...@daynix.com> > --- > hw/net/e1000e.c | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/hw/net/e1000e.c b/hw/net/e1000e.c > index 7523e9f5d2..4f31a7894a 100644 > --- a/hw/net/e1000e.c > +++ b/hw/net/e1000e.c > @@ -512,9 +512,9 @@ static void e1000e_pci_uninit(PCIDevice *pci_dev) > msi_uninit(pci_dev); > } > > -static void e1000e_qdev_reset(DeviceState *dev) > +static void e1000e_qdev_reset(Object *obj)
We should name this e1000e_qdev_reset_hold(). > { > - E1000EState *s = E1000E(dev); > + E1000EState *s = E1000E(obj); > > trace_e1000e_cb_qdev_reset(); > > @@ -669,6 +669,7 @@ static Property e1000e_properties[] = { > static void e1000e_class_init(ObjectClass *class, void *data) > { > DeviceClass *dc = DEVICE_CLASS(class); > + ResettableClass *rc = RESETTABLE_CLASS(class); > PCIDeviceClass *c = PCI_DEVICE_CLASS(class); > > c->realize = e1000e_pci_realize; > @@ -679,8 +680,9 @@ static void e1000e_class_init(ObjectClass *class, void > *data) > c->romfile = "efi-e1000e.rom"; > c->class_id = PCI_CLASS_NETWORK_ETHERNET; > > + rc->phases.hold = e1000e_qdev_reset; > + > dc->desc = "Intel 82574L GbE Controller"; > - dc->reset = e1000e_qdev_reset; > dc->vmsd = &e1000e_vmstate; Otherwise Reviewed-by: Peter Maydell <peter.mayd...@linaro.org> thanks -- PMM