On 18/09/2025 19:50, BALATON Zoltan wrote:
> Convert to using DEFINE_TYPES macro and move raven_pcihost_class_init
> so methods of each object are grouped together.
>
> Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
> ---
> hw/pci-host/raven.c | 57 +++++++++++++++++++++------------------------
> 1 file changed, 26 insertions(+), 31 deletions(-)
>
> diff --git a/hw/pci-host/raven.c b/hw/pci-host/raven.c
> index 878c915de5..e0f98afebf 100644
> --- a/hw/pci-host/raven.c
> +++ b/hw/pci-host/raven.c
> @@ -304,6 +304,15 @@ static void raven_pcihost_initfn(Object *obj)
> h->bus = &s->pci_bus;
> }
>
> +static void raven_pcihost_class_init(ObjectClass *klass, const void *data)
> +{
> + DeviceClass *dc = DEVICE_CLASS(klass);
> +
> + set_bit(DEVICE_CATEGORY_BRIDGE, dc->categories);
> + dc->realize = raven_pcihost_realizefn;
> + dc->fw_name = "pci";
> +}
> +
> static void raven_realize(PCIDevice *d, Error **errp)
> {
> d->config[PCI_CACHE_LINE_SIZE] = 0x08;
> @@ -329,37 +338,23 @@ static void raven_class_init(ObjectClass *klass, const void *data)
> dc->user_creatable = false;
> }
>
> -static const TypeInfo raven_info = {
> - .name = TYPE_RAVEN_PCI_DEVICE,
> - .parent = TYPE_PCI_DEVICE,
> - .class_init = raven_class_init,
> - .interfaces = (const InterfaceInfo[]) {
> - { INTERFACE_CONVENTIONAL_PCI_DEVICE },
> - { },
> +static const TypeInfo raven_types[] = {
> + {
> + .name = TYPE_RAVEN_PCI_HOST_BRIDGE,
> + .parent = TYPE_PCI_HOST_BRIDGE,
> + .instance_size = sizeof(PREPPCIState),
> + .instance_init = raven_pcihost_initfn,
> + .class_init = raven_pcihost_class_init,
> + },
> + {
> + .name = TYPE_RAVEN_PCI_DEVICE,
> + .parent = TYPE_PCI_DEVICE,
> + .class_init = raven_class_init,
> + .interfaces = (const InterfaceInfo[]) {
> + { INTERFACE_CONVENTIONAL_PCI_DEVICE },
> + { },
> + },
> },
> };
>
> -static void raven_pcihost_class_init(ObjectClass *klass, const void *data)
> -{
> - DeviceClass *dc = DEVICE_CLASS(klass);
> -
> - set_bit(DEVICE_CATEGORY_BRIDGE, dc->categories);
> - dc->realize = raven_pcihost_realizefn;
> - dc->fw_name = "pci";
> -}
> -
> -static const TypeInfo raven_pcihost_info = {
> - .name = TYPE_RAVEN_PCI_HOST_BRIDGE,
> - .parent = TYPE_PCI_HOST_BRIDGE,
> - .instance_size = sizeof(PREPPCIState),
> - .instance_init = raven_pcihost_initfn,
> - .class_init = raven_pcihost_class_init,
> -};
> -
> -static void raven_register_types(void)
> -{
> - type_register_static(&raven_pcihost_info);
> - type_register_static(&raven_info);
> -}
> -
> -type_init(raven_register_types)
> +DEFINE_TYPES(raven_types)
Reviewed-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
ATB,
Mark.