qcacmn: Do RTPM put during cleanup in case of WMI Tx completion failure

For WMI messages RTPM get is done during HTC message send and the
corresponding put is done in Tx failure or in Tx completion handler
for Tx success case. In the case where Tx completion is not received
for WMI messages RTPM put is not done as part of the cleanup which
results in RTPM Get and PUT call out of sync issues.

To fix the issue as part of HTC cleanup do RTPM put for WMI messages
for which tx completion is not received.

Change-Id: If92f4bd8a6c104d7ccef1e33b31aa765ea6100bd
CRs-Fixed: 3315404
This commit is contained in:
Amit Mehta
2022-10-20 20:40:52 +05:30
committad av Madan Koyyalamudi
förälder 6487fc4371
incheckning ea172ef154
5 ändrade filer med 121 tillägg och 27 borttagningar

Visa fil

@@ -3400,7 +3400,7 @@ static void dp_htt_t2h_msg_handler(void *context, HTC_PACKET *pkt)
* did not process this indication runtime_put happens
* properly in the cleanup path.
*/
if (htc_dec_return_runtime_cnt(soc->htc_soc) >= 0)
if (htc_dec_return_htt_runtime_cnt(soc->htc_soc) >= 0)
htc_pm_runtime_put(soc->htc_soc);
else
soc->stats.htt_ver_req_put_skip++;