aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmmanuel Vadot <manu@FreeBSD.org>2022-08-09 09:55:02 +0000
committerEmmanuel Vadot <manu@FreeBSD.org>2022-08-18 07:46:40 +0000
commit9202c95f47c2c3be8972052dc31d540924db1447 (patch)
tree9bbfc0a67b7ad94e072f5d1077b254ca35d9c34c
parentb1c82bd4026122e2b3dc4d18005069873da6b246 (diff)
downloadsrc-9202c95f47c2c3be8972052dc31d540924db1447.tar.gz
src-9202c95f47c2c3be8972052dc31d540924db1447.zip
linuxkpi: Add dma_{un,}map_sgtable
Variant of dma_{un,}map_sg_attrs for struct sg_table. Reviewed by: bz Obtained from: drm-kmod Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D36106
-rw-r--r--sys/compat/linuxkpi/common/include/linux/dma-mapping.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/sys/compat/linuxkpi/common/include/linux/dma-mapping.h b/sys/compat/linuxkpi/common/include/linux/dma-mapping.h
index dd3bbc094dfb..94adb0c64431 100644
--- a/sys/compat/linuxkpi/common/include/linux/dma-mapping.h
+++ b/sys/compat/linuxkpi/common/include/linux/dma-mapping.h
@@ -341,4 +341,24 @@ dma_max_mapping_size(struct device *dev)
extern int uma_align_cache;
#define dma_get_cache_alignment() uma_align_cache
+
+static inline int
+dma_map_sgtable(struct device *dev, struct sg_table *sgt,
+ enum dma_data_direction dir,
+ unsigned long attrs)
+{
+
+ return (dma_map_sg_attrs(dev, sgt->sgl, sgt->nents, dir, attrs));
+}
+
+static inline void
+dma_unmap_sgtable(struct device *dev, struct sg_table *sgt,
+ enum dma_data_direction dir,
+ unsigned long attrs)
+{
+
+ dma_unmap_sg_attrs(dev, sgt->sgl, sgt->nents, dir, attrs);
+}
+
+
#endif /* _LINUXKPI_LINUX_DMA_MAPPING_H_ */