diff options
author | Kumar Sanghvi <Kumar.Sanghvi@stericsson.com> | 2010-03-25 11:20:07 +0530 |
---|---|---|
committer | John Rigby <john.rigby@linaro.org> | 2010-09-02 22:44:50 -0600 |
commit | e78ef2234f80654e79140083b891d1fc09d22b01 (patch) | |
tree | 13050cc3201fde8b78a81f1e2a53c2e28fdf8b85 /drivers/misc/shrm/shrm_protocol.c | |
parent | eadf42a62ca69e8a3d4fedb5b80e347a946b522a (diff) |
PRCMU, SHRM: Hooking modem reset request from PRCMU with SHRM
Signed-off-by: Kumar Sanghvi <Kumar.Sanghvi@stericsson.com>
Diffstat (limited to 'drivers/misc/shrm/shrm_protocol.c')
-rw-r--r-- | drivers/misc/shrm/shrm_protocol.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/misc/shrm/shrm_protocol.c b/drivers/misc/shrm/shrm_protocol.c index a493216b8fb..03374eb9542 100644 --- a/drivers/misc/shrm/shrm_protocol.c +++ b/drivers/misc/shrm/shrm_protocol.c @@ -56,6 +56,7 @@ static enum hrtimer_restart callback(struct hrtimer *timer) static void shrm_cawake_req_callback(u8); +static void shrm_modem_reset_req_callback(void); void shm_ca_wake_req_tasklet(unsigned long tasklet_data) { @@ -267,12 +268,21 @@ void shm_protocol_init(received_msg_handler common_rx_handler, /* register callback with PRCMU for ca_wake_req */ prcmu_set_callback_cawakereq(&shrm_cawake_req_callback); + /* register callback with PRCMU for ca_wake_req */ + prcmu_set_callback_modem_reset_request(&shrm_modem_reset_req_callback); + /* check if there is any initial pending ca_wake_req */ if (prcmu_is_ca_wake_req_pending()) shrm_cawake_req_callback(1); } +void shrm_modem_reset_req_callback(void) +{ + /* Call the PRCMU reset API */ + prcmu_system_reset(); +} + void shrm_cawake_req_callback(u8 ca_wake_state) { if (ca_wake_state) { |