@samitouri / QOSamiQemu / commits / f90d53034d

hw/watchdog/wdt_aspeed: 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-19-kane_chen@aspeedtech.com Signed-off-by: Cédric Le Goater <clg@redhat.com>

Kane Chen committed May 25, 2026 at 04:41 UTC f90d53034da66550bd4669549d6dd0ee02d533c9
1 file changed +4 -3
hw/watchdog/wdt_aspeed.c
+4 -3
@@ -247,9 +247,9 @@ static const MemoryRegionOps aspeed_wdt_ops = {
247 .valid.unaligned = false,
248 };
249
250 -static void aspeed_wdt_reset(DeviceState *dev)
250 +static void aspeed_wdt_reset_hold(Object *obj, ResetType type)
251 {
252 - AspeedWDTState *s = ASPEED_WDT(dev);
252 + AspeedWDTState *s = ASPEED_WDT(obj);
253 AspeedWDTClass *awc = ASPEED_WDT_GET_CLASS(s);
254
255 s->regs[WDT_STATUS] = awc->default_status;
@@ -310,10 +310,11 @@ static const Property aspeed_wdt_properties[] = {
310 static void aspeed_wdt_class_init(ObjectClass *klass, const void *data)
311 {
312 DeviceClass *dc = DEVICE_CLASS(klass);
313 + ResettableClass *rc = RESETTABLE_CLASS(klass);
314
315 dc->desc = "ASPEED Watchdog Controller";
316 dc->realize = aspeed_wdt_realize;
316 - device_class_set_legacy_reset(dc, aspeed_wdt_reset);
317 + rc->phases.hold = aspeed_wdt_reset_hold;
318 set_bit(DEVICE_CATEGORY_WATCHDOG, dc->categories);
319 dc->vmsd = &vmstate_aspeed_wdt;
320 device_class_set_props(dc, aspeed_wdt_properties);