summaryrefslogtreecommitdiff
path: root/drivers/modem/shrm/shrm_protocol.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/modem/shrm/shrm_protocol.c')
-rw-r--r--drivers/modem/shrm/shrm_protocol.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/modem/shrm/shrm_protocol.c b/drivers/modem/shrm/shrm_protocol.c
index 137b70e9cbf..50443e4803a 100644
--- a/drivers/modem/shrm/shrm_protocol.c
+++ b/drivers/modem/shrm/shrm_protocol.c
@@ -18,6 +18,7 @@
#include <linux/modem/modem_client.h>
#include <linux/mfd/dbx500-prcmu.h>
#include <mach/reboot_reasons.h>
+#include <mach/suspend.h>
#define L2_HEADER_ISI 0x0
#define L2_HEADER_RPC 0x1
@@ -449,6 +450,7 @@ void shm_ca_sleep_req_work(struct work_struct *work)
hrtimer_start(&timer, ktime_set(0, 10*NSEC_PER_MSEC),
HRTIMER_MODE_REL);
+ suspend_unblock_sleep();
atomic_dec(&ac_sleep_disable_count);
}
@@ -556,6 +558,7 @@ static irqreturn_t shrm_prcmu_irq_handler(int irq, void *data)
switch (irq) {
case IRQ_PRCMU_CA_WAKE:
+ suspend_block_sleep();
if (shrm->msr_flag)
atomic_set(&ac_sleep_disable_count, 0);
atomic_inc(&ac_sleep_disable_count);