qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Eduardo Habkost <ehabkost@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: qemu-arm <qemu-arm@nongnu.org>,
	QEMU Developers <qemu-devel@nongnu.org>,
	"Richard W . M . Jones" <rjones@redhat.com>,
	"patches@linaro.org" <patches@linaro.org>
Subject: Re: [Qemu-devel] [Qemu-arm] [PATCH 0/6] arm: support -cpu max (and gic-version=max)
Date: Fri, 26 Jan 2018 15:54:18 -0200	[thread overview]
Message-ID: <20180126175418.GH25150@localhost.localdomain> (raw)
In-Reply-To: <CAFEAcA_zU+tAMvcqNHQAaVOEaJrrGOEWPS8RpUi+eZQ3tf1yiQ@mail.gmail.com>

On Fri, Jan 26, 2018 at 11:02:24AM +0000, Peter Maydell wrote:
> On 26 January 2018 at 10:42, Eduardo Habkost <ehabkost@redhat.com> wrote:
> > On Thu, Jan 25, 2018 at 02:41:50PM +0000, Peter Maydell wrote:
> >> I'm not sure if we actually support command line setting/unsetting
> >> of features for Arm CPUs -- is there a command line option to
> >> get QEMU to print the features it thinks can be set this way?
> >
> > Unfortunately -cpu command-line parsing is still a mess (we
> > currently have lots of arch-specific parsing hooks).  Once we
> > make this uniform across targets, we could make "-cpu ?" print
> > all known properties.
> >
> > But you can look at the list of QOM properties for your CPU
> > classes (-cpu options are simply translated to QOM properties).
> > e.g.:
> >
> >   (QEMU) device-list-properties typename=pxa270-a0-arm-cpu
> >   {"return": [{"type": "uint32", "name": "midr"}, {"type": "uint64", "name": "mp-affinity"}, {"type": "child<irq>", "name": "unnamed-gpio-in[0]"}, {"type": "uint32", "name": "psci-conduit"}, {"type": "bool", "name": "reset-hivecs"}, {"type": "link<qemu:memory-region>", "name": "memory"}, {"type": "link<irq>", "name": "unnamed-gpio-out[2]"}, {"type": "link<irq>", "name": "unnamed-gpio-out[3]"}, {"type": "int32", "name": "node-id"}, {"type": "bool", "name": "start-powered-off"}, {"type": "link<irq>", "name": "unnamed-gpio-out[1]"}, {"type": "link<irq>", "name": "unnamed-gpio-out[0]"}, {"type": "link<irq>", "name": "gicv3-maintenance-interrupt[0]"}, {"type": "bool", "name": "cfgend"}, {"type": "child<irq>", "name": "unnamed-gpio-in[2]"}, {"type": "child<irq>", "name": "unnamed-gpio-in[3]"}, {"type": "child<irq>", "name": "unnamed-gpio-in[1]"}]}
> 
> None of those are things we'd want to expose to the user, really
> (except maybe 'cfgend'): they're all intended for the QEMU board
> or SoC code that needs to configure and wire the CPU up. Ideally
> there'd be a mechanism for screening them out of the -cpu option
> list.
> 

Yeah, it's becoming clearer to me that we need to address this
better than with a simple "x-" prefix convention.

If we remove the link and child properties, we have:

midr (uint32)
mp-affinity (uint64)
psci-conduit (uint32)
reset-hivecs (bool)
node-id (int32)
start-powered-off (bool)
cfgend (bool)

I wonder how many of them aren't useful with -cpu but might be
useful with -device in the future.


> There are some things that we could in theory have as user
> settable properties (like "does this CPU have an FPU"), but
> we don't currently have QOM properties for them (each CPU
> just hardcodes which ARM_FEATURE_* flags it has).
> 
> In your other email you write:
> > I wrote:
> >> Given that the type names don't appear to the user, I think
> >> we can go ahead with implementing "-cpu max" for Arm without
> >> having to first disentangle this? "max" isn't in any worse
> >> a position than the existing "host" and "any" types.
> >
> >Sounds reasonable to me.
> 
> Cool. I think that means that patches 2-6 here don't need
> any changes, but I'll rebase, retest and resend just to
> avoid confusion.
> 
> thanks
> -- PMM

-- 
Eduardo

  reply	other threads:[~2018-01-26 17:54 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-07 18:14 [Qemu-devel] [PATCH 0/6] arm: support -cpu max (and gic-version=max) Peter Maydell
2017-12-07 18:14 ` [Qemu-devel] [PATCH 1/6] hw/arm/virt: Check that the CPU realize method succeeded Peter Maydell
2017-12-09  1:08   ` Eduardo Habkost
2018-01-26 14:32   ` [Qemu-devel] [Qemu-arm] " Philippe Mathieu-Daudé
2018-01-26 14:34     ` Peter Maydell
2017-12-07 18:14 ` [Qemu-devel] [PATCH 2/6] target/arm: Query host CPU features on-demand at instance init Peter Maydell
2018-01-26 13:53   ` [Qemu-devel] [Qemu-arm] " Philippe Mathieu-Daudé
2017-12-07 18:14 ` [Qemu-devel] [PATCH 3/6] target/arm: Move definition of 'host' cpu type into cpu.c Peter Maydell
2018-01-26 13:47   ` Philippe Mathieu-Daudé
2017-12-07 18:14 ` [Qemu-devel] [PATCH 4/6] target/arm: Add "-cpu max" support Peter Maydell
2018-01-26 14:29   ` Philippe Mathieu-Daudé
2018-01-26 14:33     ` Peter Maydell
2018-01-26 15:44       ` Philippe Mathieu-Daudé
2018-02-02 17:54         ` Peter Maydell
2018-02-05 10:39           ` Igor Mammedov
2017-12-07 18:14 ` [Qemu-devel] [PATCH 5/6] hw/arm/virt: Add "max" to the list of CPU types "virt" supports Peter Maydell
2017-12-07 18:14 ` [Qemu-devel] [PATCH 6/6] hw/arm/virt: Support -machine gic-version=max Peter Maydell
2017-12-07 19:37 ` [Qemu-devel] [Qemu-arm] [PATCH 0/6] arm: support -cpu max (and gic-version=max) Peter Maydell
2017-12-09  1:08   ` Eduardo Habkost
2018-01-22 18:06     ` Peter Maydell
2018-01-22 18:33       ` Eduardo Habkost
2018-01-25 14:41         ` Peter Maydell
2018-01-25 15:10           ` Peter Maydell
2018-01-26 10:45             ` Eduardo Habkost
2018-01-26 10:42           ` Eduardo Habkost
2018-01-26 11:02             ` Peter Maydell
2018-01-26 17:54               ` Eduardo Habkost [this message]
2018-01-26 18:04                 ` Peter Maydell

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=20180126175418.GH25150@localhost.localdomain \
    --to=ehabkost@redhat.com \
    --cc=patches@linaro.org \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=rjones@redhat.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).