|
@@ -214,6 +214,7 @@ struct iommu_ops {
|
|
|
struct iommu_device {
|
|
|
struct list_head list;
|
|
|
const struct iommu_ops *ops;
|
|
|
+ struct fwnode_handle *fwnode;
|
|
|
struct device dev;
|
|
|
};
|
|
|
|
|
@@ -233,6 +234,12 @@ static inline void iommu_device_set_ops(struct iommu_device *iommu,
|
|
|
iommu->ops = ops;
|
|
|
}
|
|
|
|
|
|
+static inline void iommu_device_set_fwnode(struct iommu_device *iommu,
|
|
|
+ struct fwnode_handle *fwnode)
|
|
|
+{
|
|
|
+ iommu->fwnode = fwnode;
|
|
|
+}
|
|
|
+
|
|
|
#define IOMMU_GROUP_NOTIFY_ADD_DEVICE 1 /* Device added */
|
|
|
#define IOMMU_GROUP_NOTIFY_DEL_DEVICE 2 /* Pre Device removed */
|
|
|
#define IOMMU_GROUP_NOTIFY_BIND_DRIVER 3 /* Pre Driver bind */
|
|
@@ -580,6 +587,11 @@ static inline void iommu_device_set_ops(struct iommu_device *iommu,
|
|
|
{
|
|
|
}
|
|
|
|
|
|
+static inline void iommu_device_set_fwnode(struct iommu_device *iommu,
|
|
|
+ struct fwnode_handle *fwnode)
|
|
|
+{
|
|
|
+}
|
|
|
+
|
|
|
static inline void iommu_device_unregister(struct iommu_device *iommu)
|
|
|
{
|
|
|
}
|