From: David Gibson <david@gibson.dropbear.id.au>
To: peter.maydell@linaro.org
Cc: qemu-devel@nongnu.org, qemu-ppc@nongnu.org, lvivier@redhat.com,
groug@kaod.org, clg@kaod.org,
David Gibson <david@gibson.dropbear.id.au>
Subject: [Qemu-devel] [PULL 10/33] spapr/vio: deprecate the "irq" property
Date: Tue, 12 Jun 2018 16:44:40 +1000 [thread overview]
Message-ID: <20180612064503.14282-11-david@gibson.dropbear.id.au> (raw)
In-Reply-To: <20180612064503.14282-1-david@gibson.dropbear.id.au>
From: Cédric Le Goater <clg@kaod.org>
VIO devices have an "irq" property that can be used by the sPAPR IRQ
allocator as an IRQ number hint. But it is not set in QEMU nor in
libvirt. It brings unnecessary complexity to the underlying layers
managing the IRQ number space and it is in full opposition with the
new static IRQ allocator we want to introduce in sPAPR.
Let's deprecate it to simplify the spapr_irq_alloc routine in the
future.
Signed-off-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Greg Kurz <groug@kaod.org>
[dwg: Check qtest_enabled() to suppress bogus warnings from make check]
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
---
hw/ppc/spapr_vio.c | 22 +++++++++++++++++++++-
qemu-doc.texi | 12 ++++++++++--
2 files changed, 31 insertions(+), 3 deletions(-)
diff --git a/hw/ppc/spapr_vio.c b/hw/ppc/spapr_vio.c
index 472dd6f33a..4555c648a8 100644
--- a/hw/ppc/spapr_vio.c
+++ b/hw/ppc/spapr_vio.c
@@ -22,6 +22,7 @@
#include "qemu/osdep.h"
#include "qemu/error-report.h"
#include "qapi/error.h"
+#include "qapi/visitor.h"
#include "hw/hw.h"
#include "qemu/log.h"
#include "sysemu/sysemu.h"
@@ -32,6 +33,7 @@
#include "sysemu/kvm.h"
#include "sysemu/device_tree.h"
#include "kvm_ppc.h"
+#include "sysemu/qtest.h"
#include "hw/ppc/spapr.h"
#include "hw/ppc/spapr_vio.h"
@@ -41,8 +43,26 @@
#include <libfdt.h>
+static void spapr_vio_getset_irq(Object *obj, Visitor *v, const char *name,
+ void *opaque, Error **errp)
+{
+ Property *prop = opaque;
+ uint32_t *ptr = qdev_get_prop_ptr(DEVICE(obj), prop);
+
+ if (!qtest_enabled()) {
+ warn_report(TYPE_VIO_SPAPR_DEVICE " '%s' property is deprecated", name);
+ }
+ visit_type_uint32(v, name, ptr, errp);
+}
+
+static const PropertyInfo spapr_vio_irq_propinfo = {
+ .name = "irq",
+ .get = spapr_vio_getset_irq,
+ .set = spapr_vio_getset_irq,
+};
+
static Property spapr_vio_props[] = {
- DEFINE_PROP_UINT32("irq", VIOsPAPRDevice, irq, 0), \
+ DEFINE_PROP("irq", VIOsPAPRDevice, irq, spapr_vio_irq_propinfo, uint32_t),
DEFINE_PROP_END_OF_LIST(),
};
diff --git a/qemu-doc.texi b/qemu-doc.texi
index 9aff6b4ea9..cd05760cac 100644
--- a/qemu-doc.texi
+++ b/qemu-doc.texi
@@ -2958,13 +2958,21 @@ support page sizes < 4096 any longer.
@section System emulator machines
-@section Block device options
+@section Device options
-@subsection "backing": "" (since 2.12.0)
+@subsection Block device options
+
+@subsubsection "backing": "" (since 2.12.0)
In order to prevent QEMU from automatically opening an image's backing
chain, use ``"backing": null'' instead.
+@subsection vio-spapr-device device options
+
+@subsubsection "irq": "" (since 3.0.0)
+
+The ``irq'' property is obsoleted.
+
@node Supported build platforms
@appendix Supported build platforms
--
2.17.1
next prev parent reply other threads:[~2018-06-12 6:45 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-12 6:44 [Qemu-devel] [PULL 00/33] ppc-for-3.0 queue 20180612 David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 01/33] ppc440_pcix: Fix a typo in setting a register (Coverity CID1390577) David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 02/33] macio: add trace-events to timer device David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 03/33] uninorth: remove token register from uninorth device David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 04/33] hw/ppc/spapr_drc: Replace error_setg(&error_abort) by error_report() + abort() David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 05/33] target/ppc: Use proper logging function for possible guest errors David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 06/33] 40p: remove pci_allow_0_address = true from 40p machine class David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 07/33] prep: fix keyboard for the 40p machine David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 08/33] target/ppc: Factor out the parsing in kvmppc_get_cpu_characteristics() David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 09/33] target/ppc: Allow privileged access to SPR_PCR David Gibson
2018-06-12 6:44 ` David Gibson [this message]
2018-06-12 6:44 ` [Qemu-devel] [PULL 11/33] osdep: powerpc64 align memory to allow 2MB radix THP page tables David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 12/33] MAINTAINERS: Add an entry for the MacIO device headers David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 13/33] MAINTAINERS: Add entries for the MOS6522 VIA device David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 14/33] hw/misc/mos6522: Add trailing '\n' to qemu_log() calls David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 15/33] ppc: remove obsolete pci_pmac_init() definitions from mac.h David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 16/33] ppc: remove obsolete macio_init() definition " David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 17/33] ppc: add missing FW_CFG_PPC_NVRAM_FLAT definition David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 18/33] mos6522: fix vmstate_mos6522_timer version in vmstate_mos6522 David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 19/33] cuda: embed mos6522_cuda device directly rather than using QOM object link David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 20/33] mos6522: move timer frequency initialisation to mos6522_reset David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 21/33] mos6522: convert VMSTATE_TIMER_PTR_TEST to VMSTATE_TIMER_PTR David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 22/33] target/ppc: extend eieio for POWER9 David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 23/33] ppc4xx_i2c: Clean up and improve error logging David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 24/33] target/ppc: Allow PIR read in privileged mode David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 25/33] spapr: no need to verify the node David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 26/33] spapr: move lookup of the node into spapr_memory_plug() David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 27/33] spapr: move memory hotplug support check into spapr_memory_pre_plug() David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 28/33] spapr: introduce machine unplug handler David Gibson
2018-06-12 6:44 ` [Qemu-devel] [PULL 29/33] spapr: handle pc-dimm unplug via hotplug handler chain David Gibson
2018-06-12 6:45 ` [Qemu-devel] [PULL 30/33] spapr: handle cpu core " David Gibson
2018-06-12 6:45 ` [Qemu-devel] [PULL 31/33] ppc/pnv: fix LPC HC firmware address space David Gibson
2018-06-12 6:45 ` [Qemu-devel] [PULL 32/33] xics_kvm: use KVM helpers David Gibson
2018-06-12 9:16 ` Greg Kurz
2018-06-12 9:27 ` Cédric Le Goater
2018-06-12 6:45 ` [Qemu-devel] [PULL 33/33] spapr_pci: Remove unhelpful pagesize warning David Gibson
2018-06-12 14:34 ` [Qemu-devel] [PULL 00/33] ppc-for-3.0 queue 20180612 Peter Maydell
2018-06-12 15:52 ` Greg Kurz
2018-06-12 15:55 ` Peter Maydell
2018-06-12 18:46 ` Greg Kurz
2018-06-12 23:31 ` David Gibson
2018-06-13 7:25 ` Greg Kurz
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=20180612064503.14282-11-david@gibson.dropbear.id.au \
--to=david@gibson.dropbear.id.au \
--cc=clg@kaod.org \
--cc=groug@kaod.org \
--cc=lvivier@redhat.com \
--cc=peter.maydell@linaro.org \
--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 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).