qcacld-3.0: stop the bus bw timer during the driver unload

When the driver unload is triggered, the device could be in the
runtime suspend state, so the 1st thing driver does to do runtime
resume, During this runtime resume the bus bw timer could be started
which in some race conditions is not getting stopped.

Stop the bus bandwidth timer after the wlan chip is runtime resume.

Change-Id: Ie29f9b4d44cea5c5624020aa3b6b3f08489860d3
CRs-Fixed: 2672120
This commit is contained in:
Arun Kumar Khandavalli
2020-04-27 21:48:46 +05:30
committed by nshrivas
parent 758eff24ba
commit 8d1af37af9

View File

@@ -15530,8 +15530,14 @@ static void hdd_driver_unload(void)
cds_set_driver_loaded(false); cds_set_driver_loaded(false);
cds_set_unload_in_progress(true); cds_set_unload_in_progress(true);
if (hdd_ctx) if (hdd_ctx) {
hdd_psoc_idle_timer_stop(hdd_ctx); hdd_psoc_idle_timer_stop(hdd_ctx);
/*
* Runtime PM sync resume may have started the bus bandwidth
* periodic work hence stop it.
*/
hdd_bus_bw_compute_timer_stop(hdd_ctx);
}
/* trigger SoC remove */ /* trigger SoC remove */
wlan_hdd_unregister_driver(); wlan_hdd_unregister_driver();