|
1 |
| -/* SPDX-License-Identifier: GPL-2.0 */ |
2 |
| -#ifndef ASM_ARM_DMA_DIRECT_H |
3 |
| -#define ASM_ARM_DMA_DIRECT_H 1 |
4 |
| - |
5 |
| -#include <asm/memory.h> |
6 |
| - |
7 |
| -/* |
8 |
| - * dma_to_pfn/pfn_to_dma are architecture private |
9 |
| - * functions used internally by the DMA-mapping API to provide DMA |
10 |
| - * addresses. They must not be used by drivers. |
11 |
| - */ |
12 |
| -static inline dma_addr_t pfn_to_dma(struct device *dev, unsigned long pfn) |
13 |
| -{ |
14 |
| - if (dev && dev->dma_range_map) |
15 |
| - pfn = PFN_DOWN(translate_phys_to_dma(dev, PFN_PHYS(pfn))); |
16 |
| - return (dma_addr_t)__pfn_to_bus(pfn); |
17 |
| -} |
18 |
| - |
19 |
| -static inline unsigned long dma_to_pfn(struct device *dev, dma_addr_t addr) |
20 |
| -{ |
21 |
| - unsigned long pfn = __bus_to_pfn(addr); |
22 |
| - |
23 |
| - if (dev && dev->dma_range_map) |
24 |
| - pfn = PFN_DOWN(translate_dma_to_phys(dev, PFN_PHYS(pfn))); |
25 |
| - return pfn; |
26 |
| -} |
27 |
| - |
28 |
| -static inline dma_addr_t phys_to_dma(struct device *dev, phys_addr_t paddr) |
29 |
| -{ |
30 |
| - unsigned int offset = paddr & ~PAGE_MASK; |
31 |
| - return pfn_to_dma(dev, __phys_to_pfn(paddr)) + offset; |
32 |
| -} |
33 |
| - |
34 |
| -static inline phys_addr_t dma_to_phys(struct device *dev, dma_addr_t dev_addr) |
35 |
| -{ |
36 |
| - unsigned int offset = dev_addr & ~PAGE_MASK; |
37 |
| - return __pfn_to_phys(dma_to_pfn(dev, dev_addr)) + offset; |
38 |
| -} |
39 |
| - |
40 |
| -#endif /* ASM_ARM_DMA_DIRECT_H */ |
| 1 | +#include <mach/dma-direct.h> |
0 commit comments