iommu/omap: Add check for iommu group when no IOMMU in use
authorTero Kristo via iommu <iommu@lists.linux-foundation.org>
Mon, 18 May 2020 11:10:57 +0000 (14:10 +0300)
committerJoerg Roedel <jroedel@suse.de>
Mon, 18 May 2020 13:35:43 +0000 (15:35 +0200)
Most of the devices in OMAP family of SoCs are not using IOMMU. The
patch for converting the OMAP IOMMU to use generic IOMMU bus probe
functionality failed to add a check for this, so add it here.

Fixes: c822b37cac48 ("iommu/omap: Remove orphan_dev tracking")
Reported-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: Tero Kristo <t-kristo@ti.com>
Link: https://lore.kernel.org/r/20200518111057.23140-1-t-kristo@ti.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/omap-iommu.c

index 6699fe6d9e06efca0a8291af5a1db7ed3c21a325..5a9ba815863b460a0a7c6197c6f942c8c89d5df4 100644 (file)
@@ -1726,6 +1726,9 @@ static struct iommu_group *omap_iommu_device_group(struct device *dev)
        struct omap_iommu_arch_data *arch_data = dev->archdata.iommu;
        struct iommu_group *group = ERR_PTR(-EINVAL);
 
+       if (!arch_data)
+               return ERR_PTR(-ENODEV);
+
        if (arch_data->iommu_dev)
                group = iommu_group_ref_get(arch_data->iommu_dev->group);