Replace the legacy type_register_static()/type_init() registration pattern with the modern DEFINE_TYPES() macro.
Inline 4 standalone TypeInfo variables (aspeed_xdma_info as abstract base, aspeed_2400_xdma_info, aspeed_2500_xdma_info, aspeed_2600_xdma_info) directly into the 'aspeed_xdma_types[]' array, removing the need for separate declarations. No functional change. Signed-off-by: Jamin Lin <[email protected]> --- hw/misc/aspeed_xdma.c | 58 +++++++++++++++++++------------------------ 1 file changed, 25 insertions(+), 33 deletions(-) diff --git a/hw/misc/aspeed_xdma.c b/hw/misc/aspeed_xdma.c index 80b3259333..58a471ee03 100644 --- a/hw/misc/aspeed_xdma.c +++ b/hw/misc/aspeed_xdma.c @@ -167,12 +167,6 @@ static void aspeed_2600_xdma_class_init(ObjectClass *klass, const void *data) XDMA_AST2600_IRQ_STATUS_DS_COMP; } -static const TypeInfo aspeed_2600_xdma_info = { - .name = TYPE_ASPEED_2600_XDMA, - .parent = TYPE_ASPEED_XDMA, - .class_init = aspeed_2600_xdma_class_init, -}; - static void aspeed_2500_xdma_class_init(ObjectClass *klass, const void *data) { DeviceClass *dc = DEVICE_CLASS(klass); @@ -189,12 +183,6 @@ static void aspeed_2500_xdma_class_init(ObjectClass *klass, const void *data) axc->intr_complete = XDMA_IRQ_ENG_STAT_US_COMP | XDMA_IRQ_ENG_STAT_DS_COMP; }; -static const TypeInfo aspeed_2500_xdma_info = { - .name = TYPE_ASPEED_2500_XDMA, - .parent = TYPE_ASPEED_XDMA, - .class_init = aspeed_2500_xdma_class_init, -}; - static void aspeed_2400_xdma_class_init(ObjectClass *klass, const void *data) { DeviceClass *dc = DEVICE_CLASS(klass); @@ -211,12 +199,6 @@ static void aspeed_2400_xdma_class_init(ObjectClass *klass, const void *data) axc->intr_complete = XDMA_IRQ_ENG_STAT_US_COMP | XDMA_IRQ_ENG_STAT_DS_COMP; }; -static const TypeInfo aspeed_2400_xdma_info = { - .name = TYPE_ASPEED_2400_XDMA, - .parent = TYPE_ASPEED_XDMA, - .class_init = aspeed_2400_xdma_class_init, -}; - static void aspeed_xdma_class_init(ObjectClass *classp, const void *data) { DeviceClass *dc = DEVICE_CLASS(classp); @@ -227,20 +209,30 @@ static void aspeed_xdma_class_init(ObjectClass *classp, const void *data) dc->vmsd = &aspeed_xdma_vmstate; } -static const TypeInfo aspeed_xdma_info = { - .name = TYPE_ASPEED_XDMA, - .parent = TYPE_SYS_BUS_DEVICE, - .instance_size = sizeof(AspeedXDMAState), - .class_init = aspeed_xdma_class_init, - .class_size = sizeof(AspeedXDMAClass), - .abstract = true, +static const TypeInfo aspeed_xdma_types[] = { + { + .name = TYPE_ASPEED_XDMA, + .parent = TYPE_SYS_BUS_DEVICE, + .instance_size = sizeof(AspeedXDMAState), + .class_init = aspeed_xdma_class_init, + .class_size = sizeof(AspeedXDMAClass), + .abstract = true, + }, + { + .name = TYPE_ASPEED_2400_XDMA, + .parent = TYPE_ASPEED_XDMA, + .class_init = aspeed_2400_xdma_class_init, + }, + { + .name = TYPE_ASPEED_2500_XDMA, + .parent = TYPE_ASPEED_XDMA, + .class_init = aspeed_2500_xdma_class_init, + }, + { + .name = TYPE_ASPEED_2600_XDMA, + .parent = TYPE_ASPEED_XDMA, + .class_init = aspeed_2600_xdma_class_init, + } }; -static void aspeed_xdma_register_type(void) -{ - type_register_static(&aspeed_xdma_info); - type_register_static(&aspeed_2400_xdma_info); - type_register_static(&aspeed_2500_xdma_info); - type_register_static(&aspeed_2600_xdma_info); -} -type_init(aspeed_xdma_register_type); +DEFINE_TYPES(aspeed_xdma_types) -- 2.43.0
