xref: /linux/rust/helpers/scatterlist.c (revision 4f38da1f027ea2c9f01bb71daa7a299c191b6940)
1*05aa6fb1SDanilo Krummrich // SPDX-License-Identifier: GPL-2.0
2*05aa6fb1SDanilo Krummrich 
3*05aa6fb1SDanilo Krummrich #include <linux/dma-direction.h>
4*05aa6fb1SDanilo Krummrich 
5*05aa6fb1SDanilo Krummrich dma_addr_t rust_helper_sg_dma_address(struct scatterlist *sg)
6*05aa6fb1SDanilo Krummrich {
7*05aa6fb1SDanilo Krummrich 	return sg_dma_address(sg);
8*05aa6fb1SDanilo Krummrich }
9*05aa6fb1SDanilo Krummrich 
10*05aa6fb1SDanilo Krummrich unsigned int rust_helper_sg_dma_len(struct scatterlist *sg)
11*05aa6fb1SDanilo Krummrich {
12*05aa6fb1SDanilo Krummrich 	return sg_dma_len(sg);
13*05aa6fb1SDanilo Krummrich }
14*05aa6fb1SDanilo Krummrich 
15*05aa6fb1SDanilo Krummrich struct scatterlist *rust_helper_sg_next(struct scatterlist *sg)
16*05aa6fb1SDanilo Krummrich {
17*05aa6fb1SDanilo Krummrich 	return sg_next(sg);
18*05aa6fb1SDanilo Krummrich }
19*05aa6fb1SDanilo Krummrich 
20*05aa6fb1SDanilo Krummrich void rust_helper_dma_unmap_sgtable(struct device *dev, struct sg_table *sgt,
21*05aa6fb1SDanilo Krummrich 				   enum dma_data_direction dir, unsigned long attrs)
22*05aa6fb1SDanilo Krummrich {
23*05aa6fb1SDanilo Krummrich 	return dma_unmap_sgtable(dev, sgt, dir, attrs);
24*05aa6fb1SDanilo Krummrich }
25