Dear Sirs,
There is an issue on OMAP4430 on Tablet2.
I add the the wakeup patch in cdc-acm for 3G modem wakeup
diff --git a/drivers/usb/class/cdc-acm.c b/drivers/usb/class/cdc-acm.c
index e411f18..ad73218 100644
--- a/drivers/usb/class/cdc-acm.c
+++ b/drivers/usb/class/cdc-acm.c
@@ -1344,6 +1344,7 @@ skip_countries:
usb_driver_claim_interface(&acm_driver, data_interface, acm);
usb_set_intfdata(data_interface, acm);
+ device_set_wakeup_enable(&usb_dev->dev, 1);
usb_get_intf(control_interface);
tty_register_device(acm_tty_driver, minor, &control_interface->dev);
--
Then I tested the 3G modem on EVM, I got some strange message as below:
59.513305] PM: late suspend of devices complete after 0.549 msecs
[ 59.514221] omap_device: omapdss_dpi: omap_device not built
[ 59.514648] PM: noirq suspend of devices complete after 1.281 msecs
[ 59.514648] Disabling non-boot CPUs ...
[ 59.523895] CPU1: shutdown
[ 59.524963] Successfully put all powerdomains to target state
[ 59.524963] At Resume pending I/O pad: Reg - 0x4A1001E0, CONTROL_PADCONF_WAKEUPEVENT_2[5]
[ 59.524963] At Resume pending I/O pad: Reg - 0x4A1001E0, CONTROL_PADCONF_WAKEUPEVENT_2[6]
[ 59.524963] Suspended for 2.656 seconds
[ 59.525268] Enabling non-boot CPUs ...
[ 59.542449] CPU1: Booted secondary processor
[ 59.542510] CPU1: Unknown IPI message 0x1
[ 59.543060] CPU1 is up
[ 59.543670] omap_device: omapdss_dpi: omap_device not built
[ 59.543701] dpm_run_callback(): _od_resume_noirq+0x0/0x84 returns -19
[ 59.543731] PM: Device omapdss_dpi failed to resume noirq: error -19
[ 59.544372] PM: noirq resume of devices complete after 1.281 msecs
[ 59.545318] PM: early resume of devices complete after 0.457 msecs
[ 59.558410] dmm dmm: omap_dmm_resume: omap_dmm_resume:PAT entries restored
[ 59.558624] PVR: PVRSRVDriverResume(pDevice=d6cf0c00)
[ 59.558624] PVR: SysSystemPostPowerState: Entering state D0
[ 59.558654] PVR: EnableSystemClocks: Enabling System Clocks
[ 59.558685] PVR: Installing device LISR SGX ISR on IRQ 53 with cookie d6096680
[ 59.559051] wakeup wake lock: musb_autosuspend_wake_lock
[ 59.916961] usb 1-1.2: reset high-speed USB device number 4 using ehci-omap
[ 60.323730] duty_cycle_apply_cooling: not throttling
[ 60.409057] usb 1-1.2.1: reset high-speed USB device number 5 using ehci-omap
[ 60.673431] @@@@ acm_reset_resume
[ 60.673431] @@@@ acm_reset_resume
[ 60.674163] @@@@ acm_resume
[ 60.674865] PM: resume of devices complete after 1129.547 msecs
[ 60.677398] @@@@ acm_port_shutdown
[ 60.909423] Restarting tasks ...
[ 60.919067] done.
[ 60.921600] suspend: exit suspend, ret = 0 (2014-01-08 06:38:18.695278379 UTC)
[ 60.931884] PM: Syncing filesystems ... done.
[ 60.938629] Freezing user space processes ... (elapsed 0.02 seconds) done.
[ 60.967529] Freezing remaining freezable tasks ... (elapsed 0.02 seconds) done.
[ 61.003173] Suspending console(s) (use no_console_suspend to debug)
I think the reset procedure should not happen in suspend/resume, and still has no clue on this.
Any suggestions?
Thank you.