Replace the legacy type_register_static()/type_init() registration pattern with the modern DEFINE_TYPES() macro.
Inline 6 standalone TypeInfo variables (aspeed_wdt_info as abstract base, aspeed_2400_wdt_info, aspeed_2500_wdt_info, aspeed_2600_wdt_info, aspeed_1030_wdt_info, aspeed_2700_wdt_info) directly into the 'aspeed_wdt_types[]' array, removing the need for separate declarations. No functional change. Signed-off-by: Jamin Lin <[email protected]> --- hw/watchdog/wdt_aspeed.c | 93 +++++++++++++++++----------------------- 1 file changed, 40 insertions(+), 53 deletions(-) diff --git a/hw/watchdog/wdt_aspeed.c b/hw/watchdog/wdt_aspeed.c index ae411593c5..deed970c89 100644 --- a/hw/watchdog/wdt_aspeed.c +++ b/hw/watchdog/wdt_aspeed.c @@ -321,15 +321,6 @@ static void aspeed_wdt_class_init(ObjectClass *klass, const void *data) dc->desc = "Aspeed watchdog device"; } -static const TypeInfo aspeed_wdt_info = { - .parent = TYPE_SYS_BUS_DEVICE, - .name = TYPE_ASPEED_WDT, - .instance_size = sizeof(AspeedWDTState), - .class_init = aspeed_wdt_class_init, - .class_size = sizeof(AspeedWDTClass), - .abstract = true, -}; - static void aspeed_2400_wdt_class_init(ObjectClass *klass, const void *data) { DeviceClass *dc = DEVICE_CLASS(klass); @@ -345,13 +336,6 @@ static void aspeed_2400_wdt_class_init(ObjectClass *klass, const void *data) awc->default_reload_value = 0x03EF1480; } -static const TypeInfo aspeed_2400_wdt_info = { - .name = TYPE_ASPEED_2400_WDT, - .parent = TYPE_ASPEED_WDT, - .instance_size = sizeof(AspeedWDTState), - .class_init = aspeed_2400_wdt_class_init, -}; - static void aspeed_2500_wdt_reset_pulse(AspeedWDTState *s, uint32_t property) { if (property) { @@ -383,13 +367,6 @@ static void aspeed_2500_wdt_class_init(ObjectClass *klass, const void *data) awc->default_reload_value = 0x014FB180; } -static const TypeInfo aspeed_2500_wdt_info = { - .name = TYPE_ASPEED_2500_WDT, - .parent = TYPE_ASPEED_WDT, - .instance_size = sizeof(AspeedWDTState), - .class_init = aspeed_2500_wdt_class_init, -}; - static void aspeed_2600_wdt_class_init(ObjectClass *klass, const void *data) { DeviceClass *dc = DEVICE_CLASS(klass); @@ -406,13 +383,6 @@ static void aspeed_2600_wdt_class_init(ObjectClass *klass, const void *data) awc->default_reload_value = 0x014FB180; } -static const TypeInfo aspeed_2600_wdt_info = { - .name = TYPE_ASPEED_2600_WDT, - .parent = TYPE_ASPEED_WDT, - .instance_size = sizeof(AspeedWDTState), - .class_init = aspeed_2600_wdt_class_init, -}; - static void aspeed_1030_wdt_class_init(ObjectClass *klass, const void *data) { DeviceClass *dc = DEVICE_CLASS(klass); @@ -429,13 +399,6 @@ static void aspeed_1030_wdt_class_init(ObjectClass *klass, const void *data) awc->default_reload_value = 0x014FB180; } -static const TypeInfo aspeed_1030_wdt_info = { - .name = TYPE_ASPEED_1030_WDT, - .parent = TYPE_ASPEED_WDT, - .instance_size = sizeof(AspeedWDTState), - .class_init = aspeed_1030_wdt_class_init, -}; - static void aspeed_2700_wdt_class_init(ObjectClass *klass, const void *data) { DeviceClass *dc = DEVICE_CLASS(klass); @@ -452,21 +415,45 @@ static void aspeed_2700_wdt_class_init(ObjectClass *klass, const void *data) awc->default_reload_value = 0x014FB180; } -static const TypeInfo aspeed_2700_wdt_info = { - .name = TYPE_ASPEED_2700_WDT, - .parent = TYPE_ASPEED_WDT, - .instance_size = sizeof(AspeedWDTState), - .class_init = aspeed_2700_wdt_class_init, +static const TypeInfo aspeed_wdt_types[] = { + { + .parent = TYPE_SYS_BUS_DEVICE, + .name = TYPE_ASPEED_WDT, + .instance_size = sizeof(AspeedWDTState), + .class_init = aspeed_wdt_class_init, + .class_size = sizeof(AspeedWDTClass), + .abstract = true, + }, + { + .name = TYPE_ASPEED_1030_WDT, + .parent = TYPE_ASPEED_WDT, + .instance_size = sizeof(AspeedWDTState), + .class_init = aspeed_1030_wdt_class_init, + }, + { + .name = TYPE_ASPEED_2400_WDT, + .parent = TYPE_ASPEED_WDT, + .instance_size = sizeof(AspeedWDTState), + .class_init = aspeed_2400_wdt_class_init, + }, + { + .name = TYPE_ASPEED_2500_WDT, + .parent = TYPE_ASPEED_WDT, + .instance_size = sizeof(AspeedWDTState), + .class_init = aspeed_2500_wdt_class_init, + }, + { + .name = TYPE_ASPEED_2600_WDT, + .parent = TYPE_ASPEED_WDT, + .instance_size = sizeof(AspeedWDTState), + .class_init = aspeed_2600_wdt_class_init, + }, + { + .name = TYPE_ASPEED_2700_WDT, + .parent = TYPE_ASPEED_WDT, + .instance_size = sizeof(AspeedWDTState), + .class_init = aspeed_2700_wdt_class_init, + } }; -static void wdt_aspeed_register_types(void) -{ - type_register_static(&aspeed_wdt_info); - type_register_static(&aspeed_2400_wdt_info); - type_register_static(&aspeed_2500_wdt_info); - type_register_static(&aspeed_2600_wdt_info); - type_register_static(&aspeed_2700_wdt_info); - type_register_static(&aspeed_1030_wdt_info); -} - -type_init(wdt_aspeed_register_types) +DEFINE_TYPES(aspeed_wdt_types) -- 2.43.0
