iommu/arm-smmu: Invoke pm_runtime across the driver
authorSricharan R <sricharan@codeaurora.org>
Tue, 4 Dec 2018 06:22:10 +0000 (11:52 +0530)
committerWill Deacon <will.deacon@arm.com>
Mon, 10 Dec 2018 14:55:59 +0000 (14:55 +0000)
commitd4a44f0750bb9bf7c44c22444a482756b2344a79
tree8d658ea4ae604d77c96bea1de68b087f0c9619ed
parent96a299d24cfb6b9659304131b598fa09f4c9041e
iommu/arm-smmu: Invoke pm_runtime across the driver

Enable pm-runtime on devices that implement a pm domain. Then,
add pm runtime hooks to several iommu_ops to power cycle the
smmu device for explicit TLB invalidation requests, and
register space accesses, etc.
We need these hooks when the smmu, linked to its master through
device links, has to be powered-up without the master device
being in context.

Signed-off-by: Sricharan R <sricharan@codeaurora.org>
[vivek: Cleanup pm runtime calls]
Signed-off-by: Vivek Gautam <vivek.gautam@codeaurora.org>
Reviewed-by: Tomasz Figa <tfiga@chromium.org>
Tested-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
drivers/iommu/arm-smmu.c