qemu-ppc
[Top][All Lists]
Advanced

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

Re: [Qemu-ppc] [PATCH v0] spapr: Restore support for 970MP and POWER8NVL


From: Bharata B Rao
Subject: Re: [Qemu-ppc] [PATCH v0] spapr: Restore support for 970MP and POWER8NVL CPU cores
Date: Wed, 29 Jun 2016 19:03:49 +0530
User-agent: Mutt/1.5.23 (2014-03-12)

On Wed, Jun 29, 2016 at 02:28:08PM +0200, Thomas Huth wrote:
> On 29.06.2016 13:37, Bharata B Rao wrote:
> > Introduction of core based CPU hotplug for PowerPC sPAPR didn't
> > add support for 970MP and POWER8NVL based core types. Add support for
> > the same.
> > 
> > While we are here, add support for explicit specification of POWER5+_v2.1
> > core type.
> > 
> > Signed-off-by: Bharata B Rao <address@hidden>
> > ---
> >  hw/ppc/spapr_cpu_core.c | 20 ++++++++++++++++++--
> >  1 file changed, 18 insertions(+), 2 deletions(-)
> > 
> > diff --git a/hw/ppc/spapr_cpu_core.c b/hw/ppc/spapr_cpu_core.c
> > index 2aa0dc5..e30b159 100644
> > --- a/hw/ppc/spapr_cpu_core.c
> > +++ b/hw/ppc/spapr_cpu_core.c
> > @@ -337,12 +337,15 @@ static void glue(glue(spapr_cpu_core_, _fname), 
> > _initfn(Object *obj)) \
> >      core->cpu_class = oc; \
> >  }
> >  
> > +SPAPR_CPU_CORE_INITFN(970mp_v1.0, 970MP_v10);
> > +SPAPR_CPU_CORE_INITFN(970mp_v1.1, 970MP_v11);
> >  SPAPR_CPU_CORE_INITFN(970_v2.2, 970);
> >  SPAPR_CPU_CORE_INITFN(POWER5+_v2.1, POWER5plus);
> >  SPAPR_CPU_CORE_INITFN(POWER7_v2.3, POWER7);
> >  SPAPR_CPU_CORE_INITFN(POWER7+_v2.1, POWER7plus);
> >  SPAPR_CPU_CORE_INITFN(POWER8_v2.0, POWER8);
> >  SPAPR_CPU_CORE_INITFN(POWER8E_v2.1, POWER8E);
> > +SPAPR_CPU_CORE_INITFN(POWER8NVL_v1.0, POWER8NVL);
> >  
> >  typedef struct SPAPRCoreInfo {
> >      const char *name;
> > @@ -350,10 +353,19 @@ typedef struct SPAPRCoreInfo {
> >  } SPAPRCoreInfo;
> >  
> >  static const SPAPRCoreInfo spapr_cores[] = {
> > -    /* 970 */
> > +    /* 970 and aliaes */
> > +    { .name = "970_v2.2", .initfn = spapr_cpu_core_970_initfn },
> >      { .name = "970", .initfn = spapr_cpu_core_970_initfn },
> >  
> > -    /* POWER5 */
> > +    /* 970MP variants and aliases */
> > +    { .name = "970MP_v1.0", .initfn = spapr_cpu_core_970MP_v10_initfn },
> > +    { .name = "970mp_v1.0", .initfn = spapr_cpu_core_970MP_v10_initfn },
> > +    { .name = "970MP_v1.1", .initfn = spapr_cpu_core_970MP_v11_initfn },
> > +    { .name = "970mp_v1.1", .initfn = spapr_cpu_core_970MP_v11_initfn },
> > +    { .name = "970mp", .initfn = spapr_cpu_core_970MP_v11_initfn },
> 
> Are the upper-case "970MP_v1.1" and "970MP_v1.0" lines required here?
> According to target-ppc/cpu-models.c, these CPU models are always
> spelled with lower-case letters in QEMU, aren't they?

The .name here is used to build the type of spapr-cpu-core based on the
CPU model specified. I saw that we support both

-cpu 970MP_v1.1 and
-cpu 970mp_v1.1

Same for v1.0 (but support only -cpu 970mp and not -cpu 970MP!)

Hence the above lines are needed to register appropriate spapr-cpu-core
types (970mp_v1.1-spapr-cpu-core or 970MP_v1.1-spapr-cpu-core) based on the
CPU model specified.

Regards,
Bharata.




reply via email to

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