qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 02/20] ppc/ppc405: Introduce a PPC405 generic machine


From: Daniel Henrique Barboza
Subject: Re: [PATCH v2 02/20] ppc/ppc405: Introduce a PPC405 generic machine
Date: Wed, 3 Aug 2022 14:35:06 -0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.10.0



On 8/3/22 14:03, BALATON Zoltan wrote:
On Wed, 3 Aug 2022, Cédric Le Goater wrote:
We will use this machine as a base to define the ref405ep and possibly
the PPC405 hotfoot board as found in the Linux kernel.

Signed-off-by: Cédric Le Goater <clg@kaod.org>
---
hw/ppc/ppc405_boards.c | 31 ++++++++++++++++++++++++++++---
1 file changed, 28 insertions(+), 3 deletions(-)

diff --git a/hw/ppc/ppc405_boards.c b/hw/ppc/ppc405_boards.c
index 1a4e7588c584..4c269b6526a5 100644
--- a/hw/ppc/ppc405_boards.c
+++ b/hw/ppc/ppc405_boards.c
@@ -50,6 +50,15 @@

#define USE_FLASH_BIOS

+struct Ppc405MachineState {
+    /* Private */
+    MachineState parent_obj;
+    /* Public */
+};
+
+#define TYPE_PPC405_MACHINE MACHINE_TYPE_NAME("ppc405")
+OBJECT_DECLARE_SIMPLE_TYPE(Ppc405MachineState, PPC405_MACHINE);

In other patches the declaration of the state struct comes after the 
OBJECT_DECLARE macro so here instead of above. It would be better to write it 
like that here too for consistency and also because then the DECLARE macro 
starts the object declaration and everything belonging to the object are 
together below it. Declaring the structure before is kind of outside the 
object, although this is only cosmetic and may be a matter of style.

Good point. I moved the struct declaration to after the OBJECT_DECLARE macro.


Thanks,

Daniel


Regards,
BALATON Zoltan

+
/*****************************************************************************/
/* PPC405EP reference board (IBM) */
/* Standalone board with:
@@ -332,18 +341,34 @@ static void ref405ep_class_init(ObjectClass *oc, void 
*data)

    mc->desc = "ref405ep";
    mc->init = ref405ep_init;
-    mc->default_ram_size = 0x08000000;
-    mc->default_ram_id = "ef405ep.ram";
}

static const TypeInfo ref405ep_type = {
    .name = MACHINE_TYPE_NAME("ref405ep"),
-    .parent = TYPE_MACHINE,
+    .parent = TYPE_PPC405_MACHINE,
    .class_init = ref405ep_class_init,
};

+static void ppc405_machine_class_init(ObjectClass *oc, void *data)
+{
+    MachineClass *mc = MACHINE_CLASS(oc);
+
+    mc->desc = "PPC405 generic machine";
+    mc->default_ram_size = 0x08000000;
+    mc->default_ram_id = "ppc405.ram";
+}
+
+static const TypeInfo ppc405_machine_type = {
+    .name = TYPE_PPC405_MACHINE,
+    .parent = TYPE_MACHINE,
+    .instance_size = sizeof(Ppc405MachineState),
+    .class_init = ppc405_machine_class_init,
+    .abstract = true,
+};
+
static void ppc405_machine_init(void)
{
+    type_register_static(&ppc405_machine_type);
    type_register_static(&ref405ep_type);
}





reply via email to

[Prev in Thread] Current Thread [Next in Thread]