[PATCH 0/9] various mainly pcf50633 resume improvements
sean at mcneil.com
Sat Jun 14 09:07:36 CEST 2008
Andy Green wrote:
> Somebody in the thread at some point said:
> | I like the improvements, but there appears to be an error somewhere. I'm
> | getting wakeups from the GSM, but nothing from the pcf50633. How are
> | interrupts generated? Are they edge or level triggered? somehow the work
> | queue is hanging.
> It's edge... maybe I know what this is. Previously we gratuitously
> called the workqueue function on resume, which clears the pending IRQ
> status for sure. But here, it isn't necessary: there is always a
> pending real interrupt from PMU. But then my SOP for making a resume is
> hitting the power button.
> It doesn't do any harm if we call the work directly and there is or is
> not any pending interrupts, and the work is protected by mutex, so I
> stuck it back in and updated andy branch with that and a couple of other
> tiny fixes including little checkpatch stuff.
> Despite we made some real progress in fact the whole suspend / resume
> thing remains extremely fragile due to probably just one or two more
> monsters in the deep shadows we never understood yet. And they're the
> kind of monsters that attack if you go hunting for them:
> no_console_suspend on the kernel commandline kills resume the same way
> as mdelay() in glamo suspend stuff, and equally with no real trace of
> how or why it blew chunks.
It works for a few times, then seems to crash. If I comment out the
dev_info ()and msleep() calls in pcf50633_work it seems to be OK. Also,
I still have it resuming as greyscale and the audio pops are still present.
More information about the openmoko-kernel