From: Jamin Lin Date: Mon, 1 Jun 2026 02:50:19 +0000 (+0000) Subject: hw/gpio/aspeed_gpio: Convert to DEFINE_TYPES() with inlined TypeInfo X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4bf949e880bf897a90482cb8993c19ad04430cba;p=thirdparty%2Fqemu.git hw/gpio/aspeed_gpio: Convert to DEFINE_TYPES() with inlined TypeInfo Replace the legacy type_register_static()/type_init() registration pattern with the modern DEFINE_TYPES() macro. Inline 7 standalone TypeInfo variables (aspeed_gpio_info as abstract base, aspeed_2400_gpio_info, aspeed_2500_gpio_info, aspeed_2600_1_8v_gpio_info, aspeed_2600_3_3v_gpio_info, aspeed_1030_gpio_info, aspeed_2700_gpio_info) directly into the 'aspeed_gpio_types[]' array, removing the need for separate declarations. No functional change. Signed-off-by: Jamin Lin Reviewed-by: Cédric Le Goater Link: https://lore.kernel.org/qemu-devel/20260601024959.2347639-13-jamin_lin@aspeedtech.com Signed-off-by: Cédric Le Goater --- diff --git a/hw/gpio/aspeed_gpio.c b/hw/gpio/aspeed_gpio.c index ef321b7386..1cf6f5df55 100644 --- a/hw/gpio/aspeed_gpio.c +++ b/hw/gpio/aspeed_gpio.c @@ -1620,66 +1620,51 @@ static void aspeed_gpio_2700_class_init(ObjectClass *klass, const void *data) agc->reg_ops = &aspeed_gpio_2700_ops; } -static const TypeInfo aspeed_gpio_info = { - .name = TYPE_ASPEED_GPIO, - .parent = TYPE_SYS_BUS_DEVICE, - .instance_size = sizeof(AspeedGPIOState), - .class_size = sizeof(AspeedGPIOClass), - .class_init = aspeed_gpio_class_init, - .abstract = true, -}; - -static const TypeInfo aspeed_gpio_ast2400_info = { - .name = TYPE_ASPEED_GPIO "-ast2400", - .parent = TYPE_ASPEED_GPIO, - .class_init = aspeed_gpio_ast2400_class_init, - .instance_init = aspeed_gpio_init, -}; - -static const TypeInfo aspeed_gpio_ast2500_info = { - .name = TYPE_ASPEED_GPIO "-ast2500", - .parent = TYPE_ASPEED_GPIO, - .class_init = aspeed_gpio_2500_class_init, - .instance_init = aspeed_gpio_init, -}; - -static const TypeInfo aspeed_gpio_ast2600_3_3v_info = { - .name = TYPE_ASPEED_GPIO "-ast2600", - .parent = TYPE_ASPEED_GPIO, - .class_init = aspeed_gpio_ast2600_3_3v_class_init, - .instance_init = aspeed_gpio_init, -}; - -static const TypeInfo aspeed_gpio_ast2600_1_8v_info = { - .name = TYPE_ASPEED_GPIO "-ast2600-1_8v", - .parent = TYPE_ASPEED_GPIO, - .class_init = aspeed_gpio_ast2600_1_8v_class_init, - .instance_init = aspeed_gpio_init, -}; - -static const TypeInfo aspeed_gpio_ast1030_info = { - .name = TYPE_ASPEED_GPIO "-ast1030", - .parent = TYPE_ASPEED_GPIO, - .class_init = aspeed_gpio_1030_class_init, - .instance_init = aspeed_gpio_init, -}; - -static const TypeInfo aspeed_gpio_ast2700_info = { - .name = TYPE_ASPEED_GPIO "-ast2700", - .parent = TYPE_ASPEED_GPIO, - .class_init = aspeed_gpio_2700_class_init, - .instance_init = aspeed_gpio_init, +static const TypeInfo aspeed_gpio_types[] = { + { + .name = TYPE_ASPEED_GPIO, + .parent = TYPE_SYS_BUS_DEVICE, + .instance_size = sizeof(AspeedGPIOState), + .class_size = sizeof(AspeedGPIOClass), + .class_init = aspeed_gpio_class_init, + .abstract = true, + }, + { + .name = TYPE_ASPEED_GPIO "-ast1030", + .parent = TYPE_ASPEED_GPIO, + .class_init = aspeed_gpio_1030_class_init, + .instance_init = aspeed_gpio_init, + }, + { + .name = TYPE_ASPEED_GPIO "-ast2400", + .parent = TYPE_ASPEED_GPIO, + .class_init = aspeed_gpio_ast2400_class_init, + .instance_init = aspeed_gpio_init, + }, + { + .name = TYPE_ASPEED_GPIO "-ast2500", + .parent = TYPE_ASPEED_GPIO, + .class_init = aspeed_gpio_2500_class_init, + .instance_init = aspeed_gpio_init, + }, + { + .name = TYPE_ASPEED_GPIO "-ast2600", + .parent = TYPE_ASPEED_GPIO, + .class_init = aspeed_gpio_ast2600_3_3v_class_init, + .instance_init = aspeed_gpio_init, + }, + { + .name = TYPE_ASPEED_GPIO "-ast2600-1_8v", + .parent = TYPE_ASPEED_GPIO, + .class_init = aspeed_gpio_ast2600_1_8v_class_init, + .instance_init = aspeed_gpio_init, + }, + { + .name = TYPE_ASPEED_GPIO "-ast2700", + .parent = TYPE_ASPEED_GPIO, + .class_init = aspeed_gpio_2700_class_init, + .instance_init = aspeed_gpio_init, + } }; -static void aspeed_gpio_register_types(void) -{ - type_register_static(&aspeed_gpio_info); - type_register_static(&aspeed_gpio_ast2400_info); - type_register_static(&aspeed_gpio_ast2500_info); - type_register_static(&aspeed_gpio_ast2600_3_3v_info); - type_register_static(&aspeed_gpio_ast2600_1_8v_info); - type_register_static(&aspeed_gpio_ast1030_info); - type_register_static(&aspeed_gpio_ast2700_info); -} - -type_init(aspeed_gpio_register_types); +DEFINE_TYPES(aspeed_gpio_types)