iommu: Remove apply_resv_region
authorLu Baolu <baolu.lu@linux.intel.com>
Wed, 16 Feb 2022 02:52:45 +0000 (10:52 +0800)
committerJoerg Roedel <jroedel@suse.de>
Mon, 28 Feb 2022 12:25:48 +0000 (13:25 +0100)
The apply_resv_region callback in iommu_ops was introduced to reserve an
IOVA range in the given DMA domain when the IOMMU driver manages the IOVA
by itself. As all drivers converted to use dma-iommu in the core, there's
no driver using this anymore. Remove it to avoid dead code.

Suggested-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/20220216025249.3459465-6-baolu.lu@linux.intel.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/iommu.c
include/linux/iommu.h

index 0ebaf561a70e5d5d85d5909a05916b79a71649f9..7cf073c56036ff7f4fa1de4cd9544aaf81028ebf 100644 (file)
@@ -790,9 +790,6 @@ static int iommu_create_device_direct_mappings(struct iommu_group *group,
                dma_addr_t start, end, addr;
                size_t map_size = 0;
 
-               if (domain->ops->apply_resv_region)
-                       domain->ops->apply_resv_region(dev, domain, entry);
-
                start = ALIGN(entry->start, pg_size);
                end   = ALIGN(entry->start + entry->length, pg_size);
 
index 9983a01373b2fdd04d8ebd5e7c8de603ba01cf38..9ffa2e88f3d002ed85ac79f391b3b233f70b6481 100644 (file)
@@ -214,7 +214,6 @@ struct iommu_iotlb_gather {
  * @set_pgtable_quirks: Set io page table quirks (IO_PGTABLE_QUIRK_*)
  * @get_resv_regions: Request list of reserved regions for a device
  * @put_resv_regions: Free list of reserved regions for a device
- * @apply_resv_region: Temporary helper call-back for iova reserved ranges
  * @of_xlate: add OF master IDs to iommu grouping
  * @is_attach_deferred: Check if domain attach should be deferred from iommu
  *                      driver init to device driver init (default no)
@@ -268,9 +267,6 @@ struct iommu_ops {
        /* Request/Free a list of reserved regions for a device */
        void (*get_resv_regions)(struct device *dev, struct list_head *list);
        void (*put_resv_regions)(struct device *dev, struct list_head *list);
-       void (*apply_resv_region)(struct device *dev,
-                                 struct iommu_domain *domain,
-                                 struct iommu_resv_region *region);
 
        int (*of_xlate)(struct device *dev, struct of_phandle_args *args);
        bool (*is_attach_deferred)(struct iommu_domain *domain, struct device *dev);