@samitouri / QOSamiQemu / commits / 0ea01188f4

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 }