Thread (113 messages) 113 messages, 7 authors, 2014-10-30

[PATCH v2 00/20] rtc: omap: fixes and power-off feature

From: johan@kernel.org (Johan Hovold)
Date: 2014-10-24 19:58:37
Also in: linux-devicetree, linux-omap, lkml
Subsystem: real time clock (rtc) subsystem, the rest · Maintainers: Alexandre Belloni, Linus Torvalds

On Fri, Oct 24, 2014 at 02:44:42PM -0500, Felipe Balbi wrote:
On Fri, Oct 24, 2014 at 09:36:55PM +0200, Johan Hovold wrote:
quoted
On Fri, Oct 24, 2014 at 02:29:48PM -0500, Felipe Balbi wrote:
quoted
Hi,

On Fri, Oct 24, 2014 at 02:25:40PM -0500, Felipe Balbi wrote:
quoted
quoted
quoted
with this I always get to "Power off failed -- system halted". If I
switch to v3.18-rc1 vanilla, then it works. So it's definitely caused by
your rtc-only patches.
That's expected (see below). It works with v3.18-rc1 vanilla because
machine_halt is called instead of machine_power_off as there is no
registered power-off handler.
yeah, that much I figured :-)
quoted
quoted
ok, so it seems like it takes more than 1 second for things to
propagate. If I increase that mdelay() to 3000, then everything works
fine on my end. I think we should get RMK's input on this 3000ms delay
to machine_power_off(). Should it be generic, or should we add it to our
rtc pm_power_off implementation ?
As I wrote above, we still need a 2-second mdelay in rtc-omap, which I
intend to add to the pmic_power_en patch.
oh, alright then. If you can Cc me, I'll make sure to test that too ;-)
I will. :) Just wanted to see whether Andrew preferred I resend the
whole series or just that one patch first.

The diff is minimal:
diff --git a/drivers/rtc/rtc-omap.c b/drivers/rtc/rtc-omap.c
index e74750f00b18..e4f97ad9eb21 100644
--- a/drivers/rtc/rtc-omap.c
+++ b/drivers/rtc/rtc-omap.c
@@ -423,6 +423,8 @@ static void omap_rtc_power_off(void)
        val = rtc_read(rtc, OMAP_RTC_INTERRUPTS_REG);
        rtc_writel(rtc, OMAP_RTC_INTERRUPTS_REG,
                        val | OMAP_RTC_INTERRUPTS_IT_ALARM2);
+
+       mdelay(2000);
 }
quoted
The one-second delay is there in machine_power_off to catch most cases
which wouldn't take nearly as long as rtc-omap and hence wouldn't be
adding an explicit delay in the driver power-off handler.
alright.
I'll call it a day now. Will keep you posted.

Thanks,
Johan
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help