mirror of https://gitee.com/openkylin/qemu.git
hw/arm/virt: Remove device tree restriction for virtio-iommu
virtio-iommu is now supported with ACPI VIOT as well as device tree. Remove the restriction that prevents from instantiating a virtio-iommu device under ACPI. Acked-by: Igor Mammedov <imammedo@redhat.com> Reviewed-by: Eric Auger <eric.auger@redhat.com> Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org> Message-id: 20211210170415.583179-3-jean-philippe@linaro.org Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
cf1a5cc935
commit
092cba0350
|
@ -2613,16 +2613,10 @@ static HotplugHandler *virt_machine_get_hotplug_handler(MachineState *machine,
|
||||||
MachineClass *mc = MACHINE_GET_CLASS(machine);
|
MachineClass *mc = MACHINE_GET_CLASS(machine);
|
||||||
|
|
||||||
if (device_is_dynamic_sysbus(mc, dev) ||
|
if (device_is_dynamic_sysbus(mc, dev) ||
|
||||||
(object_dynamic_cast(OBJECT(dev), TYPE_PC_DIMM))) {
|
object_dynamic_cast(OBJECT(dev), TYPE_PC_DIMM) ||
|
||||||
|
object_dynamic_cast(OBJECT(dev), TYPE_VIRTIO_IOMMU_PCI)) {
|
||||||
return HOTPLUG_HANDLER(machine);
|
return HOTPLUG_HANDLER(machine);
|
||||||
}
|
}
|
||||||
if (object_dynamic_cast(OBJECT(dev), TYPE_VIRTIO_IOMMU_PCI)) {
|
|
||||||
VirtMachineState *vms = VIRT_MACHINE(machine);
|
|
||||||
|
|
||||||
if (!vms->bootinfo.firmware_loaded || !virt_is_acpi_enabled(vms)) {
|
|
||||||
return HOTPLUG_HANDLER(machine);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -48,16 +48,8 @@ static void virtio_iommu_pci_realize(VirtIOPCIProxy *vpci_dev, Error **errp)
|
||||||
VirtIOIOMMU *s = VIRTIO_IOMMU(vdev);
|
VirtIOIOMMU *s = VIRTIO_IOMMU(vdev);
|
||||||
|
|
||||||
if (!qdev_get_machine_hotplug_handler(DEVICE(vpci_dev))) {
|
if (!qdev_get_machine_hotplug_handler(DEVICE(vpci_dev))) {
|
||||||
MachineClass *mc = MACHINE_GET_CLASS(qdev_get_machine());
|
error_setg(errp, "Check your machine implements a hotplug handler "
|
||||||
|
"for the virtio-iommu-pci device");
|
||||||
error_setg(errp,
|
|
||||||
"%s machine fails to create iommu-map device tree bindings",
|
|
||||||
mc->name);
|
|
||||||
error_append_hint(errp,
|
|
||||||
"Check your machine implements a hotplug handler "
|
|
||||||
"for the virtio-iommu-pci device\n");
|
|
||||||
error_append_hint(errp, "Check the guest is booted without FW or with "
|
|
||||||
"-no-acpi\n");
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
for (int i = 0; i < s->nb_reserved_regions; i++) {
|
for (int i = 0; i < s->nb_reserved_regions; i++) {
|
||||||
|
|
Loading…
Reference in New Issue