Hi Rafael, On Thu, Oct 29, 2020 at 06:10:59PM +0100, Rafael J. Wysocki wrote: > Well, this basically implements a wrapper PM domain that is somewhat > more generic, as a concept, then software nodes PM. > > At least it is not specific to software nodes, so I'd prefer it to be > defined generically. I don't think we should generalize it like that. I do not think the power domains should have any links between each other at the general level (just like we probable should not link fwnodes together anymore like we do now with the "secondary" fwnode). That is why I have confined this to software nodes only for now. I think ideally devices could belong to multiple power domains. That would be the general solution. I did not think that trying to figure out how to do that would be reasonable as the first approach (maybe I should have done exactly that?). But would it be acceptable to allow devices to belong to multiple power domains? > Moreover, IIUC, this breaks if the "primary" PM domain callbacks try > to get to the original PM domain via the dev->pm_domain pointer, which > the genpd callbacks do. Ouch, that is true. > Do we want to wrap the ACPI PM domain only, by any chance? If so, it > may be more straightforward to invoke swnode callbacks directly from > there, if any. The software node can still be the only "primary" fwnode. I don't think we should limit this to only platforms (and kernels) that support ACPI. thanks, -- heikki