diff options
author | Sujeev Dias <sdias@codeaurora.org> | 2016-10-11 17:58:49 -0700 |
---|---|---|
committer | Sujeev Dias <sdias@codeaurora.org> | 2017-03-03 13:41:21 -0800 |
commit | 25a3b9b47dc9c74e938dedcbc5d210f58274060a (patch) | |
tree | b928b3658fe1100e2ddabff7e8afe23e88da9c52 | |
parent | 63b9fc1f66a76a48ecaa7b03d7f6c9baab345f9d (diff) |
msm: mhi_rmnet: Keep wake when processing transfer
Disable MHI from going into low power mode when
processing inbound transfers.
CRs-Fixed: 1081654
Change-Id: If8af0805501901a15981bbc6db0c92d2e040eb78
Signed-off-by: Sujeev Dias <sdias@codeaurora.org>
-rw-r--r-- | drivers/net/ethernet/msm/msm_rmnet_mhi.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ethernet/msm/msm_rmnet_mhi.c b/drivers/net/ethernet/msm/msm_rmnet_mhi.c index f7564d9eca3f..9117ea7d08c0 100644 --- a/drivers/net/ethernet/msm/msm_rmnet_mhi.c +++ b/drivers/net/ethernet/msm/msm_rmnet_mhi.c @@ -353,6 +353,7 @@ static int rmnet_mhi_poll(struct napi_struct *napi, int budget) if (atomic_read(&rmnet_mhi_ptr->irq_masked_cntr)) { atomic_dec(&rmnet_mhi_ptr->irq_masked_cntr); mhi_unmask_irq(rmnet_mhi_ptr->rx_client_handle); + mhi_set_lpm(rmnet_mhi_ptr->rx_client_handle, true); } } else { if (received_packets == budget) @@ -493,6 +494,7 @@ static void rmnet_mhi_rx_cb(struct mhi_result *result) if (napi_schedule_prep(&(rmnet_mhi_ptr->napi))) { mhi_mask_irq(rmnet_mhi_ptr->rx_client_handle); atomic_inc(&rmnet_mhi_ptr->irq_masked_cntr); + mhi_set_lpm(rmnet_mhi_ptr->rx_client_handle, false); __napi_schedule(&(rmnet_mhi_ptr->napi)); } else { rmnet_mhi_ptr->debug.rx_interrupts_in_masked_irq++; @@ -525,6 +527,7 @@ static int rmnet_mhi_open(struct net_device *dev) if (napi_schedule_prep(&(rmnet_mhi_ptr->napi))) { mhi_mask_irq(rmnet_mhi_ptr->rx_client_handle); atomic_inc(&rmnet_mhi_ptr->irq_masked_cntr); + mhi_set_lpm(rmnet_mhi_ptr->rx_client_handle, false); __napi_schedule(&(rmnet_mhi_ptr->napi)); } else { rmnet_mhi_ptr->debug.rx_interrupts_in_masked_irq++; |