Commit | Line | Data |
---|---|---|
ea8c64ac CH |
1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | #ifndef ASM_POWERPC_DMA_DIRECT_H | |
3 | #define ASM_POWERPC_DMA_DIRECT_H 1 | |
4 | ||
5 | static inline bool dma_capable(struct device *dev, dma_addr_t addr, size_t size) | |
6 | { | |
ea8c64ac CH |
7 | if (!dev->dma_mask) |
8 | return false; | |
9 | ||
9b18114c CH |
10 | return addr + size - 1 <= |
11 | min_not_zero(*dev->dma_mask, dev->bus_dma_mask); | |
ea8c64ac CH |
12 | } |
13 | ||
b6e05477 | 14 | static inline dma_addr_t __phys_to_dma(struct device *dev, phys_addr_t paddr) |
ea8c64ac | 15 | { |
7610fdf5 CH |
16 | if (!dev) |
17 | return paddr + PCI_DRAM_OFFSET; | |
18 | return paddr + dev->archdata.dma_offset; | |
ea8c64ac CH |
19 | } |
20 | ||
b6e05477 | 21 | static inline phys_addr_t __dma_to_phys(struct device *dev, dma_addr_t daddr) |
ea8c64ac | 22 | { |
7610fdf5 CH |
23 | if (!dev) |
24 | return daddr - PCI_DRAM_OFFSET; | |
25 | return daddr - dev->archdata.dma_offset; | |
ea8c64ac CH |
26 | } |
27 | #endif /* ASM_POWERPC_DMA_DIRECT_H */ |