From: Leon Romanovsky <leo...@nvidia.com>

After conversion of arch code to use physical address mapping,
there are no users of .map_page() and .unmap_page() callbacks,
so let's remove them.

Signed-off-by: Leon Romanovsky <leo...@nvidia.com>
---
 include/linux/dma-map-ops.h |  7 -------
 kernel/dma/mapping.c        | 12 ------------
 kernel/dma/ops_helpers.c    |  8 +-------
 3 files changed, 1 insertion(+), 26 deletions(-)

diff --git a/include/linux/dma-map-ops.h b/include/linux/dma-map-ops.h
index a2ec1566aa270..e0a78991fa8a3 100644
--- a/include/linux/dma-map-ops.h
+++ b/include/linux/dma-map-ops.h
@@ -31,13 +31,6 @@ struct dma_map_ops {
                        void *cpu_addr, dma_addr_t dma_addr, size_t size,
                        unsigned long attrs);
 
-       dma_addr_t (*map_page)(struct device *dev, struct page *page,
-                       unsigned long offset, size_t size,
-                       enum dma_data_direction dir, unsigned long attrs);
-       void (*unmap_page)(struct device *dev, dma_addr_t dma_handle,
-                       size_t size, enum dma_data_direction dir,
-                       unsigned long attrs);
-
        dma_addr_t (*map_phys)(struct device *dev, phys_addr_t phys,
                        size_t size, enum dma_data_direction dir,
                        unsigned long attrs);
diff --git a/kernel/dma/mapping.c b/kernel/dma/mapping.c
index 32a85bfdf873a..37163eb49f9fa 100644
--- a/kernel/dma/mapping.c
+++ b/kernel/dma/mapping.c
@@ -171,16 +171,6 @@ dma_addr_t dma_map_phys(struct device *dev, phys_addr_t 
phys, size_t size,
                addr = iommu_dma_map_phys(dev, phys, size, dir, attrs);
        else if (ops->map_phys)
                addr = ops->map_phys(dev, phys, size, dir, attrs);
-       else if (!is_mmio && ops->map_page) {
-               struct page *page = phys_to_page(phys);
-               size_t offset = offset_in_page(phys);
-
-               /*
-                * The dma_ops API contract for ops->map_page() requires
-                * kmappable memory.
-                */
-               addr = ops->map_page(dev, page, offset, size, dir, attrs);
-       }
 
        if (!is_mmio)
                kmsan_handle_dma(phys, size, dir);
@@ -222,8 +212,6 @@ void dma_unmap_phys(struct device *dev, dma_addr_t addr, 
size_t size,
                iommu_dma_unmap_phys(dev, addr, size, dir, attrs);
        else if (ops->unmap_phys)
                ops->unmap_phys(dev, addr, size, dir, attrs);
-       else
-               ops->unmap_page(dev, addr, size, dir, attrs);
        trace_dma_unmap_phys(dev, addr, size, dir, attrs);
        debug_dma_unmap_phys(dev, addr, size, dir);
 }
diff --git a/kernel/dma/ops_helpers.c b/kernel/dma/ops_helpers.c
index 1eccbdbc99c1e..20caf9cabf699 100644
--- a/kernel/dma/ops_helpers.c
+++ b/kernel/dma/ops_helpers.c
@@ -76,11 +76,8 @@ struct page *dma_common_alloc_pages(struct device *dev, 
size_t size,
        if (use_dma_iommu(dev))
                *dma_handle = iommu_dma_map_phys(dev, phys, size, dir,
                                                 DMA_ATTR_SKIP_CPU_SYNC);
-       else if (ops->map_phys)
-               *dma_handle = ops->map_phys(dev, phys, size, dir,
-                                           DMA_ATTR_SKIP_CPU_SYNC);
        else
-               *dma_handle = ops->map_page(dev, page, 0, size, dir,
+               *dma_handle = ops->map_phys(dev, phys, size, dir,
                                            DMA_ATTR_SKIP_CPU_SYNC);
        if (*dma_handle == DMA_MAPPING_ERROR) {
                dma_free_contiguous(dev, page, size);
@@ -102,8 +99,5 @@ void dma_common_free_pages(struct device *dev, size_t size, 
struct page *page,
        else if (ops->unmap_phys)
                ops->unmap_phys(dev, dma_handle, size, dir,
                                DMA_ATTR_SKIP_CPU_SYNC);
-       else if (ops->unmap_page)
-               ops->unmap_page(dev, dma_handle, size, dir,
-                               DMA_ATTR_SKIP_CPU_SYNC);
        dma_free_contiguous(dev, page, size);
 }
-- 
2.51.0


Reply via email to