PM: suspend: add timeout in suspend resume

Porting suspend timeout patch from stable6. On ICS qcom platform
we meet an issue (CR) that suspend did not exit and when
phone resume, then late resume work has no chance to excute, then
display could not turn on.

This commit include the follwoing changes from stable-dev6.

(CR): Targa not responsive to idle state - blackscreen

It need freeze the processes before enter suspend low power mode.
If the freeze processes get stuck, the suspend process will be stuck
and never enter suspend again.

Add a 60 seconds timeout in the suspend path, if freeze process get
stuck, it will force a kernel panic instead out of battery finally.

(CR): OMAP4:PM: Dump stack when timeout in suspend_prepare

Dump stack of suspend process when timeout during suspend_prepare()
The current panic thread log do not contains suspend process.
The stack log help to rootcause of hung in freeze process issue.

Change-Id: I232649e38f712ea83a2e77606c6c760cfb3c37b8
Signed-off-by: a2435c <a2435c@motorola.com>
Tested-by: Jira Key <JIRAKEY@motorola.com>
Reviewed-by: Check Patch <CHEKPACH@motorola.com>
Reviewed-by: Klocwork kwcheck <klocwork-kwcheck@sourceforge.mot.com>
Reviewed-by: Guo-Jian Chen <A21757@motorola.com>
Reviewed-by: Srinivas Sripathi <sripathi@motorola.com>
Reviewed-by: Lian-Wei Wang <a22439@motorola.com>
Reviewed-by: Peng Liu <a22543@motorola.com>
Reviewed-by: Jeffrey Carlyle <jeff.carlyle@motorola.com>
Change-Id: I20a1bfc3d1cb6f9355fbcdd68f7b5225fd5e13ab
Reviewed-on: http://gerrit.pcs.mot.com/510622
Reviewed-by: David Ding <dding@motorola.com>
Reviewed-by: Lian-Wei Wang <lian-wei.wang@motorola.com>
Reviewed-by: Guo-Jian Chen <a21757@motorola.com>
Submit-Approved: Jira Key <JIRAKEY@motorola.com>
(cherry picked from commit 2f995d09b45bbcb094ee69290f5509580270987e)
Signed-off-by: Jake Weinstein <xboxlover360@gmail.com>
suspend: fix derp