diff options
author | Arun Murthy <arun.murthy@stericsson.com> | 2012-02-08 17:10:45 +0530 |
---|---|---|
committer | Philippe Langlais <philippe.langlais@stericsson.com> | 2012-05-22 11:07:25 +0200 |
commit | 40a824150688e73e6153cf15ffde55421a801ce8 (patch) | |
tree | 30bf7518ca0d5d3acf154dac4f0e0778b024b212 | |
parent | 18f638e206e2536b835e27fae5024eb13a6f9915 (diff) |
u8500-shrm: reset boot_state on ape initiated modem reset
the variable boot_state is used to monitor the check the access for the GOP
register. Hence on APE initiated modem reset, this flag must be reset as there
can be possibility that very soon after ape initiated modem reset, there is
some 100msec for modem to send to send modem reset ack and in the mean time
if ape tries to access the GOP register then it might end up with system
freeze. Hence reset the flag on ape initiated modem reset.
ST-Ericsson Linux next: NA
ST-Ericsson ID: 413508
ST-Ericsson FOSS-OUT ID: Trivial
Change-Id: I8ce1c2b2df4608dc3cb4b7a0b3c6ed95857ea4a6
Signed-off-by: Arun Murthy <arun.murthy@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/48273
Reviewed-by: QABUILD
Reviewed-by: Srinidhi KASAGAR <srinidhi.kasagar@stericsson.com>
-rw-r--r-- | drivers/modem/shrm/shrm_protocol.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/modem/shrm/shrm_protocol.c b/drivers/modem/shrm/shrm_protocol.c index d9187e36c68..d6d9e605b5c 100644 --- a/drivers/modem/shrm/shrm_protocol.c +++ b/drivers/modem/shrm/shrm_protocol.c @@ -92,6 +92,13 @@ void shm_print_dbg_info_work(struct kthread_work *work) void shm_mod_reset_req_work(struct kthread_work *work) { + unsigned long flags; + + /* update the boot_state */ + spin_lock_irqsave(&boot_lock, flags); + boot_state = BOOT_UNKNOWN; + wmb(); + spin_unlock_irqrestore(&boot_lock, flags); prcmu_modem_reset(); } |