iommu/exynos: Suppress unbinding to prevent system failure
authorMarek Szyprowski <m.szyprowski@samsung.com>
Fri, 20 May 2016 13:48:21 +0000 (15:48 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 20 Aug 2016 16:09:21 +0000 (18:09 +0200)
commit b54b874fbaf5e024723e50dfb035a9916d6752b4 upstream.

Removal of IOMMU driver cannot be done reliably, so Exynos IOMMU driver
doesn't support this operation. It is essential for system operation, so
it makes sense to prevent unbinding by disabling bind/unbind sysfs
feature for SYSMMU controller driver to avoid kernel ops or trashing
memory caused by such operation.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/iommu/exynos-iommu.c

index 97c41b8ab5d980667667bde15ad1d16105278b65..29a31eb9ace3ed2c1369fcd6f1284a440474ca32 100644 (file)
@@ -647,6 +647,7 @@ static struct platform_driver exynos_sysmmu_driver __refdata = {
                .name           = "exynos-sysmmu",
                .of_match_table = sysmmu_of_match,
                .pm             = &sysmmu_pm_ops,
+               .suppress_bind_attrs = true,
        }
 };