qcacld-3.0: Handle epping disable and epping close during rmmod

In hdd_soc_remove, epping_disable/epping_close are called after
hif context is cleared by hdd_wlan_stop_modules.
hif context is needed to cleanup epping adapter and since hif
context is not available during epping disable/close, epping
adapter cleanup fails.

Handle epping_disable & epping_close by moving them to
hdd_wlan_stop_modules before hif is closed

Change-Id: I43d516006c413daa936d2401484cf3d745a94c74
CRs-Fixed: 2419665
This commit is contained in:
Visweswara Tanuku
2019-03-20 13:00:30 +05:30
committed by nshrivas
vanhempi 3bd54f500b
commit c949ad28ab
2 muutettua tiedostoa jossa 5 lisäystä ja 2 poistoa

Näytä tiedosto

@@ -576,8 +576,6 @@ static void __hdd_soc_remove(struct device *dev)
if (hdd_get_conparam() == QDF_GLOBAL_EPPING_MODE) { if (hdd_get_conparam() == QDF_GLOBAL_EPPING_MODE) {
hdd_wlan_stop_modules(hdd_ctx, false); hdd_wlan_stop_modules(hdd_ctx, false);
epping_disable();
epping_close();
} else { } else {
hdd_wlan_exit(hdd_ctx); hdd_wlan_exit(hdd_ctx);
} }

Näytä tiedosto

@@ -11370,6 +11370,11 @@ int hdd_wlan_stop_modules(struct hdd_context *hdd_ctx, bool ftm_mode)
hdd_ctx->target_hw_name = NULL; hdd_ctx->target_hw_name = NULL;
} }
if (hdd_get_conparam() != QDF_GLOBAL_EPPING_MODE) {
epping_disable();
epping_close();
}
hdd_hif_close(hdd_ctx, hif_ctx); hdd_hif_close(hdd_ctx, hif_ctx);
ol_cds_free(); ol_cds_free();