On Tue, Jan 9, 2018 at 11:01 AM, Vivek Gautam <vivek.gautam@xxxxxxxxxxxxxx> wrote: > The device link allows the pm framework to tie the supplier and > consumer. So, whenever the consumer is powered-on the supplier > is powered-on first. > > There are however cases in which the consumer wants to power-on > the supplier, but not itself. > E.g., A Graphics or multimedia driver wants to power-on the SMMU > to unmap a buffer and finish the TLB operations without powering > on itself. Some of these unmap requests are coming from the > user space when the controller itself is not powered-up, and it > can be huge penalty in terms of power and latency to power-up > the graphics/mm controllers. > There can be an argument that the supplier should handle this case > on its own and there should not be a need for the consumer to > power-on the supplier. But as discussed on the thread [1] about > ARM-SMMU runtime pm, we don't want to introduce runtime pm calls > in atomic path in arm_smmu_unmap. > > [1] https://patchwork.kernel.org/patch/9827825/ > > Signed-off-by: Vivek Gautam <vivek.gautam@xxxxxxxxxxxxxx> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx> Please feel free to route this along with the rest of the series. Thanks! > --- > > * This is v2 of the patch [1]. Adding it to this patch series. > [1] https://patchwork.kernel.org/patch/10102447/ > > drivers/base/power/runtime.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/base/power/runtime.c b/drivers/base/power/runtime.c > index 6e89b51ea3d9..06a2a88fe866 100644 > --- a/drivers/base/power/runtime.c > +++ b/drivers/base/power/runtime.c > @@ -1579,6 +1579,7 @@ void pm_runtime_get_suppliers(struct device *dev) > > device_links_read_unlock(idx); > } > +EXPORT_SYMBOL_GPL(pm_runtime_get_suppliers); > > /** > * pm_runtime_put_suppliers - Drop references to supplier devices. > @@ -1597,6 +1598,7 @@ void pm_runtime_put_suppliers(struct device *dev) > > device_links_read_unlock(idx); > } > +EXPORT_SYMBOL_GPL(pm_runtime_put_suppliers); > > void pm_runtime_new_link(struct device *dev) > { > -- > QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member > of Code Aurora Forum, hosted by The Linux Foundation > -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html