powerpc: remove device_to_mask()
authorChristoph Hellwig <hch@lst.de>
Sat, 29 Jun 2019 08:03:59 +0000 (10:03 +0200)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 3 Jul 2019 05:19:35 +0000 (15:19 +1000)
Use the dma_get_mask() helper from dma-mapping.h instead, as they are
functionally identical.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/include/asm/iommu.h
arch/powerpc/kernel/dma-iommu.c
arch/powerpc/platforms/pseries/vio.c

index 0ac52392ed99d021af872f8a23a4527e2418576b..f98f2864b66affb86336e83e5d53b77ba859d877 100644 (file)
@@ -327,13 +327,5 @@ extern bool iommu_fixed_is_weak;
 
 extern const struct dma_map_ops dma_iommu_ops;
 
-static inline unsigned long device_to_mask(struct device *dev)
-{
-       if (dev->dma_mask && *dev->dma_mask)
-               return *dev->dma_mask;
-       /* Assume devices without mask can take 32 bit addresses */
-       return 0xfffffffful;
-}
-
 #endif /* __KERNEL__ */
 #endif /* _ASM_IOMMU_H */
index 09231ef06d01e71645cd92722646b56621c42b9c..168af3a5b4b16a7e3365cbfe40a810c13b696440 100644 (file)
@@ -71,7 +71,7 @@ static dma_addr_t dma_iommu_map_page(struct device *dev, struct page *page,
                return dma_direct_map_page(dev, page, offset, size, direction,
                                attrs);
        return iommu_map_page(dev, get_iommu_table_base(dev), page, offset,
-                             size, device_to_mask(dev), direction, attrs);
+                             size, dma_get_mask(dev), direction, attrs);
 }
 
 
@@ -92,7 +92,7 @@ static int dma_iommu_map_sg(struct device *dev, struct scatterlist *sglist,
        if (dma_iommu_map_bypass(dev, attrs))
                return dma_direct_map_sg(dev, sglist, nelems, direction, attrs);
        return ppc_iommu_map_sg(dev, get_iommu_table_base(dev), sglist, nelems,
-                               device_to_mask(dev), direction, attrs);
+                               dma_get_mask(dev), direction, attrs);
 }
 
 static void dma_iommu_unmap_sg(struct device *dev, struct scatterlist *sglist,
index 141795275ccb19bf66da2dc9bcff88684d135df5..97c0e3e5eae5a2f22eb448ee22710dcdce559f81 100644 (file)
@@ -524,7 +524,7 @@ static dma_addr_t vio_dma_iommu_map_page(struct device *dev, struct page *page,
 
        if (vio_cmo_alloc(viodev, roundup(size, IOMMU_PAGE_SIZE(tbl))))
                goto out_fail;
-       ret = iommu_map_page(dev, tbl, page, offset, size, device_to_mask(dev),
+       ret = iommu_map_page(dev, tbl, page, offset, size, dma_get_mask(dev),
                        direction, attrs);
        if (unlikely(ret == DMA_MAPPING_ERROR))
                goto out_deallocate;
@@ -564,7 +564,7 @@ static int vio_dma_iommu_map_sg(struct device *dev, struct scatterlist *sglist,
 
        if (vio_cmo_alloc(viodev, alloc_size))
                goto out_fail;
-       ret = ppc_iommu_map_sg(dev, tbl, sglist, nelems, device_to_mask(dev),
+       ret = ppc_iommu_map_sg(dev, tbl, sglist, nelems, dma_get_mask(dev),
                        direction, attrs);
        if (unlikely(!ret))
                goto out_deallocate;