
On Mon, Feb 15, 2016 at 08:40:54PM +0100, Markus Armbruster wrote:
Peter Maydell <peter.maydell@linaro.org> writes:
On 15 February 2016 at 15:08, Markus Armbruster <armbru@redhat.com> wrote:
Peter Xu <peterx@redhat.com> writes:
On Mon, Feb 15, 2016 at 10:52:01AM +0100, Markus Armbruster wrote:
Peter Xu <peterx@redhat.com> writes: Adding ad hoc queries as we go won't scale. Is there really no generic way to get this information, e.g. with qom-get?
Haven't used "qom-get" before, but it seems to fetch one property for a specific object. If so, will it be strange to hide some capability bits into every GIC objects (though there is possibly one object)?
Pardon my ignorance... what are these "GIC objects"?
What exactly is the "GIC type", and how would the result of query-gic-capability be used?
The GIC type (for our purposes) is the revision of the interrupt controller supported by the host, which comes in two versions (v2 and v3). These are not compatible, unless your host has the v3-with-v2-compat flavour. If a host is v3-only, it is not possible for it to give the guest a v2 virtual interrupt controller; if v2, it can't give the guest a v3 virtual interrupt controller. (If you ask QEMU to do this via command line options we will report an error at startup.)
How would the command line look like?
Here is what is available today # select gicv2 (this work with and without KVM) qemu-system-aarch64 -M virt # v2 is the default qemu-system-aarch64 -M virt,gic-version=2 ... # select gicv3 (only works with KVM) qemu-system-aarch64 -M virt,gic-version=3 ... # select whatever the host has qemu-system-aarch64 -M virt,gic-version=host ... Thanks, drew