[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [PATCH v6 8/9] hw/arm/virt: Set virtio-iommu aw-bits default value t
From: |
Duan, Zhenzhong |
Subject: |
RE: [PATCH v6 8/9] hw/arm/virt: Set virtio-iommu aw-bits default value to 48 |
Date: |
Wed, 6 Mar 2024 03:25:05 +0000 |
>-----Original Message-----
>From: Eric Auger <eric.auger@redhat.com>
>Subject: [PATCH v6 8/9] hw/arm/virt: Set virtio-iommu aw-bits default value
>to 48
>
>On ARM we set 48b as a default (matching SMMUv3 SMMU_IDR5.VAX == 0).
>
>hw_compat_8_2 is used to handle the compatibility for machine types
>before 9.0 (default was 64 bits).
>
>Signed-off-by: Eric Auger <eric.auger@redhat.com>
>---
> hw/arm/virt.c | 17 +++++++++++++++++
> 1 file changed, 17 insertions(+)
>
>diff --git a/hw/arm/virt.c b/hw/arm/virt.c
>index 0af1943697..dcfb25369b 100644
>--- a/hw/arm/virt.c
>+++ b/hw/arm/virt.c
>@@ -85,11 +85,28 @@
> #include "hw/char/pl011.h"
> #include "qemu/guest-random.h"
>
>+GlobalProperty arm_virt_compat[] = {
>+ { TYPE_VIRTIO_IOMMU_PCI, "aw-bits", "48" },
>+};
>+const size_t arm_virt_compat_len = G_N_ELEMENTS(arm_virt_compat);
This can be static, otherwise,
Reviewed-by: Zhenzhong Duan <Zhenzhong.duan@intel.com>
Thanks
Zhenzhong
>+
>+/*
>+ * This cannot be called from the virt_machine_class_init() because
>+ * TYPE_VIRT_MACHINE is abstract and mc->compat_props
>g_ptr_array_new()
>+ * only is called on virt non abstract class init.
>+ */
>+static void arm_virt_compat_set(MachineClass *mc)
>+{
>+ compat_props_add(mc->compat_props, arm_virt_compat,
>+ arm_virt_compat_len);
>+}
>+
> #define DEFINE_VIRT_MACHINE_LATEST(major, minor, latest) \
> static void virt_##major##_##minor##_class_init(ObjectClass *oc, \
> void *data) \
> { \
> MachineClass *mc = MACHINE_CLASS(oc); \
>+ arm_virt_compat_set(mc); \
> virt_machine_##major##_##minor##_options(mc); \
> mc->desc = "QEMU " # major "." # minor " ARM Virtual Machine"; \
> if (latest) { \
>--
>2.41.0
- [PATCH v6 1/9] qdev: Add a granule_mode property, (continued)
- [PATCH v6 1/9] qdev: Add a granule_mode property, Eric Auger, 2024/03/05
- [PATCH v6 3/9] virtio-iommu: Change the default granule to the host page size, Eric Auger, 2024/03/05
- [PATCH v6 2/9] virtio-iommu: Add a granule property, Eric Auger, 2024/03/05
- [PATCH v6 4/9] qemu-options.hx: Document the virtio-iommu-pci granule option, Eric Auger, 2024/03/05
- [PATCH v6 5/9] virtio-iommu: Trace domain range limits as unsigned int, Eric Auger, 2024/03/05
- [PATCH v6 6/9] virtio-iommu: Add an option to define the input range width, Eric Auger, 2024/03/05
- [PATCH v6 7/9] hw/i386/q35: Set virtio-iommu aw-bits default value to 39, Eric Auger, 2024/03/05
- [PATCH v6 8/9] hw/arm/virt: Set virtio-iommu aw-bits default value to 48, Eric Auger, 2024/03/05
- RE: [PATCH v6 8/9] hw/arm/virt: Set virtio-iommu aw-bits default value to 48,
Duan, Zhenzhong <=
- [PATCH v6 9/9] qemu-options.hx: Document the virtio-iommu-pci aw-bits option, Eric Auger, 2024/03/05