qcacmn: Register DP, HTC, HAL modules with Runtime PM module

With restructuring in HIF runtime PM module, modules are
required to register with the HIF runtime PM module. Also,
changes are done in functions of allowing and preventing
runtime PM suspend as part of restructuring.
This change registers DP, HTC and HAL internal modules
with runtime PM module and update HIF runtime PM function
calls with the restructured code of HIF runtime PM module.

Change-Id: I8899a1d3b92a90a05c5eaf4df7609f4008f739f8
CRs-Fixed: 3169372
This commit is contained in:
Ananya Gupta
2022-03-22 13:29:10 +05:30
committed by Madan Koyyalamudi
parent 4021d4b379
commit 8565e7029f
15 changed files with 134 additions and 200 deletions

View File

@@ -530,17 +530,6 @@ dp_tx_desc_alloc(struct dp_soc *soc, uint8_t desc_pool_id)
} else {
qdf_spin_unlock_bh(&pool->flow_pool_lock);
}
/*
* If one packet is going to be sent, PM usage count
* needs to be incremented by one to prevent future
* runtime suspend. This should be tied with the
* success of allocating one descriptor. It will be
* decremented after the packet has been sent.
*/
hif_pm_runtime_get_noresume(
soc->hif_handle,
RTPM_ID_DP_TX_DESC_ALLOC_FREE);
} else {
pool->pkt_drop_no_desc++;
qdf_spin_unlock_bh(&pool->flow_pool_lock);
@@ -549,7 +538,6 @@ dp_tx_desc_alloc(struct dp_soc *soc, uint8_t desc_pool_id)
soc->pool_stats.pkt_drop_no_pool++;
}
return tx_desc;
}
@@ -590,7 +578,7 @@ dp_tx_desc_free(struct dp_soc *soc, struct dp_tx_desc_s *tx_desc,
qdf_spin_unlock_bh(&pool->flow_pool_lock);
qdf_print("%s %d pool is freed!!",
__func__, __LINE__);
goto out;
return;
}
break;
@@ -603,14 +591,6 @@ dp_tx_desc_free(struct dp_soc *soc, struct dp_tx_desc_s *tx_desc,
};
qdf_spin_unlock_bh(&pool->flow_pool_lock);
out:
/**
* Decrement PM usage count if the packet has been sent. This
* should be tied with the success of freeing one descriptor.
*/
hif_pm_runtime_put(soc->hif_handle,
RTPM_ID_DP_TX_DESC_ALLOC_FREE);
}
#endif /* QCA_AC_BASED_FLOW_CONTROL */