Please do report it as an ACPI EC bug. It's popular hardware, and if
nothing else it is important that upstream be aware of the workarounds
people are having to use.
Probably not. It doesn't seem important, it may not be possible, and
even if you could fix the EC driver for your hardware, there's the risk
of breaking other peoples hardware.
The presumption is that you have weird hardware and it genuinely needs a
polling workaround. It's not too bad, now it uses udelay() it should
not impose any wakeups or significant latency, just some extra cpu time
in a busy loop. EC events such as acpi hotkeys are still received as
interrupts (although we then have to query the type of event using a
polled transaction).
I assume you get something like (text not exact):
"EC: started in polling mode"
...
"EC: non-query interrupt received, switching to interrupt mode"
...
"EC: missing confirmations, switching to polling mode"
all during boot.
There's one outstanding issue on a different machine, where the
occasional EC read fails and triggers polling mode sometime _after_
boot. It can be fixed by retrying the transaction
http://bugzilla.kernel.org/show_bug.cgi?id=11896
but I don't really expect your machine has the same problem.
<snip non-acpi problems>
Weird.
Did you try sysrq-W during the hang? That's supposed to dump a list of
blocked tasks to dmesg.
But suspend to ram works? Usually it is the other way round :). If you
haven't already, you might read
Documentation/power/basic-pm-debugging.txt
it suggests some tests to narrow down the problem.
I can't take credit for actual fixes. But I'm very happy to help people
avoid bisecting for known problems. I hope you have time to crack the
unknown ones :).
Alan
--