aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorJoerg Roedel <joerg.roedel@amd.com>2011-09-06 10:03:26 -0400
committerJoerg Roedel <joerg.roedel@amd.com>2011-10-21 08:37:19 -0400
commit905d66c1e5dc8149e111f04a32bb193f25da1d53 (patch)
tree3b4d55034f1ca58a7956c88cb71f6af8cda2b697 /include
parentff21776d12ff7993a6b236b8273ef62777d25dfb (diff)
iommu/core: Add bus_type parameter to iommu_domain_alloc
This is necessary to store a pointer to the bus-specific iommu_ops in the iommu-domain structure. It will be used later to call into bus-specific iommu-ops. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/iommu.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/include/linux/iommu.h b/include/linux/iommu.h
index dca83d3405b1..c78d068930b7 100644
--- a/include/linux/iommu.h
+++ b/include/linux/iommu.h
@@ -25,10 +25,12 @@
25#define IOMMU_WRITE (2) 25#define IOMMU_WRITE (2)
26#define IOMMU_CACHE (4) /* DMA cache coherency */ 26#define IOMMU_CACHE (4) /* DMA cache coherency */
27 27
28struct iommu_ops;
28struct bus_type; 29struct bus_type;
29struct device; 30struct device;
30 31
31struct iommu_domain { 32struct iommu_domain {
33 struct iommu_ops *ops;
32 void *priv; 34 void *priv;
33}; 35};
34 36
@@ -55,7 +57,7 @@ struct iommu_ops {
55extern void register_iommu(struct iommu_ops *ops); 57extern void register_iommu(struct iommu_ops *ops);
56extern int bus_set_iommu(struct bus_type *bus, struct iommu_ops *ops); 58extern int bus_set_iommu(struct bus_type *bus, struct iommu_ops *ops);
57extern bool iommu_found(void); 59extern bool iommu_found(void);
58extern struct iommu_domain *iommu_domain_alloc(void); 60extern struct iommu_domain *iommu_domain_alloc(struct bus_type *bus);
59extern void iommu_domain_free(struct iommu_domain *domain); 61extern void iommu_domain_free(struct iommu_domain *domain);
60extern int iommu_attach_device(struct iommu_domain *domain, 62extern int iommu_attach_device(struct iommu_domain *domain,
61 struct device *dev); 63 struct device *dev);
@@ -79,7 +81,7 @@ static inline bool iommu_found(void)
79 return false; 81 return false;
80} 82}
81 83
82static inline struct iommu_domain *iommu_domain_alloc(void) 84static inline struct iommu_domain *iommu_domain_alloc(struct bus_type *bus)
83{ 85{
84 return NULL; 86 return NULL;
85} 87}