Hi Kevin, Benoit, Paul, On Fri, Jun 1, 2012 at 2:16 AM, Arnd Bergmann <arnd@xxxxxxxx> wrote: > On Thursday 31 May 2012, ABRAHAM, KISHON VIJAY wrote: >> > I would mark the multiplexed device compatible with "simple-bus", which >> > results in the child devices automatically getting added. >> >> hmm.. ocp2scp has a sysconfig register and it also has a module mode >> by which it can be enabled/disabled. I was making use of pm_runtime >> API's to control these registers (Apart from creating child devices, >> the driver also has a call to pm_runtime_enable). > > I see. > >> I'm not sure if with >> "simple-bus" we'll be able to do those. I have to check on that. > > How about making it compatible with both "simple-bus" and something > that handles the pm_runtime requirements? > > I don't understand enough of what needs to be done for pm_runtime > across a lot of devices, but I'd hope that it should be possible > to do that in a generic way based on the device definition. Is there already exists a generic way for handling pm_runtime requirements (as simple as doing a pm_runtime_enable on a device). So the actual problem is we have ocp2scp as parent and usb2phy and usb3phy as the child device. ocp2scp has the sysconfig register and it can be controlled using module mode bit (both of this can be controlled by pm_runtime). Whenever usb controller(dwc3/musb) wants to enable a phy, it calls an exported API in usb2/usb3 phy to enable it. These API's have pm_runtime_get_sync on usb2/usb3 device which in-turn calls pm_runtime_get_sync of ocp2scp because of parent->child relationship (For this both usb2/usb3 phy and ocp2scp devices should have called pm_runtime_enable). All I'm trying is to find a place to have pm_runtime_enable for ocp2scp. Thanks Kishon -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html