[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 13/31] e1000: Configure ResettableClass
From: |
Akihiko Odaki |
Subject: |
[PATCH 13/31] e1000: Configure ResettableClass |
Date: |
Thu, 12 Jan 2023 18:57:25 +0900 |
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>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
hw/net/e1000.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/hw/net/e1000.c b/hw/net/e1000.c
index 1bcc0cd4f3..a66cb39c8b 100644
--- a/hw/net/e1000.c
+++ b/hw/net/e1000.c
@@ -1731,9 +1731,9 @@ static void pci_e1000_realize(PCIDevice *pci_dev, Error
**errp)
e1000_flush_queue_timer, d);
}
-static void qdev_e1000_reset(DeviceState *dev)
+static void qdev_e1000_reset(Object *obj)
{
- E1000State *d = E1000(dev);
+ E1000State *d = E1000(obj);
e1000_reset(d);
}
@@ -1762,6 +1762,7 @@ typedef struct E1000Info {
static void e1000_class_init(ObjectClass *klass, void *data)
{
DeviceClass *dc = DEVICE_CLASS(klass);
+ ResettableClass *rc = RESETTABLE_CLASS(klass);
PCIDeviceClass *k = PCI_DEVICE_CLASS(klass);
E1000BaseClass *e = E1000_CLASS(klass);
const E1000Info *info = data;
@@ -1774,9 +1775,9 @@ static void e1000_class_init(ObjectClass *klass, void
*data)
k->revision = info->revision;
e->phy_id2 = info->phy_id2;
k->class_id = PCI_CLASS_NETWORK_ETHERNET;
+ rc->phases.hold = qdev_e1000_reset;
set_bit(DEVICE_CATEGORY_NETWORK, dc->categories);
dc->desc = "Intel Gigabit Ethernet";
- dc->reset = qdev_e1000_reset;
dc->vmsd = &vmstate_e1000;
device_class_set_props(dc, e1000_properties);
}
--
2.39.0
- [PATCH 22/31] igb: Copy e1000e code, (continued)
- [PATCH 22/31] igb: Copy e1000e code, Akihiko Odaki, 2023/01/12
- [PATCH 18/31] tests/qtest/libqos/e1000e: Remove duplicate register definitions, Akihiko Odaki, 2023/01/12
- [PATCH 31/31] docs/system/devices/igb: Add igb documentation, Akihiko Odaki, 2023/01/12
- [PATCH 24/31] igb: Build igb, Akihiko Odaki, 2023/01/12
- [PATCH 03/31] fsl_etsec: Use hw/net/mii.h, Akihiko Odaki, 2023/01/12
- [PATCH 25/31] igb: Transform to 82576 implementation, Akihiko Odaki, 2023/01/12
- [PATCH 09/31] e1000: Use memcpy to intialize registers, Akihiko Odaki, 2023/01/12
- [PATCH 10/31] e1000e: Use memcpy to intialize registers, Akihiko Odaki, 2023/01/12
- [PATCH 13/31] e1000: Configure ResettableClass,
Akihiko Odaki <=
- [PATCH 15/31] e1000e: Introduce e1000_rx_desc_union, Akihiko Odaki, 2023/01/12
- [PATCH 16/31] e1000e: Set MII_ANER_NWAY, Akihiko Odaki, 2023/01/12
- [PATCH 23/31] igb: Rename identifiers, Akihiko Odaki, 2023/01/12
- [PATCH 26/31] tests/qtest/e1000e-test: Fabricate ethernet header, Akihiko Odaki, 2023/01/12
- [PATCH 30/31] tests/avocado: Add igb test, Akihiko Odaki, 2023/01/12
- [PATCH 27/31] tests/qtest/libqos/e1000e: Export macreg functions, Akihiko Odaki, 2023/01/12
- [PATCH 28/31] tests/qtest/libqos/igb: Copy e1000e code, Akihiko Odaki, 2023/01/12
- [PATCH 29/31] tests/qtest/libqos/igb: Transform to igb tests, Akihiko Odaki, 2023/01/12