All of lore.kernel.org
 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 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.