hw/intc/aspeed_intc: 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-17-kane_chen@aspeedtech.com Signed-off-by: Cédric Le Goater <clg@redhat.com>
Kane Chen committed
May 25, 2026 at 04:41 UTC
b808edd60c5cd4c6dc2e18973a426cd145d020cb
1 file changed
+4
-3
hw/intc/aspeed_intc.c
+4
-3
@@ -692,9 +692,9 @@ static void aspeed_intc_instance_init(Object *obj)
692
}
693
}
694
695
-static void aspeed_intc_reset(DeviceState *dev)
695
+static void aspeed_intc_reset_hold(Object *obj, ResetType type)
696
{
697
- AspeedINTCState *s = ASPEED_INTC(dev);
697
+ AspeedINTCState *s = ASPEED_INTC(obj);
698
AspeedINTCClass *aic = ASPEED_INTC_GET_CLASS(s);
699
700
memset(s->regs, 0, aic->nr_regs << 2);
@@ -746,12 +746,13 @@ static void aspeed_intc_unrealize(DeviceState *dev)
746
static void aspeed_intc_class_init(ObjectClass *klass, const void *data)
747
{
748
DeviceClass *dc = DEVICE_CLASS(klass);
749
+ ResettableClass *rc = RESETTABLE_CLASS(klass);
750
AspeedINTCClass *aic = ASPEED_INTC_CLASS(klass);
751
752
dc->desc = "ASPEED INTC Controller";
753
dc->realize = aspeed_intc_realize;
754
dc->unrealize = aspeed_intc_unrealize;
754
- device_class_set_legacy_reset(dc, aspeed_intc_reset);
755
+ rc->phases.hold = aspeed_intc_reset_hold;
756
dc->vmsd = NULL;
757
758
aic->reg_ops = &aspeed_intc_ops;