Stop calling bus_set_iommu() since it's now unnecessary, and simplify
the probe failure path accordingly.

Reviewed-by: Jean-Philippe Brucker <jean-phili...@linaro.org>
Signed-off-by: Robin Murphy <robin.mur...@arm.com>
---
 drivers/iommu/virtio-iommu.c | 25 -------------------------
 1 file changed, 25 deletions(-)

diff --git a/drivers/iommu/virtio-iommu.c b/drivers/iommu/virtio-iommu.c
index 25be4b822aa0..bcbd10ec4ccb 100644
--- a/drivers/iommu/virtio-iommu.c
+++ b/drivers/iommu/virtio-iommu.c
@@ -7,7 +7,6 @@
 
 #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
 
-#include <linux/amba/bus.h>
 #include <linux/delay.h>
 #include <linux/dma-iommu.h>
 #include <linux/dma-map-ops.h>
@@ -17,7 +16,6 @@
 #include <linux/module.h>
 #include <linux/of_platform.h>
 #include <linux/pci.h>
-#include <linux/platform_device.h>
 #include <linux/virtio.h>
 #include <linux/virtio_config.h>
 #include <linux/virtio_ids.h>
@@ -1146,26 +1144,6 @@ static int viommu_probe(struct virtio_device *vdev)
 
        iommu_device_register(&viommu->iommu, &viommu_ops, parent_dev);
 
-#ifdef CONFIG_PCI
-       if (pci_bus_type.iommu_ops != &viommu_ops) {
-               ret = bus_set_iommu(&pci_bus_type, &viommu_ops);
-               if (ret)
-                       goto err_unregister;
-       }
-#endif
-#ifdef CONFIG_ARM_AMBA
-       if (amba_bustype.iommu_ops != &viommu_ops) {
-               ret = bus_set_iommu(&amba_bustype, &viommu_ops);
-               if (ret)
-                       goto err_unregister;
-       }
-#endif
-       if (platform_bus_type.iommu_ops != &viommu_ops) {
-               ret = bus_set_iommu(&platform_bus_type, &viommu_ops);
-               if (ret)
-                       goto err_unregister;
-       }
-
        vdev->priv = viommu;
 
        dev_info(dev, "input address: %u bits\n",
@@ -1174,9 +1152,6 @@ static int viommu_probe(struct virtio_device *vdev)
 
        return 0;
 
-err_unregister:
-       iommu_device_sysfs_remove(&viommu->iommu);
-       iommu_device_unregister(&viommu->iommu);
 err_free_vqs:
        vdev->config->del_vqs(vdev);
 
-- 
2.35.3.dirty

_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to