From: David Gibson <david@gibson.dropbear.id.au>
To: Igor Mammedov <imammedo@redhat.com>
Cc: qemu-devel@nongnu.org, "Alexander Graf" <agraf@suse.de>,
"Hervé Poussineau" <hpoussin@reactos.org>,
"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
"open list:ppce500" <qemu-ppc@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH 18/23] ppc: pnv: use generic cpu_model parsing
Date: Mon, 9 Oct 2017 17:59:32 +1100 [thread overview]
Message-ID: <20171009065932.GR10050@umbus.fritz.box> (raw)
In-Reply-To: <20171009074415.71d9dbba@nial.brq.redhat.com>
[-- Attachment #1: Type: text/plain, Size: 4085 bytes --]
On Mon, Oct 09, 2017 at 07:44:15AM +0200, Igor Mammedov wrote:
> On Fri, 6 Oct 2017 22:25:03 +1100
> David Gibson <david@gibson.dropbear.id.au> wrote:
>
> > On Fri, Oct 06, 2017 at 11:30:54AM +0200, Igor Mammedov wrote:
> > > On Fri, 6 Oct 2017 19:34:19 +1100
> > > David Gibson <david@gibson.dropbear.id.au> wrote:
> > >
> > > > On Thu, Oct 05, 2017 at 06:24:45PM +0200, Igor Mammedov wrote:
> > > > > use common cpu_model prasing in vl.c and set default cpu_model
> > > > > using generic MachineClass::default_cpu_type.
> > > > >
> > > > > Beside of switching to generic infrastructure it solves several
> > > > > issues.
> > > > >
> > > > > * ppc_cpu_class_by_name() is used to deal with lower/upper case
> > > > > and alias translations into actual cpu type, which fixes
> > > > > '-M powernv -cpu power8' and '-M powernv -cpu power9_v1.0'
> > > > > usecases which error out with:
> > > > > 'invalid CPU model 'FOO' for powernv machine'
> > > > > * allows to switch to lower-case typenames in pnv chip/core name
> > > > > (by convention typnames should be lower-case)
> > > > > * replace aliased names /power8, power9, .../ with exact cpu model
> > > > > names (i.e. typenames should be stable but aliases might decide to
> > > > > point to other cpu model withi family or changed by kvm). It will
> > > > > also help to simplify pnv_chip/core code and get rid of dependency
> > > > > on cpu_model parsing.
> > > > >
> > > > > Signed-off-by: Igor Mammedov <imammedo@redhat.com>
> > > > > ---
> > > > > include/hw/ppc/pnv.h | 8 ++++----
> > > > > hw/ppc/pnv.c | 22 ++++++++++------------
> > > > > hw/ppc/pnv_core.c | 2 +-
> > > > > 3 files changed, 15 insertions(+), 17 deletions(-)
> > > > >
> > > > > diff --git a/include/hw/ppc/pnv.h b/include/hw/ppc/pnv.h
> > > > > index 9c5437d..2525f7f 100644
> > > > > --- a/include/hw/ppc/pnv.h
> > > > > +++ b/include/hw/ppc/pnv.h
> > > > > @@ -80,19 +80,19 @@ typedef struct PnvChipClass {
> > > > > uint32_t (*core_pir)(PnvChip *chip, uint32_t core_id);
> > > > > } PnvChipClass;
> > > > >
> > > > > -#define TYPE_PNV_CHIP_POWER8E TYPE_PNV_CHIP "-POWER8E"
> > > > > +#define TYPE_PNV_CHIP_POWER8E TYPE_PNV_CHIP "-power8e_v2.1"
> > > > > #define PNV_CHIP_POWER8E(obj) \
> > > > > OBJECT_CHECK(PnvChip, (obj), TYPE_PNV_CHIP_POWER8E)
> > > > >
> > > > > -#define TYPE_PNV_CHIP_POWER8 TYPE_PNV_CHIP "-POWER8"
> > > > > +#define TYPE_PNV_CHIP_POWER8 TYPE_PNV_CHIP "-power8_v2.0"
> > > > > #define PNV_CHIP_POWER8(obj) \
> > > > > OBJECT_CHECK(PnvChip, (obj), TYPE_PNV_CHIP_POWER8)
> > > > >
> > > > > -#define TYPE_PNV_CHIP_POWER8NVL TYPE_PNV_CHIP "-POWER8NVL"
> > > > > +#define TYPE_PNV_CHIP_POWER8NVL TYPE_PNV_CHIP "-power8nvl_v1.0"
> > > > > #define PNV_CHIP_POWER8NVL(obj) \
> > > > > OBJECT_CHECK(PnvChip, (obj), TYPE_PNV_CHIP_POWER8NVL)
> > > > >
> > > > > -#define TYPE_PNV_CHIP_POWER9 TYPE_PNV_CHIP "-POWER9"
> > > > > +#define TYPE_PNV_CHIP_POWER9 TYPE_PNV_CHIP "-power9_v1.0"
> > > >
> > > > Uh.. we really should add a DD2 power9 before we make this change.
> > > > Making a DD1.0 (read, buggy as hell) chip the default is not
> > > > sensible. Especially since we don't implement the various DD1 bugs
> > > > and differences in qemu.
> > > I guess pnv owner will have to it,
> > > I can't help here /me uses whatever is in code right now/
> >
> > I just committed a patch to ppc-for-2.11 that adds POWER9 v2.0 to the
> > code (and makes it the default). Sorry, this will probably require a
> > rebase of your stuff.
> Do you have a pointer to the patch or even better ppc staging tree to rebase on?
Oh, sorry, when I say 'ppc-for-2.11' I'm referring to that staging
tree. You can find it at:
git://github.com/dgibson/qemu.git branch 'ppc-for-2.11'.
--
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
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2017-10-09 7:53 UTC|newest]
Thread overview: 81+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-05 16:24 [Qemu-devel] [PATCH 00/23] generalize parsing of cpu_model (part 3/PPC) Igor Mammedov
2017-10-05 16:24 ` [Qemu-devel] [PATCH 01/23] qom: update doc comment for type_register[_static]() Igor Mammedov
2017-10-06 2:57 ` David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 02/23] qom: introduce type_register_static_array() Igor Mammedov
2017-10-06 2:58 ` David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 03/23] qom: add helper macro DEFINE_TYPES() Igor Mammedov
2017-10-06 3:06 ` David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 04/23] ppc: mpc8544ds/e500plat: use generic cpu_model parsing Igor Mammedov
2017-10-06 3:02 ` David Gibson
2017-10-06 8:27 ` Igor Mammedov
2017-10-06 9:12 ` David Gibson
2017-10-06 9:37 ` Igor Mammedov
2017-10-05 16:24 ` [Qemu-devel] [PATCH 05/23] ppc: mac_newworld: " Igor Mammedov
2017-10-06 3:08 ` David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 06/23] ppc: mac_oldworld: " Igor Mammedov
2017-10-06 3:09 ` David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 07/23] ppc: bamboo: " Igor Mammedov
2017-10-06 3:11 ` David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 08/23] ppc: replace cpu_model with cpu_type on ref405ep, taihu boards Igor Mammedov
2017-10-06 3:12 ` David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 09/23] ppc: virtex-ml507: replace cpu_model with cpu_type Igor Mammedov
2017-10-06 3:13 ` David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 10/23] ppc: 40p/prep: " Igor Mammedov
2017-10-06 3:14 ` David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 11/23] ppc: spapr: replace ppc_cpu_parse_features() with cpu_parse_cpu_model() Igor Mammedov
2017-10-05 18:35 ` Greg Kurz
2017-10-06 3:16 ` David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 12/23] ppc: move '-cpu foo, compat=xxx' parsing into ppc_cpu_parse_featurestr() Igor Mammedov
2017-10-05 19:05 ` [Qemu-devel] [Qemu-ppc] " Greg Kurz
2017-10-06 8:40 ` Igor Mammedov
2017-10-06 3:54 ` [Qemu-devel] " David Gibson
2017-10-06 9:03 ` Igor Mammedov
2017-10-06 9:17 ` David Gibson
2017-10-06 9:52 ` Igor Mammedov
2017-10-06 10:14 ` David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 13/23] ppc: spapr: define core types statically Igor Mammedov
2017-10-05 20:31 ` Greg Kurz
2017-10-06 3:58 ` David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 14/23] ppc: spapr: use cpu type name directly Igor Mammedov
2017-10-05 20:47 ` Greg Kurz
2017-10-06 4:01 ` David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 15/23] ppc: spapr: register 'host' core type along with the rest of core types Igor Mammedov
2017-10-05 21:55 ` Greg Kurz
2017-10-06 4:41 ` David Gibson
2017-10-06 9:07 ` Igor Mammedov
2017-10-06 9:13 ` David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 16/23] ppc: spapr: use cpu model names as tcg defaults instead of aliases Igor Mammedov
2017-10-06 4:43 ` David Gibson
2017-10-06 7:39 ` Greg Kurz
2017-10-06 9:27 ` Igor Mammedov
2017-10-06 10:12 ` Greg Kurz
2017-10-05 16:24 ` [Qemu-devel] [PATCH 17/23] ppc: spapr: use generic cpu_model parsing Igor Mammedov
2017-10-06 5:04 ` David Gibson
2017-10-06 9:20 ` Igor Mammedov
2017-10-06 9:35 ` David Gibson
2017-10-06 9:56 ` Igor Mammedov
2017-10-05 16:24 ` [Qemu-devel] [PATCH 18/23] ppc: pnv: " Igor Mammedov
2017-10-06 6:21 ` [Qemu-devel] [Qemu-ppc] " Cédric Le Goater
2017-10-06 8:34 ` [Qemu-devel] " David Gibson
2017-10-06 9:30 ` Igor Mammedov
2017-10-06 11:25 ` David Gibson
2017-10-09 5:44 ` Igor Mammedov
2017-10-09 6:59 ` David Gibson [this message]
2017-10-05 16:24 ` [Qemu-devel] [PATCH 19/23] ppc: pnv: normalize core/chip type names Igor Mammedov
2017-10-06 6:22 ` [Qemu-devel] [Qemu-ppc] " Cédric Le Goater
2017-10-06 8:37 ` [Qemu-devel] " David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 20/23] ppc: pnv: drop PnvCoreClass::cpu_oc field Igor Mammedov
2017-10-06 6:27 ` [Qemu-devel] [Qemu-ppc] " Cédric Le Goater
2017-10-06 8:41 ` [Qemu-devel] " David Gibson
2017-10-06 9:31 ` Igor Mammedov
2017-10-05 16:24 ` [Qemu-devel] [PATCH 21/23] ppc: pnv: define core types statically Igor Mammedov
2017-10-06 6:24 ` [Qemu-devel] [Qemu-ppc] " Cédric Le Goater
2017-10-06 8:42 ` [Qemu-devel] " David Gibson
2017-10-05 16:24 ` [Qemu-devel] [PATCH 22/23] ppc: pnv: drop PnvChipClass::cpu_model field Igor Mammedov
2017-10-06 6:27 ` [Qemu-devel] [Qemu-ppc] " Cédric Le Goater
2017-10-06 8:46 ` [Qemu-devel] " David Gibson
2017-10-06 9:32 ` Igor Mammedov
2017-10-05 16:24 ` [Qemu-devel] [PATCH 23/23] ppc: pnv: consolidate type definitions and batch register them Igor Mammedov
2017-10-06 6:27 ` [Qemu-devel] [Qemu-ppc] " Cédric Le Goater
2017-10-06 8:47 ` [Qemu-devel] " David Gibson
2017-10-05 17:31 ` [Qemu-devel] [PATCH 00/23] generalize parsing of cpu_model (part 3/PPC) no-reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20171009065932.GR10050@umbus.fritz.box \
--to=david@gibson.dropbear.id.au \
--cc=agraf@suse.de \
--cc=edgar.iglesias@gmail.com \
--cc=hpoussin@reactos.org \
--cc=imammedo@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.