> > Peter Chen <peter.chen@xxxxxxx> writes: > > Introduce runtime PM and wakeup interrupt handler for cdns3, the > > runtime PM is default off since other cdns3 has not implemented glue > > layer support for runtime PM. > > it should be left disabled by default even after every glue implements it. > Enabling runtime PM is a policy decision better left to userspace, IMO. > > > When the controller is in low power mode, the lpm flag will be set. > > The interrupt triggered later than lpm flag is set considers as wakeup > > interrupt and handled at cdns_drd_irq. Once the wakeup > > This sentence doesn't parse very well. Do you want to rephrase it? > > > occurs, it first disables interrupt to avoid later interrupt > > occurrence since the controller is in low power mode at that time, and > > access registers may be invalid at that time. At wakeup handler, it > > will call pm_runtime_get to wakeup controller, and at runtime resume > > handler, it will enable interrupt again. > > Then what? Are you going to, somehow, process pending interrupts? At what > point? > > > The API platform_suspend is introduced for glue layer to implement > > platform specific PM sequence. > > I really think that's unnecessary. Why can't we rely on parent->child > relationship for this? > Hi Felipe, This is the old version patch; I replied your questions at your reply for new version at last Friday, thanks. Peter