Thread (135 messages) 135 messages, 11 authors, 2017-11-22

Re: [PATCH 0/12] PM / sleep: Driver flags for system suspend/resume

From: Ulf Hansson <hidden>
Date: 2017-10-19 08:33:52
Also in: linux-acpi, linux-i2c, linux-pci, lkml

On 18 October 2017 at 23:48, Rafael J. Wysocki [off-list ref] wrote:
On Wednesday, October 18, 2017 9:45:11 PM CEST Grygorii Strashko wrote:
quoted
On 10/18/2017 09:11 AM, Ulf Hansson wrote:
[...]
quoted
quoted
quoted
quoted
That's the point. We know pm_runtime_force_* works nicely for the
trivial middle-layer cases.
In which cases the middle-layer callbacks don't exist, so it's just like
reusing driver callbacks directly. :-)
I'd like to ask you clarify one point here and provide some info which I hope can be useful -
what's exactly means  "trivial middle-layer cases"?

Is it when systems use "drivers/base/power/clock_ops.c - Generic clock
manipulation PM callbacks" as dev_pm_domain (arm davinci/keystone), or OMAP
device framework struct dev_pm_domain omap_device_pm_domain
(arm/mach-omap2/omap_device.c) or static const struct dev_pm_ops
tegra_aconnect_pm_ops?

if yes all above have PM runtime callbacks.
Trivial ones don't actually do anything meaningful in their PM callbacks.

Things like the platform bus type, spi bus type, i2c bus type and similar.

If the middle-layer callbacks manipulate devices in a significant way, then
they aren't trivial.
I fully agree with Rafael's description above, but let me also clarify
one more thing.

We have also been discussing PM domains as being trivial and
non-trivial. In some statements I even think the PM domain has been a
part the middle-layer terminology, which may have been a bit
confusing.

In this regards as we consider genpd being a trivial PM domain, those
examples your bring up above is too me also examples of trivial PM
domains. Especially because they don't deal with wakeups, as that is
taken care of by the drivers, right!?

Kind regards
Uffe
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help