[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] e1000e: Configure ResettableClass
From: |
Peter Maydell |
Subject: |
Re: [PATCH] e1000e: Configure ResettableClass |
Date: |
Fri, 25 Nov 2022 14:19:39 +0000 |
On Fri, 25 Nov 2022 at 14:10, Akihiko Odaki <akihiko.odaki@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.odaki@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.maydell@linaro.org>
thanks
-- PMM