hw/gpio/aspeed_gpio: convert to use Resettable interface
Replace the legacy reset callback registered via device_class_set_legacy_reset() with the Resettable interface. Signed-off-by: Kane Chen <kane_chen@aspeedtech.com> Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com> Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-13-kane_chen@aspeedtech.com Signed-off-by: Cédric Le Goater <clg@redhat.com>
Kane Chen committed
May 25, 2026 at 04:41 UTC
0ea01188f48ec3f546c69cbf08d8567ee8b639d2
1 file changed
+4
-3
hw/gpio/aspeed_gpio.c
+4
-3
@@ -1430,9 +1430,9 @@ static const MemoryRegionOps aspeed_gpio_2700_ops = {
1430
.valid.max_access_size = 4,
1431
};
1432
1433
-static void aspeed_gpio_reset(DeviceState *dev)
1433
+static void aspeed_gpio_reset_hold(Object *obj, ResetType type)
1434
{
1435
- AspeedGPIOState *s = ASPEED_GPIO(dev);
1435
+ AspeedGPIOState *s = ASPEED_GPIO(obj);
1436
1437
/* TODO: respect the reset tolerance registers */
1438
memset(s->sets, 0, sizeof(s->sets));
@@ -1533,9 +1533,10 @@ static const VMStateDescription vmstate_aspeed_gpio = {
1533
static void aspeed_gpio_class_init(ObjectClass *klass, const void *data)
1534
{
1535
DeviceClass *dc = DEVICE_CLASS(klass);
1536
+ ResettableClass *rc = RESETTABLE_CLASS(klass);
1537
1538
dc->realize = aspeed_gpio_realize;
1538
- device_class_set_legacy_reset(dc, aspeed_gpio_reset);
1539
+ rc->phases.hold = aspeed_gpio_reset_hold;
1540
dc->desc = "Aspeed GPIO Controller";
1541
dc->vmsd = &vmstate_aspeed_gpio;
1542
}