mirror of
https://github.com/torvalds/linux.git
synced 2024-12-22 19:01:37 +00:00
bc3ec75de5
All the cache maintainance is already stubbed out when not enabled, but merging the two allows us to nicely handle the case where cache maintainance is required for some devices, but not others. Signed-off-by: Christoph Hellwig <hch@lst.de> Acked-by: Paul Burton <paul.burton@mips.com> # MIPS parts
31 lines
703 B
C
31 lines
703 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef _ASM_DMA_MAPPING_H
|
|
#define _ASM_DMA_MAPPING_H
|
|
|
|
#include <linux/swiotlb.h>
|
|
|
|
extern const struct dma_map_ops jazz_dma_ops;
|
|
|
|
static inline const struct dma_map_ops *get_arch_dma_ops(struct bus_type *bus)
|
|
{
|
|
#if defined(CONFIG_MACH_JAZZ)
|
|
return &jazz_dma_ops;
|
|
#elif defined(CONFIG_SWIOTLB)
|
|
return &swiotlb_dma_ops;
|
|
#else
|
|
return &dma_direct_ops;
|
|
#endif
|
|
}
|
|
|
|
#define arch_setup_dma_ops arch_setup_dma_ops
|
|
static inline void arch_setup_dma_ops(struct device *dev, u64 dma_base,
|
|
u64 size, const struct iommu_ops *iommu,
|
|
bool coherent)
|
|
{
|
|
#ifdef CONFIG_DMA_PERDEV_COHERENT
|
|
dev->dma_coherent = coherent;
|
|
#endif
|
|
}
|
|
|
|
#endif /* _ASM_DMA_MAPPING_H */
|