On Tue, Jul 12, 2011 at 11:12:57AM +0100, Lorenzo Pieralisi wrote:
Thank you very much Russell for this recap.
On Mon, Jul 11, 2011 at 07:40:10PM +0100, Russell King - ARM Linux wrote:
On Mon, Jul 11, 2011 at 03:00:47PM +0100, Lorenzo Pieralisi wrote:
Well, short answer is no. On SMP we do need to save CPU registers but if just one single cpu is shutdown L2 is still on. cpu_suspend saves regs on the stack that has to be cleaned from L2 before shutting a CPU down which make things more complicated than they should.
Hang on. Please explain something to me here. You've mentioned a few times that cpu_suspend() can't be used because of the L2 cache. Why is this the case?
OMAP appears to have code in its sleep path - which has been converted to cpu_suspend() support - to deal with the L2 issues.
OMAP4, it is SMP configs I am talking about.
Seriously, that's not something which really concerns me at present because suspend/resume in any form is not supported there in any form in mainline.
All my comments are based on the mainline kernel. That's what I work with. Everything elsewhere is not my concern.
So, let me say again. OMAP suspend/resume support _in_ _mainline_ will be converted at the next merge window. As that's only OMAP3 _in_ _mainline_ which has the need for saving state etc, that's the only OMAP code I have access to, and therefore that's the only thing which I've been able to fix.
OMAP4 suspend/resume support doesn't exist in mainline and therefore doesn't exist for me.