Hi Sricharan,

On 2016-10-21 19:14, Sricharan R wrote:
The device link between master and its smmu is added so that
the smmu gets runtime enabled/disabled when the master needs it.
This is done from add_device callback which gets called once
when the master is added to the smmu group.

Signed-off-by: Sricharan R <sricha...@codeaurora.org>
---
  drivers/iommu/arm-smmu.c | 9 +++++++++
  1 file changed, 9 insertions(+)

diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c
index 578cdc2..71ce4b6 100644
--- a/drivers/iommu/arm-smmu.c
+++ b/drivers/iommu/arm-smmu.c
@@ -1470,6 +1470,15 @@ static int arm_smmu_add_device(struct device *dev)
                goto out_free;
        pm_runtime_put_sync(smmu->dev);
+ /*
+        * Establish the link between smmu and master, so that the
+        * smmu gets runtime enabled/disabled as per the master's
+        * needs.
+        */
+
+       device_link_add(dev, smmu->dev, DEVICE_LINK_AVAILABLE,
+                       DEVICE_LINK_PM_RUNTIME);

Please update to the latest version of Rafael's patches. In V5 the initial link state is not needed anymore and there was an important fix for creating links during master's driver probing, what happens after applying your IOMMU deferred
probe patchset.

+
        return 0;
out_free:

Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland

_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to