Constify various TypeInfo structures. When they are generated from an array, also constify the array.
Suggested-by: Richard Henderson <richard.hender...@linaro.org> Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org> --- hw/net/e1000.c | 12 ++++++------ hw/rtc/m48t59-isa.c | 22 +++++++++++----------- hw/rtc/m48t59.c | 22 +++++++++++----------- hw/scsi/megasas.c | 16 ++++++++-------- hw/usb/hcd-ehci-pci.c | 20 ++++++++++---------- hw/usb/hcd-uhci.c | 20 ++++++++++---------- hw/usb/vt82c686-uhci-pci.c | 6 +++--- 7 files changed, 59 insertions(+), 59 deletions(-) diff --git a/hw/net/e1000.c b/hw/net/e1000.c index cba4999e6d0..4436c2ce0cc 100644 --- a/hw/net/e1000.c +++ b/hw/net/e1000.c @@ -1766,12 +1766,12 @@ static void e1000_register_types(void) type_register_static(&e1000_base_info); for (i = 0; i < ARRAY_SIZE(e1000_devices); i++) { const E1000Info *info = &e1000_devices[i]; - TypeInfo type_info = {}; - - type_info.name = info->name; - type_info.parent = TYPE_E1000_BASE; - type_info.class_data = info; - type_info.class_init = e1000_class_init; + const TypeInfo type_info = { + .name = info->name, + .parent = TYPE_E1000_BASE, + .class_data = info, + .class_init = e1000_class_init, + }; type_register_static(&type_info); } diff --git a/hw/rtc/m48t59-isa.c b/hw/rtc/m48t59-isa.c index 9e2f6563a0a..152208d931e 100644 --- a/hw/rtc/m48t59-isa.c +++ b/hw/rtc/m48t59-isa.c @@ -51,7 +51,7 @@ struct M48txxISADeviceClass { M48txxInfo info; }; -static M48txxInfo m48txx_isa_info[] = { +static const M48txxInfo m48txx_isa_info[] = { { .bus_name = "isa-m48t59", .model = 59, @@ -148,18 +148,18 @@ static const TypeInfo m48txx_isa_type_info = { static void m48t59_isa_register_types(void) { - TypeInfo isa_type_info = { - .parent = TYPE_M48TXX_ISA, - .class_size = sizeof(M48txxISADeviceClass), - .class_init = m48txx_isa_concrete_class_init, - }; - int i; - type_register_static(&m48txx_isa_type_info); - for (i = 0; i < ARRAY_SIZE(m48txx_isa_info); i++) { - isa_type_info.name = m48txx_isa_info[i].bus_name; - isa_type_info.class_data = &m48txx_isa_info[i]; + for (unsigned i = 0; i < ARRAY_SIZE(m48txx_isa_info); i++) { + const M48txxInfo *info = &m48txx_isa_info[i]; + const TypeInfo isa_type_info = { + .name = info->bus_name, + .parent = TYPE_M48TXX_ISA, + .class_size = sizeof(M48txxISADeviceClass), + .class_init = m48txx_isa_concrete_class_init, + .class_data = info, + }; + type_register_static(&isa_type_info); } } diff --git a/hw/rtc/m48t59.c b/hw/rtc/m48t59.c index 68be2dad6f3..967331401a7 100644 --- a/hw/rtc/m48t59.c +++ b/hw/rtc/m48t59.c @@ -66,7 +66,7 @@ struct M48txxSysBusDeviceClass { M48txxInfo info; }; -static M48txxInfo m48txx_sysbus_info[] = { +static const M48txxInfo m48txx_sysbus_info[] = { { .bus_name = "sysbus-m48t02", .model = 2, @@ -666,19 +666,19 @@ static const TypeInfo m48txx_sysbus_type_info = { static void m48t59_register_types(void) { - TypeInfo sysbus_type_info = { - .parent = TYPE_M48TXX_SYS_BUS, - .class_size = sizeof(M48txxSysBusDeviceClass), - .class_init = m48txx_sysbus_concrete_class_init, - }; - int i; - type_register_static(&nvram_info); type_register_static(&m48txx_sysbus_type_info); - for (i = 0; i < ARRAY_SIZE(m48txx_sysbus_info); i++) { - sysbus_type_info.name = m48txx_sysbus_info[i].bus_name; - sysbus_type_info.class_data = &m48txx_sysbus_info[i]; + for (unsigned i = 0; i < ARRAY_SIZE(m48txx_sysbus_info); i++) { + const M48txxInfo *info = &m48txx_sysbus_info[i]; + const TypeInfo sysbus_type_info = { + .name = info->bus_name, + .parent = TYPE_M48TXX_SYS_BUS, + .class_size = sizeof(M48txxSysBusDeviceClass), + .class_init = m48txx_sysbus_concrete_class_init, + .class_data = info, + }; + type_register_static(&sysbus_type_info); } } diff --git a/hw/scsi/megasas.c b/hw/scsi/megasas.c index 03cd837b44f..ccd87fb0604 100644 --- a/hw/scsi/megasas.c +++ b/hw/scsi/megasas.c @@ -2490,7 +2490,7 @@ typedef struct MegasasInfo { const InterfaceInfo *interfaces; } MegasasInfo; -static struct MegasasInfo megasas_devices[] = { +static const struct MegasasInfo megasas_devices[] = { { .name = TYPE_MEGASAS_GEN1, .desc = "LSI MegaRAID SAS 1078", @@ -2569,13 +2569,13 @@ static void megasas_register_types(void) type_register_static(&megasas_info); for (i = 0; i < ARRAY_SIZE(megasas_devices); i++) { const MegasasInfo *info = &megasas_devices[i]; - TypeInfo type_info = {}; - - type_info.name = info->name; - type_info.parent = TYPE_MEGASAS_BASE; - type_info.class_data = info; - type_info.class_init = megasas_class_init; - type_info.interfaces = info->interfaces; + const TypeInfo type_info = { + .name = info->name, + .parent = TYPE_MEGASAS_BASE, + .class_data = info, + .class_init = megasas_class_init, + .interfaces = info->interfaces, + }; type_register_static(&type_info); } diff --git a/hw/usb/hcd-ehci-pci.c b/hw/usb/hcd-ehci-pci.c index 38ad3406b32..5a96c15c67c 100644 --- a/hw/usb/hcd-ehci-pci.c +++ b/hw/usb/hcd-ehci-pci.c @@ -193,7 +193,7 @@ static void ehci_data_class_init(ObjectClass *klass, const void *data) } } -static struct EHCIPCIInfo ehci_pci_info[] = { +static const struct EHCIPCIInfo ehci_pci_info[] = { { .name = "usb-ehci", .vendor_id = PCI_VENDOR_ID_INTEL, @@ -216,17 +216,17 @@ static struct EHCIPCIInfo ehci_pci_info[] = { static void ehci_pci_register_types(void) { - TypeInfo ehci_type_info = { - .parent = TYPE_PCI_EHCI, - .class_init = ehci_data_class_init, - }; - int i; - type_register_static(&ehci_pci_type_info); - for (i = 0; i < ARRAY_SIZE(ehci_pci_info); i++) { - ehci_type_info.name = ehci_pci_info[i].name; - ehci_type_info.class_data = ehci_pci_info + i; + for (unsigned i = 0; i < ARRAY_SIZE(ehci_pci_info); i++) { + const EHCIPCIInfo *info = &ehci_pci_info[i]; + const TypeInfo ehci_type_info = { + .name = info->name, + .parent = TYPE_PCI_EHCI, + .class_data = info, + .class_init = ehci_data_class_init, + }; + type_register_static(&ehci_type_info); } } diff --git a/hw/usb/hcd-uhci.c b/hw/usb/hcd-uhci.c index 4822c704f69..9c671f53684 100644 --- a/hw/usb/hcd-uhci.c +++ b/hw/usb/hcd-uhci.c @@ -1309,7 +1309,7 @@ void uhci_data_class_init(ObjectClass *klass, const void *data) u->info = *info; } -static UHCIInfo uhci_info[] = { +static const UHCIInfo uhci_info[] = { { .name = TYPE_PIIX3_USB_UHCI, .vendor_id = PCI_VENDOR_ID_INTEL, @@ -1371,17 +1371,17 @@ static UHCIInfo uhci_info[] = { static void uhci_register_types(void) { - TypeInfo uhci_type_info = { - .parent = TYPE_UHCI, - .class_init = uhci_data_class_init, - }; - int i; - type_register_static(&uhci_pci_type_info); - for (i = 0; i < ARRAY_SIZE(uhci_info); i++) { - uhci_type_info.name = uhci_info[i].name; - uhci_type_info.class_data = uhci_info + i; + for (unsigned i = 0; i < ARRAY_SIZE(uhci_info); i++) { + const UHCIInfo *info = &uhci_info[i]; + const TypeInfo uhci_type_info = { + .name = info->name, + .parent = TYPE_UHCI, + .class_data = info, + .class_init = uhci_data_class_init, + }; + type_register_static(&uhci_type_info); } } diff --git a/hw/usb/vt82c686-uhci-pci.c b/hw/usb/vt82c686-uhci-pci.c index 61628061722..cd5ca9c8850 100644 --- a/hw/usb/vt82c686-uhci-pci.c +++ b/hw/usb/vt82c686-uhci-pci.c @@ -26,7 +26,7 @@ static void usb_uhci_vt82c686b_realize(PCIDevice *dev, Error **errp) s->irq = qemu_allocate_irq(uhci_isa_set_irq, s, 0); } -static UHCIInfo uhci_info[] = { +static const UHCIInfo uhci_info[] = { { .name = TYPE_VT82C686B_USB_UHCI, .vendor_id = PCI_VENDOR_ID_VIA, @@ -37,14 +37,14 @@ static UHCIInfo uhci_info[] = { .unplug = true, /* Reason: only works as USB function of VT82xx superio chips */ .notuser = true, - } + }, }; static const TypeInfo vt82c686b_usb_uhci_type_info = { .parent = TYPE_UHCI, .name = TYPE_VT82C686B_USB_UHCI, .class_init = uhci_data_class_init, - .class_data = uhci_info, + .class_data = &uhci_info[0], }; static void vt82c686b_usb_uhci_register_types(void) -- 2.47.1