xref: /openbmc/linux/include/linux/of_iommu.h (revision a5bf3cfc)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __OF_IOMMU_H
3 #define __OF_IOMMU_H
4 
5 struct device;
6 struct device_node;
7 struct iommu_ops;
8 
9 #ifdef CONFIG_OF_IOMMU
10 
11 extern const struct iommu_ops *of_iommu_configure(struct device *dev,
12 					struct device_node *master_np,
13 					const u32 *id);
14 
15 extern void of_iommu_get_resv_regions(struct device *dev,
16 				      struct list_head *list);
17 
18 #else
19 
of_iommu_configure(struct device * dev,struct device_node * master_np,const u32 * id)20 static inline const struct iommu_ops *of_iommu_configure(struct device *dev,
21 					 struct device_node *master_np,
22 					 const u32 *id)
23 {
24 	return NULL;
25 }
26 
of_iommu_get_resv_regions(struct device * dev,struct list_head * list)27 static inline void of_iommu_get_resv_regions(struct device *dev,
28 					     struct list_head *list)
29 {
30 }
31 
32 #endif	/* CONFIG_OF_IOMMU */
33 
34 #endif /* __OF_IOMMU_H */
35