Hi Will, Robin,
On Thu, Mar 22, 2018 at 7:22 PM Vivek Gautam <vivek.gautam@xxxxxxxxxxxxxx>
wrote:
This series provides the support for turning on the arm-smmu'sAs far as I can see, this version addresses all the earlier comments. Do
clocks/power domains using runtime pm. This is done using the
recently introduced device links patches, which lets the smmu's
runtime to follow the master's runtime pm, so the smmu remains
powered only when the masters use it.
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.
This series also adds support for Qcom's arm-smmu-v2 variant that
has different clocks and power requirements.
Took some reference from the exynos runtime patches [1].
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.
Previous version of this patch series is @ [5].
[v11]
* Some more cleanups for device link. We don't need an explicit
delete for device link from the driver, but just set the flag
DL_FLAG_AUTOREMOVE.
device_link_add() API description says -
"If the DL_FLAG_AUTOREMOVE is set, the link will be removed
automatically when the consumer device driver unbinds."
* Addressed the comments for 'smmu' in arm_smmu_map/unmap().
* Dropped the patch [10] that introduced device_link_del_dev() API.
you think this is something that you could apply?
Best regards,
Tomasz