diff options
author | Joerg Roedel <jroedel@suse.de> | 2014-09-03 20:47:25 +0400 |
---|---|---|
committer | Joerg Roedel <jroedel@suse.de> | 2014-09-25 17:44:49 +0400 |
commit | 3c0e0ca0a4e757159d868c4870556515d66b6c97 (patch) | |
tree | 2edcb98cf5ab39daa4423054870030c81dd399ec /include/linux/iommu.h | |
parent | 1aed074869a9cbe0a846ea7b254d8fd9a4a4d31f (diff) | |
download | linux-3c0e0ca0a4e757159d868c4870556515d66b6c97.tar.xz |
iommu: Introduce iommu_capable API function
This function will replace the current iommu_domain_has_cap
function and clean up the interface while at it.
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Diffstat (limited to 'include/linux/iommu.h')
-rw-r--r-- | include/linux/iommu.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/iommu.h b/include/linux/iommu.h index 98fc126655ae..d5534d554693 100644 --- a/include/linux/iommu.h +++ b/include/linux/iommu.h @@ -105,6 +105,7 @@ enum iommu_attr { * @pgsize_bitmap: bitmap of supported page sizes */ struct iommu_ops { + bool (*capable)(enum iommu_cap); int (*domain_init)(struct iommu_domain *domain); void (*domain_destroy)(struct iommu_domain *domain); int (*attach_dev)(struct iommu_domain *domain, struct device *dev); @@ -145,6 +146,7 @@ struct iommu_ops { extern int bus_set_iommu(struct bus_type *bus, const struct iommu_ops *ops); extern bool iommu_present(struct bus_type *bus); +extern bool iommu_capable(struct bus_type *bus, enum iommu_cap cap); extern struct iommu_domain *iommu_domain_alloc(struct bus_type *bus); extern struct iommu_group *iommu_group_get_by_id(int id); extern void iommu_domain_free(struct iommu_domain *domain); @@ -253,6 +255,11 @@ static inline bool iommu_present(struct bus_type *bus) return false; } +static inline bool iommu_capable(struct bus_type *bus, enum iommu_cap cap) +{ + return false; +} + static inline struct iommu_domain *iommu_domain_alloc(struct bus_type *bus) { return NULL; |