summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSujeev Dias <sdias@codeaurora.org>2016-10-11 17:58:49 -0700
committerSujeev Dias <sdias@codeaurora.org>2017-03-03 13:41:21 -0800
commit25a3b9b47dc9c74e938dedcbc5d210f58274060a (patch)
treeb928b3658fe1100e2ddabff7e8afe23e88da9c52
parent63b9fc1f66a76a48ecaa7b03d7f6c9baab345f9d (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.c3
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++;