On Wed, Jun 29, 2016 at 05:07:26PM +0530, 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 Applied to ppc-for-2.7, thanks. > --- > 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 }, > + > + /* POWER5 and aliases */ > + { .name = "POWER5+_v2.1", .initfn = spapr_cpu_core_POWER5plus_initfn }, > { .name = "POWER5+", .initfn = spapr_cpu_core_POWER5plus_initfn }, > > /* POWER7 and aliases */ > @@ -373,6 +385,10 @@ static const SPAPRCoreInfo spapr_cores[] = { > { .name = "POWER8E_v2.1", .initfn = spapr_cpu_core_POWER8E_initfn }, > { .name = "POWER8E", .initfn = spapr_cpu_core_POWER8E_initfn }, > > + /* POWER8NVL and aliases */ > + { .name = "POWER8NVL_v1.0", .initfn = spapr_cpu_core_POWER8NVL_initfn }, > + { .name = "POWER8NVL", .initfn = spapr_cpu_core_POWER8NVL_initfn }, > + > { .name = NULL } > }; > -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson