ACPI/IORT: Add function to check SMMUs drivers presence
[sfrench/cifs-2.6.git] / drivers / acpi / arm64 / iort.c
index 4a5bb967250bc5ae66f7a6fbf64f26a3f0759571..3dd9ec372dae57218b1ca8f0b73026bb527b5197 100644 (file)
@@ -523,6 +523,19 @@ static int arm_smmu_iort_xlate(struct device *dev, u32 streamid,
        return ret;
 }
 
+static inline bool iort_iommu_driver_enabled(u8 type)
+{
+       switch (type) {
+       case ACPI_IORT_NODE_SMMU_V3:
+               return IS_BUILTIN(CONFIG_ARM_SMMU_V3);
+       case ACPI_IORT_NODE_SMMU:
+               return IS_BUILTIN(CONFIG_ARM_SMMU);
+       default:
+               pr_warn("IORT node type %u does not describe an SMMU\n", type);
+               return false;
+       }
+}
+
 static const struct iommu_ops *iort_iommu_xlate(struct device *dev,
                                        struct acpi_iort_node *node,
                                        u32 streamid)