Re: [PATCH 8/9] PM / Domains: Add support for multi PM domains per device to genpd

From: Jon Hunter
Date: Thu May 24 2018 - 04:43:52 EST



On 24/05/18 08:04, Ulf Hansson wrote:

...

Any reason why we could not add a 'boolean' argument to the API to indicate
whether the new device should be linked? I think that I prefer the API
handles it, but I can see there could be instances where drivers may wish to
handle it themselves.

Coming back to this question. Both Tegra XUSB and Qcom Camera use
case, would benefit from doing the linking themselves, as it needs
different PM domains to be powered on depending on the current use
case - as to avoid wasting power.

However, I can understand that you prefer some simplicity over
optimizations, as you told us. Then, does it mean that you are
insisting on extending the APIs with a boolean for linking, or are you
fine with the driver to call device_link_add()?

I am fine with the driver calling device_link_add(), but I just wonder if we will find a several drivers doing this and then we will end up doing this later anyway.

The current API is called ...

* genpd_dev_pm_attach_by_id() - Attach a device to one of its PM domain.
* @dev: Device to attach.
* @index: The index of the PM domain.

This naming and description is a bit misleading, because really it is not attaching the device that is passed, but creating a new device to attach a PM domain to. So we should consider renaming and changing the description and indicate that users need to link the device.

Finally, how is a PM domain attached via calling genpd_dev_pm_attach_by_id() detached?

Cheers
Jon

--
nvpublic