iommu/exynos: Fix suspend/resume with IDENTITY domain
authorMarek Szyprowski <m.szyprowski@samsung.com>
Tue, 1 Apr 2025 20:27:31 +0000 (22:27 +0200)
committerJoerg Roedel <jroedel@suse.de>
Fri, 11 Apr 2025 10:40:41 +0000 (12:40 +0200)
commit99deffc409b69000ac4877486e69ec6516becd53
tree1cdd2225602f28e49db5803f2544d91fadc103c8
parentd9d3cede416719c2d41cd4da1955b12a85856e2f
iommu/exynos: Fix suspend/resume with IDENTITY domain

Commit bcb81ac6ae3c ("iommu: Get DT/ACPI parsing into the proper probe
path") changed the sequence of probing the SYSMMU controller devices and
calls to arm_iommu_attach_device(), what results in resuming SYSMMU
controller earlier, when it is still set to IDENTITY mapping. Such change
revealed the bug in IDENTITY handling in the exynos-iommu driver. When
SYSMMU controller is set to IDENTITY mapping, data->domain is NULL, so
adjust checks in suspend & resume callbacks to handle this case
correctly.

Fixes: b3d14960e629 ("iommu/exynos: Implement an IDENTITY domain")
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Link: https://lore.kernel.org/r/20250401202731.2810474-1-m.szyprowski@samsung.com
Signed-off-by: Joerg Roedel <jroedel@suse.de>
drivers/iommu/exynos-iommu.c