From: Gerd Hoffmann <kraxel@redhat.com>
To: qemu-devel@nongnu.org
Cc: Gerd Hoffmann <kraxel@redhat.com>, mst@redhat.com
Subject: [Qemu-devel] [PATCH 1/9] virtio: add struct VirtIOPCIRegion for virtio-1 regions
Date: Fri, 10 Apr 2015 14:31:43 +0200 [thread overview]
Message-ID: <1428669111-24225-2-git-send-email-kraxel@redhat.com> (raw)
In-Reply-To: <1428669111-24225-1-git-send-email-kraxel@redhat.com>
For now just place the MemoryRegion there,
following patches will add more.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
hw/virtio/virtio-pci.c | 18 ++++++++++--------
hw/virtio/virtio-pci.h | 12 ++++++++----
2 files changed, 18 insertions(+), 12 deletions(-)
diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
index 4c653fe..9c84f5a 100644
--- a/hw/virtio/virtio-pci.c
+++ b/hw/virtio/virtio-pci.c
@@ -1307,28 +1307,30 @@ static void virtio_pci_device_plugged(DeviceState *d)
memory_region_init(&proxy->modern_bar, OBJECT(proxy), "virtio-pci",
2 * QEMU_VIRTIO_PCI_QUEUE_MEM_MULT *
VIRTIO_PCI_QUEUE_MAX);
- memory_region_init_io(&proxy->common, OBJECT(proxy),
+ memory_region_init_io(&proxy->common.mr, OBJECT(proxy),
&common_ops,
proxy,
"virtio-pci-common", 0x1000);
- memory_region_add_subregion(&proxy->modern_bar, 0, &proxy->common);
- memory_region_init_io(&proxy->isr, OBJECT(proxy),
+ memory_region_add_subregion(&proxy->modern_bar, 0, &proxy->common.mr);
+ memory_region_init_io(&proxy->isr.mr, OBJECT(proxy),
&isr_ops,
proxy,
"virtio-pci-isr", 0x1000);
- memory_region_add_subregion(&proxy->modern_bar, 0x1000, &proxy->isr);
- memory_region_init_io(&proxy->device, OBJECT(proxy),
+ memory_region_add_subregion(&proxy->modern_bar, 0x1000, &proxy->isr.mr);
+ memory_region_init_io(&proxy->device.mr, OBJECT(proxy),
&device_ops,
virtio_bus_get_device(&proxy->bus),
"virtio-pci-device", 0x1000);
- memory_region_add_subregion(&proxy->modern_bar, 0x2000, &proxy->device);
- memory_region_init_io(&proxy->notify, OBJECT(proxy),
+ memory_region_add_subregion(&proxy->modern_bar, 0x2000,
+ &proxy->device.mr);
+ memory_region_init_io(&proxy->notify.mr, OBJECT(proxy),
¬ify_ops,
virtio_bus_get_device(&proxy->bus),
"virtio-pci-notify",
QEMU_VIRTIO_PCI_QUEUE_MEM_MULT *
VIRTIO_PCI_QUEUE_MAX);
- memory_region_add_subregion(&proxy->modern_bar, 0x3000, &proxy->notify);
+ memory_region_add_subregion(&proxy->modern_bar, 0x3000,
+ &proxy->notify.mr);
pci_register_bar(&proxy->pci_dev, modern_mem_bar,
PCI_BASE_ADDRESS_SPACE_MEMORY |
PCI_BASE_ADDRESS_MEM_PREFETCH |
diff --git a/hw/virtio/virtio-pci.h b/hw/virtio/virtio-pci.h
index efe8d31..6c717cf 100644
--- a/hw/virtio/virtio-pci.h
+++ b/hw/virtio/virtio-pci.h
@@ -93,13 +93,17 @@ typedef struct VirtioPCIClass {
void (*realize)(VirtIOPCIProxy *vpci_dev, Error **errp);
} VirtioPCIClass;
+typedef struct VirtIOPCIRegion {
+ MemoryRegion mr;
+} VirtIOPCIRegion;
+
struct VirtIOPCIProxy {
PCIDevice pci_dev;
MemoryRegion bar;
- MemoryRegion common;
- MemoryRegion isr;
- MemoryRegion device;
- MemoryRegion notify;
+ VirtIOPCIRegion common;
+ VirtIOPCIRegion isr;
+ VirtIOPCIRegion device;
+ VirtIOPCIRegion notify;
MemoryRegion modern_bar;
uint32_t flags;
uint32_t class_code;
--
1.8.3.1
next prev parent reply other threads:[~2015-04-10 12:32 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-10 12:31 [Qemu-devel] [PATCH 0/9] virtio-1.0: cleanups and preparations for virtio-vga Gerd Hoffmann
2015-04-10 12:31 ` Gerd Hoffmann [this message]
2015-04-10 12:31 ` [Qemu-devel] [PATCH 2/9] virtio: add virtio_pci_modern_regions_init() Gerd Hoffmann
2015-04-10 12:31 ` [Qemu-devel] [PATCH 3/9] virtio: add virtio_pci_modern_region_map() Gerd Hoffmann
2015-04-10 12:31 ` [Qemu-devel] [PATCH 4/9] virtio: move virtio_pci_add_mem_cap call to virtio_pci_modern_region_map Gerd Hoffmann
2015-04-10 12:31 ` [Qemu-devel] [PATCH 5/9] virtio: move cap type to VirtIOPCIRegion Gerd Hoffmann
2015-04-10 12:31 ` [Qemu-devel] [PATCH 6/9] virtio: drop identical virtio_pci_cap Gerd Hoffmann
2015-04-10 12:31 ` [Qemu-devel] [PATCH 7/9] virtio: move bar assignments to VirtIOPCIProxy Gerd Hoffmann
2015-04-10 12:31 ` [Qemu-devel] [PATCH 8/9] virtio: init from virtio_pci_device_plugged to virtio_pci_realize Gerd Hoffmann
2015-04-10 12:31 ` [Qemu-devel] [PATCH 9/9] virtio-vga: make compatible with stdvga Gerd Hoffmann
2015-04-27 9:45 ` [Qemu-devel] [PATCH 0/9] virtio-1.0: cleanups and preparations for virtio-vga Gerd Hoffmann
2015-04-27 10:15 ` Michael S. Tsirkin
2015-04-27 10:23 ` Cornelia Huck
2015-04-27 10:37 ` Michael S. Tsirkin
2015-04-27 10:44 ` Gerd Hoffmann
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=1428669111-24225-2-git-send-email-kraxel@redhat.com \
--to=kraxel@redhat.com \
--cc=mst@redhat.com \
--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.