Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
[muen/linux.git] / kernel / dma / direct.c
index 7ff807f2121c5748dcb56b552fcc8551b0e85bdb..fcdb23e8d2fccf1e6d27f64a23a66f7878224c04 100644 (file)
@@ -393,3 +393,14 @@ int dma_direct_supported(struct device *dev, u64 mask)
         */
        return mask >= __phys_to_dma(dev, min_mask);
 }
+
+size_t dma_direct_max_mapping_size(struct device *dev)
+{
+       size_t size = SIZE_MAX;
+
+       /* If SWIOTLB is active, use its maximum mapping size */
+       if (is_swiotlb_active())
+               size = swiotlb_max_mapping_size(dev);
+
+       return size;
+}