Linux Audio

Check our new training course

Loading...
Note: File does not exist in v3.1.
 1#ifndef ASMARM_DMA_IOMMU_H
 2#define ASMARM_DMA_IOMMU_H
 3
 4#ifdef __KERNEL__
 5
 6#include <linux/mm_types.h>
 7#include <linux/scatterlist.h>
 8#include <linux/dma-debug.h>
 9#include <linux/kmemcheck.h>
10
11struct dma_iommu_mapping {
12	/* iommu specific data */
13	struct iommu_domain	*domain;
14
15	void			*bitmap;
16	size_t			bits;
17	unsigned int		order;
18	dma_addr_t		base;
19
20	spinlock_t		lock;
21	struct kref		kref;
22};
23
24struct dma_iommu_mapping *
25arm_iommu_create_mapping(struct bus_type *bus, dma_addr_t base, size_t size,
26			 int order);
27
28void arm_iommu_release_mapping(struct dma_iommu_mapping *mapping);
29
30int arm_iommu_attach_device(struct device *dev,
31					struct dma_iommu_mapping *mapping);
32
33#endif /* __KERNEL__ */
34#endif