Skip to content

Commit 189d496

Browse files
mszyprowjoergroedel
authored andcommitted
iommu/exynos: Add missing set_platform_dma_ops callback
Add set_platform_dma_ops() required for proper driver operation on ARM 32bit arch after recent changes in the IOMMU framework (detach ops removal). Fixes: c1fe911 ("iommu: Add set_platform_dma_ops callbacks") Signed-off-by: Marek Szyprowski <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Joerg Roedel <[email protected]>
1 parent ff489fe commit 189d496

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

drivers/iommu/exynos-iommu.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1346,8 +1346,10 @@ static void exynos_iommu_release_device(struct device *dev)
13461346
struct iommu_group *group = iommu_group_get(dev);
13471347

13481348
if (group) {
1349+
#ifndef CONFIG_ARM
13491350
WARN_ON(owner->domain !=
13501351
iommu_group_default_domain(group));
1352+
#endif
13511353
exynos_iommu_detach_device(owner->domain, dev);
13521354
iommu_group_put(group);
13531355
}
@@ -1398,6 +1400,9 @@ static int exynos_iommu_of_xlate(struct device *dev,
13981400
static const struct iommu_ops exynos_iommu_ops = {
13991401
.domain_alloc = exynos_iommu_domain_alloc,
14001402
.device_group = generic_device_group,
1403+
#ifdef CONFIG_ARM
1404+
.set_platform_dma_ops = exynos_iommu_release_device,
1405+
#endif
14011406
.probe_device = exynos_iommu_probe_device,
14021407
.release_device = exynos_iommu_release_device,
14031408
.pgsize_bitmap = SECT_SIZE | LPAGE_SIZE | SPAGE_SIZE,

0 commit comments

Comments
 (0)