Message ID | 1477070066-15044-5-git-send-email-sricharan@codeaurora.org (mailing list archive) |
---|---|
State | Not Applicable, archived |
Delegated to: | Andy Gross |
Headers | show |
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 <sricharan@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
Hi Marek, > >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 <sricharan@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. Sure i will update to V5. I see that i am on V4. Regards, Sricharan -- To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
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); + return 0; out_free:
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 <sricharan@codeaurora.org> --- drivers/iommu/arm-smmu.c | 9 +++++++++ 1 file changed, 9 insertions(+)