[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC v7 16/16] hw/arm/virt: Allow virtio-iommu instantiatio
From: |
Eric Auger |
Subject: |
[Qemu-devel] [RFC v7 16/16] hw/arm/virt: Allow virtio-iommu instantiation |
Date: |
Mon, 6 Aug 2018 22:14:44 +0200 |
The virtio-iommu now can be instantiated by adding the virt
machine option "-M virt,iommu=virtio"
Signed-off-by: Eric Auger <address@hidden>
---
hw/arm/virt.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index dd3cc71..25f7c21 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -1679,6 +1679,8 @@ static char *virt_get_iommu(Object *obj, Error **errp)
return g_strdup("none");
case VIRT_IOMMU_SMMUV3:
return g_strdup("smmuv3");
+ case VIRT_IOMMU_VIRTIO:
+ return g_strdup("virtio");
default:
g_assert_not_reached();
}
@@ -1690,11 +1692,13 @@ static void virt_set_iommu(Object *obj, const char
*value, Error **errp)
if (!strcmp(value, "smmuv3")) {
vms->iommu = VIRT_IOMMU_SMMUV3;
+ } else if (!strcmp(value, "virtio")) {
+ vms->iommu = VIRT_IOMMU_VIRTIO;
} else if (!strcmp(value, "none")) {
vms->iommu = VIRT_IOMMU_NONE;
} else {
error_setg(errp, "Invalid iommu value");
- error_append_hint(errp, "Valid values are none, smmuv3.\n");
+ error_append_hint(errp, "Valid values are none, smmuv3, virtio.\n");
}
}
@@ -1872,7 +1876,7 @@ static void virt_3_0_instance_init(Object *obj)
object_property_add_str(obj, "iommu", virt_get_iommu, virt_set_iommu,
NULL);
object_property_set_description(obj, "iommu",
"Set the IOMMU type. "
- "Valid values are none and smmuv3",
+ "Valid values are none, smmuv3, virtio",
NULL);
vms->memmap = a15memmap;
--
2.5.5
- [Qemu-devel] [RFC v7 05/16] virtio-iommu: Endpoint and domains structs and helpers, (continued)
- [Qemu-devel] [RFC v7 05/16] virtio-iommu: Endpoint and domains structs and helpers, Eric Auger, 2018/08/06
- [Qemu-devel] [RFC v7 07/16] virtio-iommu: Implement map/unmap, Eric Auger, 2018/08/06
- [Qemu-devel] [RFC v7 08/16] virtio-iommu: Implement translate, Eric Auger, 2018/08/06
- [Qemu-devel] [RFC v7 10/16] virtio-iommu: Add an msi_bypass property, Eric Auger, 2018/08/06
- [Qemu-devel] [RFC v7 09/16] virtio-iommu: Implement probe request, Eric Auger, 2018/08/06
- [Qemu-devel] [RFC v7 11/16] virtio-iommu: Implement fault reporting, Eric Auger, 2018/08/06
- [Qemu-devel] [RFC v7 12/16] virtio_iommu: Handle reserved regions in translation process, Eric Auger, 2018/08/06
- [Qemu-devel] [RFC v7 14/16] hw/arm/virt: Add virtio-iommu to the virt board, Eric Auger, 2018/08/06
- [Qemu-devel] [RFC v7 13/16] qdev: export qbus_find_recursive, Eric Auger, 2018/08/06
- [Qemu-devel] [RFC v7 15/16] hw/arm/virt-acpi-build: Add virtio-iommu node in IORT table, Eric Auger, 2018/08/06
- [Qemu-devel] [RFC v7 16/16] hw/arm/virt: Allow virtio-iommu instantiation,
Eric Auger <=