diff mbox

spapr: Define a 2.1 pseries machine

Message ID 1403622033-3748-1-git-send-email-aik@ozlabs.ru
State New
Headers show

Commit Message

Alexey Kardashevskiy June 24, 2014, 3 p.m. UTC
This adds a v2.1 machine to support backward compatibility
for newer macines in the case if they ever be implemented.

This adds a "pseries-2.1" machine as a child of the "pseries"
machine and only changes visible machine name.

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
---

It seems to be everyone's consensus that we want some versioned
pseries machine so here it is :)

---
 hw/ppc/spapr.c | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

Comments

Alexey Kardashevskiy June 24, 2014, 3:16 p.m. UTC | #1
On 06/25/2014 01:00 AM, Alexey Kardashevskiy wrote:
> This adds a v2.1 machine to support backward compatibility
> for newer macines in the case if they ever be implemented.
> 
> This adds a "pseries-2.1" machine as a child of the "pseries"
> machine and only changes visible machine name.
> 
> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>

Agrh. Drop it. For some reason unknown there is SPAPRMachine struct instead
of expected sPAPRMachineState struct. I'll change this and repost
everything in a patchset.


> ---
> 
> It seems to be everyone's consensus that we want some versioned
> pseries machine so here it is :)
> 
> ---
>  hw/ppc/spapr.c | 17 +++++++++++++++++
>  1 file changed, 17 insertions(+)
> 
> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
> index f4d464a..ab8f1ba 100644
> --- a/hw/ppc/spapr.c
> +++ b/hw/ppc/spapr.c
> @@ -1672,9 +1672,26 @@ static const TypeInfo spapr_machine_info = {
>      },
>  };
>  
> +static void spapr_machine_2_1_class_init(ObjectClass *oc, void *data)
> +{
> +    MachineClass *mc = MACHINE_CLASS(oc);
> +
> +    mc->name = "pseries-2.1";
> +    mc->desc = "pSeries Logical Partition (PAPR compliant) v2.1";
> +    mc->is_default = 0;
> +}
> +
> +static const TypeInfo spapr_machine_2_1_info = {
> +    .name          = TYPE_SPAPR_MACHINE "2.1",
> +    .parent        = TYPE_SPAPR_MACHINE,
> +    .instance_size = sizeof(SPAPRMachine),
> +    .class_init    = spapr_machine_2_1_class_init,
> +};
> +
>  static void spapr_machine_register_types(void)
>  {
>      type_register_static(&spapr_machine_info);
> +    type_register_static(&spapr_machine_2_1_info);
>  }
>  
>  type_init(spapr_machine_register_types)
>
diff mbox

Patch

diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index f4d464a..ab8f1ba 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -1672,9 +1672,26 @@  static const TypeInfo spapr_machine_info = {
     },
 };
 
+static void spapr_machine_2_1_class_init(ObjectClass *oc, void *data)
+{
+    MachineClass *mc = MACHINE_CLASS(oc);
+
+    mc->name = "pseries-2.1";
+    mc->desc = "pSeries Logical Partition (PAPR compliant) v2.1";
+    mc->is_default = 0;
+}
+
+static const TypeInfo spapr_machine_2_1_info = {
+    .name          = TYPE_SPAPR_MACHINE "2.1",
+    .parent        = TYPE_SPAPR_MACHINE,
+    .instance_size = sizeof(SPAPRMachine),
+    .class_init    = spapr_machine_2_1_class_init,
+};
+
 static void spapr_machine_register_types(void)
 {
     type_register_static(&spapr_machine_info);
+    type_register_static(&spapr_machine_2_1_info);
 }
 
 type_init(spapr_machine_register_types)