diff options
Diffstat (limited to 'include/asm-x86_64/swiotlb.h')
-rw-r--r-- | include/asm-x86_64/swiotlb.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/include/asm-x86_64/swiotlb.h b/include/asm-x86_64/swiotlb.h new file mode 100644 index 000000000000..36293061f4ed --- /dev/null +++ b/include/asm-x86_64/swiotlb.h | |||
@@ -0,0 +1,40 @@ | |||
1 | #ifndef _ASM_SWIOTLB_H | ||
2 | #define _ASM_SWTIOLB_H 1 | ||
3 | |||
4 | #include <linux/config.h> | ||
5 | |||
6 | /* SWIOTLB interface */ | ||
7 | |||
8 | extern dma_addr_t swiotlb_map_single(struct device *hwdev, void *ptr, size_t size, | ||
9 | int dir); | ||
10 | extern void swiotlb_unmap_single(struct device *hwdev, dma_addr_t dev_addr, | ||
11 | size_t size, int dir); | ||
12 | extern void swiotlb_sync_single_for_cpu(struct device *hwdev, | ||
13 | dma_addr_t dev_addr, | ||
14 | size_t size, int dir); | ||
15 | extern void swiotlb_sync_single_for_device(struct device *hwdev, | ||
16 | dma_addr_t dev_addr, | ||
17 | size_t size, int dir); | ||
18 | extern void swiotlb_sync_sg_for_cpu(struct device *hwdev, | ||
19 | struct scatterlist *sg, int nelems, | ||
20 | int dir); | ||
21 | extern void swiotlb_sync_sg_for_device(struct device *hwdev, | ||
22 | struct scatterlist *sg, int nelems, | ||
23 | int dir); | ||
24 | extern int swiotlb_map_sg(struct device *hwdev, struct scatterlist *sg, | ||
25 | int nents, int direction); | ||
26 | extern void swiotlb_unmap_sg(struct device *hwdev, struct scatterlist *sg, | ||
27 | int nents, int direction); | ||
28 | extern int swiotlb_dma_mapping_error(dma_addr_t dma_addr); | ||
29 | extern void *swiotlb_alloc_coherent (struct device *hwdev, size_t size, | ||
30 | dma_addr_t *dma_handle, int flags); | ||
31 | extern void swiotlb_free_coherent (struct device *hwdev, size_t size, | ||
32 | void *vaddr, dma_addr_t dma_handle); | ||
33 | |||
34 | #ifdef CONFIG_SWIOTLB | ||
35 | extern int swiotlb; | ||
36 | #else | ||
37 | #define swiotlb 0 | ||
38 | #endif | ||
39 | |||
40 | #endif | ||