All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eric Auger <eric.auger@redhat.com>
To: eric.auger.pro@gmail.com, eric.auger@redhat.com,
	qemu-devel@nongnu.org, qemu-arm@nongnu.org,
	peter.maydell@linaro.org, mst@redhat.com, armbru@redhat.com,
	pbonzini@redhat.com, jean-philippe@linaro.org,
	bbhushan2@marvell.com, peterx@redhat.com
Subject: [PATCH v4 4/5] virtio-iommu-pci: Add array of Interval properties
Date: Tue, 23 Jun 2020 11:32:43 +0200	[thread overview]
Message-ID: <20200623093244.24931-5-eric.auger@redhat.com> (raw)
In-Reply-To: <20200623093244.24931-1-eric.auger@redhat.com>

The machine may need to pass reserved regions to the
virtio-iommu-pci device (such as the MSI window on x86
or the MSI doorbells on ARM).

So let's add an array of Interval properties.

Note: if some reserved regions are already set by the
machine code - which should be the case in general -,
the length of the property array is already set and
prevents the end-user from modifying them. For example,
attempting to use:

-device virtio-iommu-pci,\
 len-reserved-regions=1,reserved-regions[0]=0xfee00000:0xfeefffff:1

would result in the following error message:

-device virtio-iommu-pci,len-reserved-regions=1,len-reserved-regions=1,
 reserved-regions[0]=0xfee00000:0xfeefffff:1: array size property
 len-reserved-regions may not be set more than once

Otherwise, for example, adding two reserved regions is achieved
using the following options:

-device virtio-iommu-pci,addr=0xa,len-reserved-regions=2,\
 reserved-regions[0]=0xfee00000:0xfeefffff:1,\
 reserved-regions[1]=0x1000000:100ffff:1

Signed-off-by: Eric Auger <eric.auger@redhat.com>
Reviewed-by: Jean-Philippe Brucker <jean-philippe@linaro.org>

---

v3 -> v4:
- added examples in the commit message as suggested by Markus
- added Jean's R-b
---
 hw/virtio/virtio-iommu-pci.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/hw/virtio/virtio-iommu-pci.c b/hw/virtio/virtio-iommu-pci.c
index 632533abaf..d0746fa93c 100644
--- a/hw/virtio/virtio-iommu-pci.c
+++ b/hw/virtio/virtio-iommu-pci.c
@@ -33,6 +33,9 @@ struct VirtIOIOMMUPCI {
 
 static Property virtio_iommu_pci_properties[] = {
     DEFINE_PROP_UINT32("class", VirtIOPCIProxy, class_code, 0),
+    DEFINE_PROP_ARRAY("reserved-regions", VirtIOIOMMUPCI,
+                      vdev.nb_reserved_regions, vdev.reserved_regions,
+                      qdev_prop_reserved_region, ReservedRegion),
     DEFINE_PROP_END_OF_LIST(),
 };
 
-- 
2.20.1



  parent reply	other threads:[~2020-06-23  9:34 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-23  9:32 [PATCH v4 0/5] VIRTIO-IOMMU probe request support and MSI bypass on ARM Eric Auger
2020-06-23  9:32 ` [PATCH v4 1/5] qdev: Introduce DEFINE_PROP_RESERVED_REGION Eric Auger
2020-06-23 15:13   ` Markus Armbruster
2020-06-23 16:12     ` Auger Eric
2020-06-24  8:10       ` Markus Armbruster
2020-06-24  8:38         ` Auger Eric
2020-06-23  9:32 ` [PATCH v4 2/5] virtio-iommu: Implement RESV_MEM probe request Eric Auger
2020-06-23  9:32 ` [PATCH v4 3/5] virtio-iommu: Handle reserved regions in the translation process Eric Auger
2020-06-23  9:32 ` Eric Auger [this message]
2020-06-23  9:32 ` [PATCH v4 5/5] hw/arm/virt: Let the virtio-iommu bypass MSIs Eric Auger

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=20200623093244.24931-5-eric.auger@redhat.com \
    --to=eric.auger@redhat.com \
    --cc=armbru@redhat.com \
    --cc=bbhushan2@marvell.com \
    --cc=eric.auger.pro@gmail.com \
    --cc=jean-philippe@linaro.org \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=peterx@redhat.com \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@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.