1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | #ifndef _ASM_X86_DMA_MAPPING_H |
3 | #define _ASM_X86_DMA_MAPPING_H |
4 | |
5 | /* |
6 | * IOMMU interface. See Documentation/DMA-API-HOWTO.txt and |
7 | * Documentation/DMA-API.txt for documentation. |
8 | */ |
9 | |
10 | #include <linux/scatterlist.h> |
11 | #include <linux/dma-debug.h> |
12 | #include <asm/io.h> |
13 | #include <asm/swiotlb.h> |
14 | #include <linux/dma-contiguous.h> |
15 | |
16 | #ifdef CONFIG_ISA |
17 | # define ISA_DMA_BIT_MASK DMA_BIT_MASK(24) |
18 | #else |
19 | # define ISA_DMA_BIT_MASK DMA_BIT_MASK(32) |
20 | #endif |
21 | |
22 | extern int iommu_merge; |
23 | extern struct device x86_dma_fallback_dev; |
24 | extern int panic_on_overflow; |
25 | |
26 | extern const struct dma_map_ops *dma_ops; |
27 | |
28 | static inline const struct dma_map_ops *get_arch_dma_ops(struct bus_type *bus) |
29 | { |
30 | return dma_ops; |
31 | } |
32 | |
33 | bool arch_dma_alloc_attrs(struct device **dev); |
34 | #define arch_dma_alloc_attrs arch_dma_alloc_attrs |
35 | |
36 | #endif |
37 | |