Re: [PATCH] RTC: Add an alarm disable quirk

From: John Stultz
Date: Mon Jul 22 2013 - 16:59:11 EST


On 07/19/2013 08:13 AM, Borislav Petkov wrote:
On Fri, Jul 19, 2013 at 04:26:28PM +0200, Borislav Petkov wrote:
On Fri, Jul 19, 2013 at 12:53:49AM +0200, Borislav Petkov wrote:
I assumed it was some sort of BIOS issue where any modification of the
RTC_AIE bit caused the alarm irq line to be left high(or something
like that) that triggered the immediate power-on on shutdown. But I've
not been able to dig down on this.
Ha, this actually fits like an ass on a bucket (don't ask - German
proverb :-)).

If what you're saying is actually the case, then this explains why not
writing to 0xb doesn't cause the alarm irq to fire.

Btw, in the trace above we do the disabling twice. Once from
rtc_timer_remove() and then again from rtc_timer_do_work().

So, if we disable it once and we touch RTC_AIE again causing the second
time to rearm the alarm irq, this would explain the issue. Which reminds
me:

Maybe we should read out the alarm interrupt first and disable it only
if it is enabled - that would save us the modification of RTC_AIE. Cool,
I'll try that tomorrow.
Well, the below seems to do the trick. But since I don't trust the BIOS
in any way, I'll run it a couple more days here. Btw, I think we should
commit this regardless, as it saves us unneeded writes:
Nope, this doesn't help - box just rebooted. :(

So I'm back to the DMI quirk patch...

So did this work some of the time, but not all? Or was the behavior totally unchanged with this?

thanks
-john
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/