hw/misc/aspeed_hace: Convert to DEFINE_TYPES() with inlined TypeInfo
Replace the legacy type_register_static()/type_init() registration pattern with the modern DEFINE_TYPES() macro. Inline 6 standalone TypeInfo variables (aspeed_hace_info as abstract base, aspeed_2400_hace_info, aspeed_2500_hace_info, aspeed_2600_hace_info, aspeed_1030_hace_info, aspeed_2700_hace_info) directly into the 'aspeed_hace_types[]' array, removing the need for separate declarations. No functional change. Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com> Reviewed-by: Cédric Le Goater <clg@redhat.com> Link: https://lore.kernel.org/qemu-devel/20260601024959.2347639-2-jamin_lin@aspeedtech.com Signed-off-by: Cédric Le Goater <clg@redhat.com>
Jamin Lin committed
Jun 1, 2026 at 02:50 UTC
16382404d91e347563cdc30907edec37c0770c3d
1 file changed
+34
-47
hw/misc/aspeed_hace.c
+34
-47
@@ -696,14 +696,6 @@ static void aspeed_hace_class_init(ObjectClass *klass, const void *data)
696
dc->vmsd = &vmstate_aspeed_hace;
697
}
698
699
-static const TypeInfo aspeed_hace_info = {
700
- .name = TYPE_ASPEED_HACE,
701
- .parent = TYPE_SYS_BUS_DEVICE,
702
- .instance_size = sizeof(AspeedHACEState),
703
- .class_init = aspeed_hace_class_init,
704
- .class_size = sizeof(AspeedHACEClass)
705
-};
706
-
699
static void aspeed_ast2400_hace_class_init(ObjectClass *klass, const void *data)
700
{
701
DeviceClass *dc = DEVICE_CLASS(klass);
@@ -718,12 +710,6 @@ static void aspeed_ast2400_hace_class_init(ObjectClass *klass, const void *data)
710
ahc->hash_mask = 0x000003ff; /* No SG or SHA512 modes */
711
}
712
721
-static const TypeInfo aspeed_ast2400_hace_info = {
722
- .name = TYPE_ASPEED_AST2400_HACE,
723
- .parent = TYPE_ASPEED_HACE,
724
- .class_init = aspeed_ast2400_hace_class_init,
725
-};
726
-
713
static void aspeed_ast2500_hace_class_init(ObjectClass *klass, const void *data)
714
{
715
DeviceClass *dc = DEVICE_CLASS(klass);
@@ -738,12 +724,6 @@ static void aspeed_ast2500_hace_class_init(ObjectClass *klass, const void *data)
724
ahc->hash_mask = 0x000003ff; /* No SG or SHA512 modes */
725
}
726
741
-static const TypeInfo aspeed_ast2500_hace_info = {
742
- .name = TYPE_ASPEED_AST2500_HACE,
743
- .parent = TYPE_ASPEED_HACE,
744
- .class_init = aspeed_ast2500_hace_class_init,
745
-};
746
-
727
static void aspeed_ast2600_hace_class_init(ObjectClass *klass, const void *data)
728
{
729
DeviceClass *dc = DEVICE_CLASS(klass);
@@ -758,12 +738,6 @@ static void aspeed_ast2600_hace_class_init(ObjectClass *klass, const void *data)
738
ahc->hash_mask = 0x00147FFF;
739
}
740
761
-static const TypeInfo aspeed_ast2600_hace_info = {
762
- .name = TYPE_ASPEED_AST2600_HACE,
763
- .parent = TYPE_ASPEED_HACE,
764
- .class_init = aspeed_ast2600_hace_class_init,
765
-};
766
-
741
static void aspeed_ast1030_hace_class_init(ObjectClass *klass, const void *data)
742
{
743
DeviceClass *dc = DEVICE_CLASS(klass);
@@ -778,12 +752,6 @@ static void aspeed_ast1030_hace_class_init(ObjectClass *klass, const void *data)
752
ahc->hash_mask = 0x00147FFF;
753
}
754
781
-static const TypeInfo aspeed_ast1030_hace_info = {
782
- .name = TYPE_ASPEED_AST1030_HACE,
783
- .parent = TYPE_ASPEED_HACE,
784
- .class_init = aspeed_ast1030_hace_class_init,
785
-};
786
-
755
static void aspeed_ast2700_hace_class_init(ObjectClass *klass, const void *data)
756
{
757
DeviceClass *dc = DEVICE_CLASS(klass);
@@ -823,20 +791,39 @@ static void aspeed_ast2700_hace_class_init(ObjectClass *klass, const void *data)
791
ahc->has_dma64 = true;
792
}
793
826
-static const TypeInfo aspeed_ast2700_hace_info = {
827
- .name = TYPE_ASPEED_AST2700_HACE,
828
- .parent = TYPE_ASPEED_HACE,
829
- .class_init = aspeed_ast2700_hace_class_init,
794
+static const TypeInfo aspeed_hace_types[] = {
795
+ {
796
+ .name = TYPE_ASPEED_HACE,
797
+ .parent = TYPE_SYS_BUS_DEVICE,
798
+ .instance_size = sizeof(AspeedHACEState),
799
+ .class_init = aspeed_hace_class_init,
800
+ .class_size = sizeof(AspeedHACEClass),
801
+ },
802
+ {
803
+ .name = TYPE_ASPEED_AST1030_HACE,
804
+ .parent = TYPE_ASPEED_HACE,
805
+ .class_init = aspeed_ast1030_hace_class_init,
806
+ },
807
+ {
808
+ .name = TYPE_ASPEED_AST2400_HACE,
809
+ .parent = TYPE_ASPEED_HACE,
810
+ .class_init = aspeed_ast2400_hace_class_init,
811
+ },
812
+ {
813
+ .name = TYPE_ASPEED_AST2500_HACE,
814
+ .parent = TYPE_ASPEED_HACE,
815
+ .class_init = aspeed_ast2500_hace_class_init,
816
+ },
817
+ {
818
+ .name = TYPE_ASPEED_AST2600_HACE,
819
+ .parent = TYPE_ASPEED_HACE,
820
+ .class_init = aspeed_ast2600_hace_class_init,
821
+ },
822
+ {
823
+ .name = TYPE_ASPEED_AST2700_HACE,
824
+ .parent = TYPE_ASPEED_HACE,
825
+ .class_init = aspeed_ast2700_hace_class_init,
826
+ }
827
};
828
832
-static void aspeed_hace_register_types(void)
833
-{
834
- type_register_static(&aspeed_ast2400_hace_info);
835
- type_register_static(&aspeed_ast2500_hace_info);
836
- type_register_static(&aspeed_ast2600_hace_info);
837
- type_register_static(&aspeed_ast1030_hace_info);
838
- type_register_static(&aspeed_ast2700_hace_info);
839
- type_register_static(&aspeed_hace_info);
840
-}
841
-
842
-type_init(aspeed_hace_register_types);
829
+DEFINE_TYPES(aspeed_hace_types)