[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC v4 11/16] hw/arm/virt: Add 2.11 machine type
From: |
Eric Auger |
Subject: |
[Qemu-devel] [RFC v4 11/16] hw/arm/virt: Add 2.11 machine type |
Date: |
Tue, 19 Sep 2017 09:46:43 +0200 |
The new machine type allows virtio-iommu instantiation.
Signed-off-by: Eric Auger <address@hidden>
---
---
hw/arm/virt.c | 23 +++++++++++++++++++++--
include/hw/arm/virt.h | 1 +
2 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index cfd834d..9737a5f 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -1648,7 +1648,7 @@ static void machvirt_machine_init(void)
}
type_init(machvirt_machine_init);
-static void virt_2_10_instance_init(Object *obj)
+static void virt_2_11_instance_init(Object *obj)
{
VirtMachineState *vms = VIRT_MACHINE(obj);
VirtMachineClass *vmc = VIRT_MACHINE_GET_CLASS(vms);
@@ -1708,10 +1708,29 @@ static void virt_2_10_instance_init(Object *obj)
vms->irqmap = a15irqmap;
}
+static void virt_machine_2_11_options(MachineClass *mc)
+{
+}
+DEFINE_VIRT_MACHINE_AS_LATEST(2, 11)
+
+#define VIRT_COMPAT_2_10 \
+ HW_COMPAT_2_10
+
+static void virt_2_10_instance_init(Object *obj)
+{
+ virt_2_11_instance_init(obj);
+}
+
static void virt_machine_2_10_options(MachineClass *mc)
{
+ VirtMachineClass *vmc = VIRT_MACHINE_CLASS(OBJECT_CLASS(mc));
+
+ virt_machine_2_11_options(mc);
+ SET_MACHINE_COMPAT(mc, VIRT_COMPAT_2_10);
+
+ vmc->no_iommu = true;
}
-DEFINE_VIRT_MACHINE_AS_LATEST(2, 10)
+DEFINE_VIRT_MACHINE(2, 10)
#define VIRT_COMPAT_2_9 \
HW_COMPAT_2_9
diff --git a/include/hw/arm/virt.h b/include/hw/arm/virt.h
index 33b0ff3..ff27551 100644
--- a/include/hw/arm/virt.h
+++ b/include/hw/arm/virt.h
@@ -84,6 +84,7 @@ typedef struct {
bool disallow_affinity_adjustment;
bool no_its;
bool no_pmu;
+ bool no_iommu;
bool claim_edge_triggered_timers;
} VirtMachineClass;
--
2.5.5
- Re: [Qemu-devel] [RFC v4 06/16] virtio-iommu: Register attached devices, (continued)
- [Qemu-devel] [RFC v4 11/16] hw/arm/virt: Add 2.11 machine type,
Eric Auger <=
- [Qemu-devel] [RFC v4 12/16] hw/arm/virt: Add virtio-iommu to the virt board, Eric Auger, 2017/09/19
- [Qemu-devel] [RFC v4 13/16] memory.h: Add set_page_size_mask IOMMUMemoryRegion callback, Eric Auger, 2017/09/19
- [Qemu-devel] [RFC v4 14/16] hw/vfio/common: Set the IOMMUMemoryRegion supported page sizes, Eric Auger, 2017/09/19
- [Qemu-devel] [RFC v4 15/16] virtio-iommu: Implement set_page_size_mask, Eric Auger, 2017/09/19
- [Qemu-devel] [RFC v4 16/16] hw/vfio/common: Do not print error when viommu translates into an mmio region, Eric Auger, 2017/09/19
- Re: [Qemu-devel] [RFC v4 00/16] VIRTIO-IOMMU device, Tomasz Nowicki, 2017/09/27