On Wed, Sep 09, 2009 at 01:16:07PM +0200, Kenneth Johansson wrote: > On Tue, 2009-09-08 at 13:48 +0800, Li Tao-B22598 wrote: > > Dear all, > > > > I have a problem in MPC5121 sleep mode. As you know MPC5121 use e300c4 > > core. When I make the e300c4 core into sleep mode, it will return to > > full power mode when the“decrementer interrupt” occurred. > > > > But in the e300 core reference manual said that the “decrementer > > interrupt”have no effect when e300 core in sleep mode, because the > > time > > base and decrementer are disabled while the core is in sleep mode. > > Can anybody explain about this procedure ?
I'm not specifically familiar with MPC5121, but I'll answer from the perspective of MPC83xx which has a similar core: The decrementer stops ticking when the core goes to sleep. However, if a decrementer was already pending (but masked with MSR[EE]) before you enter sleep mode, it will cause a wakeup. To avoid this, the decrementer is set to a very large value prior to and after disabling interrupts. See generic_suspend_disable_irqs() in arch/powerpc/kernel/time.c. Is this not happening for you? Which kernel version are you using, and what mechanism are you using to go to sleep? > I'm a bit irritated that it's not as the "solution" can mean hardware > changes an thus it's potentially expensive. What sort of hardware changes? -Scott _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev