dma-mapping: fix build when !CONFIG_ARM_DMA_USE_IOMMU
Allow compilation when CONFIG_ARM_DMA_USE_IOMMU is not selected by providing necessary stub functions and fix few mismatch in function declarations. Following this, remove the changes introduced by f3d8d1061fb0b146b3f5 ("msm: ipa: add empty implementation for iommu functions") as they are no longer needed. Change-Id: I04e3aa63407064e8d9c9550a5cb0a82ede899f00 Signed-off-by: Shiraz Hashim <shashim@codeaurora.org>
This commit is contained in:
parent
3a25b40a4e
commit
d880efb021
3 changed files with 29 additions and 3 deletions
|
@ -24,6 +24,8 @@ struct dma_iommu_mapping {
|
||||||
struct kref kref;
|
struct kref kref;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#ifdef CONFIG_ARM_DMA_USE_IOMMU
|
||||||
|
|
||||||
struct dma_iommu_mapping *
|
struct dma_iommu_mapping *
|
||||||
arm_iommu_create_mapping(struct bus_type *bus, dma_addr_t base, u64 size);
|
arm_iommu_create_mapping(struct bus_type *bus, dma_addr_t base, u64 size);
|
||||||
|
|
||||||
|
@ -33,5 +35,29 @@ int arm_iommu_attach_device(struct device *dev,
|
||||||
struct dma_iommu_mapping *mapping);
|
struct dma_iommu_mapping *mapping);
|
||||||
void arm_iommu_detach_device(struct device *dev);
|
void arm_iommu_detach_device(struct device *dev);
|
||||||
|
|
||||||
|
#else /* !CONFIG_ARM_DMA_USE_IOMMU */
|
||||||
|
|
||||||
|
static inline struct dma_iommu_mapping *
|
||||||
|
arm_iommu_create_mapping(struct bus_type *bus, dma_addr_t base, size_t size)
|
||||||
|
{
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline void arm_iommu_release_mapping(struct dma_iommu_mapping *mapping)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline int arm_iommu_attach_device(struct device *dev,
|
||||||
|
struct dma_iommu_mapping *mapping)
|
||||||
|
{
|
||||||
|
return -ENODEV;
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline void arm_iommu_detach_device(struct device *dev)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* CONFIG_ARM_DMA_USE_IOMMU */
|
||||||
|
|
||||||
#endif /* __KERNEL__ */
|
#endif /* __KERNEL__ */
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
|
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
|
#include <linux/err.h>
|
||||||
#include <linux/mm_types.h>
|
#include <linux/mm_types.h>
|
||||||
#include <linux/scatterlist.h>
|
#include <linux/scatterlist.h>
|
||||||
#include <linux/dma-debug.h>
|
#include <linux/dma-debug.h>
|
||||||
|
@ -35,8 +36,7 @@ void arm_iommu_detach_device(struct device *dev);
|
||||||
#else /* !CONFIG_ARM64_DMA_USE_IOMMU */
|
#else /* !CONFIG_ARM64_DMA_USE_IOMMU */
|
||||||
|
|
||||||
static inline struct dma_iommu_mapping *
|
static inline struct dma_iommu_mapping *
|
||||||
arm_iommu_create_mapping(struct bus_type *bus, dma_addr_t base, size_t size,
|
arm_iommu_create_mapping(struct bus_type *bus, dma_addr_t base, size_t size)
|
||||||
int order)
|
|
||||||
{
|
{
|
||||||
return ERR_PTR(-ENOMEM);
|
return ERR_PTR(-ENOMEM);
|
||||||
}
|
}
|
||||||
|
|
|
@ -62,7 +62,7 @@ void msm_dma_buf_freed(void *buffer);
|
||||||
static inline int msm_dma_map_sg_attrs(struct device *dev,
|
static inline int msm_dma_map_sg_attrs(struct device *dev,
|
||||||
struct scatterlist *sg, int nents,
|
struct scatterlist *sg, int nents,
|
||||||
enum dma_data_direction dir, struct dma_buf *dma_buf,
|
enum dma_data_direction dir, struct dma_buf *dma_buf,
|
||||||
int flags)
|
struct dma_attrs *attr)
|
||||||
{
|
{
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue