Message ID | 20180830144541.17740-1-vivek.gautam@codeaurora.org (mailing list archive) |
---|---|
Headers | show |
Series | iommu/arm-smmu: Add runtime pm/sleep support | expand |
Hi Vivek, On Thu, Aug 30, 2018 at 08:15:36PM +0530, Vivek Gautam wrote: > This series provides the support for turning on the arm-smmu's > clocks/power domains using runtime pm. This is done using > device links between smmu and client devices. The device link > framework keeps the two devices in correct order for power-cycling > across runtime PM or across system-wide PM. > > With addition of a new device link flag DL_FLAG_AUTOREMOVE_SUPPLIER [7], > the device links created between arm-smmu and its clients will be > automatically purged when arm-smmu driver unbinds from its device. > > As not all implementations support clock/power gating, we are checking > for a valid 'smmu->dev's pm_domain' to conditionally enable the runtime > power management for such smmu implementations that can support it. > Otherwise, the clocks are turned to be always on in .probe until .remove. > With conditional runtime pm now, we avoid touching dev->power.lock > in fastpaths for smmu implementations that don't need to do anything > useful with pm_runtime. > This lets us to use the much-argued pm_runtime_get_sync/put_sync() > calls in map/unmap callbacks so that the clients do not have to > worry about handling any of the arm-smmu's power. > > This series also adds support for Qcom's arm-smmu-v2 variant that > has different clocks and power requirements. > > Previous version of this patch series is @ [1]. > > Build tested the series based on 4.19-rc1. I'm going to send my pull request to Joerg early next week (probably Monday), but I'm not keen to include this whilst it has outstanding comments from Ulf. Your errata workaround patch is in a similar situation, with outstanding comments from Robin. Will
Hi Will, On Fri, Sep 28, 2018 at 7:27 PM Will Deacon <will.deacon@arm.com> wrote: > > Hi Vivek, > > On Thu, Aug 30, 2018 at 08:15:36PM +0530, Vivek Gautam wrote: > > This series provides the support for turning on the arm-smmu's > > clocks/power domains using runtime pm. This is done using > > device links between smmu and client devices. The device link > > framework keeps the two devices in correct order for power-cycling > > across runtime PM or across system-wide PM. > > > > With addition of a new device link flag DL_FLAG_AUTOREMOVE_SUPPLIER [7], > > the device links created between arm-smmu and its clients will be > > automatically purged when arm-smmu driver unbinds from its device. > > > > As not all implementations support clock/power gating, we are checking > > for a valid 'smmu->dev's pm_domain' to conditionally enable the runtime > > power management for such smmu implementations that can support it. > > Otherwise, the clocks are turned to be always on in .probe until .remove. > > With conditional runtime pm now, we avoid touching dev->power.lock > > in fastpaths for smmu implementations that don't need to do anything > > useful with pm_runtime. > > This lets us to use the much-argued pm_runtime_get_sync/put_sync() > > calls in map/unmap callbacks so that the clients do not have to > > worry about handling any of the arm-smmu's power. > > > > This series also adds support for Qcom's arm-smmu-v2 variant that > > has different clocks and power requirements. > > > > Previous version of this patch series is @ [1]. > > > > Build tested the series based on 4.19-rc1. > > I'm going to send my pull request to Joerg early next week (probably > Monday), but I'm not keen to include this whilst it has outstanding comments > from Ulf. Your errata workaround patch is in a similar situation, with > outstanding comments from Robin. I am going to address Ulf's comments for pm_runtime_force_suspend/resume() calls in system sleep callbacks and respin the series unless he has any more comments regarding the early/late nature of suspend/resume. So will it do if I respin the series today after waiting for Ulf? The workaround series is going for a discussion now, so i think it can wait. Thanks Best regards Vivek > > Will > _______________________________________________ > iommu mailing list > iommu@lists.linux-foundation.org > https://lists.linuxfoundation.org/mailman/listinfo/iommu -- QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation