diff options
author | Sujeev Dias <sdias@codeaurora.org> | 2017-04-20 21:47:50 -0700 |
---|---|---|
committer | Sujeev Dias <sdias@codeaurora.org> | 2017-04-24 19:03:10 -0700 |
commit | c3cb01d6f0cddfd0c3b49a483cf06c37f7e79c87 (patch) | |
tree | 7761b5777a9a9ef332679c6e8a8f14d6362d26dd | |
parent | 048c70075fecb8f92d923fc5595efa00f2a00082 (diff) |
msm: mhi_rmnet: clean channel resources only if allocated
It's possible for MHI host to send sys error notification
signal before sending channel enable notification. Attempt
to cleanup resources only if netdev is allocated.
CRs-Fixed: 2037971
Change-Id: I2bd1f10966a042c6f3372adff89572a5795e7daf
Signed-off-by: Sujeev Dias <sdias@codeaurora.org>
-rw-r--r-- | drivers/net/ethernet/msm/msm_rmnet_mhi.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/net/ethernet/msm/msm_rmnet_mhi.c b/drivers/net/ethernet/msm/msm_rmnet_mhi.c index 015cb99d445b..60b7a64c2edb 100644 --- a/drivers/net/ethernet/msm/msm_rmnet_mhi.c +++ b/drivers/net/ethernet/msm/msm_rmnet_mhi.c @@ -983,14 +983,17 @@ static void rmnet_mhi_cb(struct mhi_cb_info *cb_info) if (cb_info->chan == rmnet_mhi_ptr->rx_channel) { rmnet_log(rmnet_mhi_ptr, MSG_INFO, "Receive MHI_DISABLE notification for rx path\n"); - rmnet_mhi_disable(rmnet_mhi_ptr); + if (rmnet_mhi_ptr->dev) + rmnet_mhi_disable(rmnet_mhi_ptr); } else { rmnet_log(rmnet_mhi_ptr, MSG_INFO, "Receive MHI_DISABLE notification for tx path\n"); rmnet_mhi_ptr->tx_enabled = 0; - rmnet_mhi_internal_clean_unmap_buffers - (rmnet_mhi_ptr->dev, &rmnet_mhi_ptr->tx_buffers, - DMA_TO_DEVICE); + if (rmnet_mhi_ptr->dev) + rmnet_mhi_internal_clean_unmap_buffers( + rmnet_mhi_ptr->dev, + &rmnet_mhi_ptr->tx_buffers, + DMA_TO_DEVICE); } /* Remove all votes disabling low power mode */ |