diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c index 809181cc6cc2..c47152b40e13 100644 --- a/core/hdd/src/wlan_hdd_main.c +++ b/core/hdd/src/wlan_hdd_main.c @@ -14992,7 +14992,7 @@ static int wlan_hdd_state_ctrl_param_open(struct inode *inode, return 0; } -static void hdd_inform_wifi_off(void) +static void __hdd_inform_wifi_off(void) { struct hdd_context *hdd_ctx = cds_get_context(QDF_MODULE_ID_HDD); int ret; @@ -15004,6 +15004,26 @@ static void hdd_inform_wifi_off(void) ucfg_blm_wifi_off(hdd_ctx->pdev); } +static void hdd_inform_wifi_off(void) +{ + int ret; + struct hdd_context *hdd_ctx = cds_get_context(QDF_MODULE_ID_HDD); + struct osif_psoc_sync *psoc_sync; + + if (!hdd_ctx) { + hdd_err("HDD context is Null"); + return; + } + + ret = osif_psoc_sync_op_start(wiphy_dev(hdd_ctx->wiphy), &psoc_sync); + if (ret) + return; + + __hdd_inform_wifi_off(); + + osif_psoc_sync_op_stop(psoc_sync); +} + void hdd_init_start_completion(void) { INIT_COMPLETION(wlan_start_comp);