Re: [PATCH 3/3] soc: ti: Add ti_sci_pm_domains driver

From: Dave Gerlach
Date: Thu Sep 08 2016 - 14:05:09 EST


Hi,
On 09/08/2016 12:38 PM, Kevin Hilman wrote:
Ulf Hansson <ulf.hansson@xxxxxxxxxx> writes:

[...]


One more idea...

Since you don't really have a domain (a group of devices), what you
really have is each device having an independent power switch, so as Ulf
suggested, what you really need is for all the devices to share the same
set of runtime PM callbacks that call SCI. The only difference is the
unique ID.

Rather than using all of genpd, you could also just use a pm_domain
which is what genpd is built on top of (and also omap_device, which
you're probably familiar with also.)

Even if this would work as well, the downside would be that you need
to re-invent the parts related to the DT parsing, the probing/removal
and attaching/detaching of the device to the PM domain.

You probably don't want to go there... :-)

All you'd need to read from DT would be the device-specific ID for
TI-SCI, and that could be done at bind time with a notifier. The, in
that same notifier, if a TI-SCI ID exists, it would get added to the
pm_domain.

Anyways, your original proposal is much preferred if it can work. I'm
just throwing out another option because I really don't like one genpd
per device.

Kevin


I am first trying to leverage the dev_attach/detach and start/stop callbacks that Ulf suggested without creating a single genpd per device and it looks like it will work for us. I appreciate the alternative suggestions but I agree we'd like to leverage as much of the existing genpd framework as we can and avoid going down the omap_device style implementation path.

Regards,
Dave