debug needed: twl4030 RTC wakeups: repeated attempts fail on Beagle

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

In doing some automated testing of suspend/resume I noticed that
repeated attempts to suspend and resume via RTC wakeup fail on
3530/Beagle and 3730/Beagle-xM, but work fine on 3430/n900, 3530/Overo,
3730/OveroSTORM and 4430/Panda.

When RTC wakeup fails, a UART wakeup will work, and in the logs, you'll
see this:

[  316.036132] twl: i2c_read failed to transfer all messages
[  316.036163] twl4030: I2C error -13 reading PIH ISR

My guess about what might be happening is that very late in the suspend
process (during the noirq hooks), a PMIC interrupt fires, but by this
time the I2C driver is runtime suspended (and clock gated.)  Since
runtime PM is disabled at this point, I2C reads fail, so the twl4030 IRQ
driver cannot talk over I2C to the PMIC to determine the interrupt
source.

The real mystery is why this happens on Beagle and Beagle-xM, but none
of the other OMAP3 boards (at least the ones I have.)

Reproducing is easy.  Simply run rtcwake in a loop:

  # while true; do rtcwake -m mem -s 1; done

In my tests, this happens using omap2plus_defconfig (+ initramfs) on
v3.6-rc1, v3.5, v3.4, v3.3 but seems to work fine on v3.2.

I'm going on vacation for a few weeks, so any help debugging this would
be greatly appreciated. 

Thanks,

Kevin
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux