diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c index a3c8270419..5a9caa67b6 100644 --- a/core/hdd/src/wlan_hdd_main.c +++ b/core/hdd/src/wlan_hdd_main.c @@ -13326,18 +13326,18 @@ static int __con_mode_handler(const char *kmessage, hdd_set_conparam(next_mode); - errno = hdd_open_adapters_for_mode(hdd_ctx, next_mode); - if (errno) { - hdd_err("Failed to open adapters"); - goto unlock; - } - errno = hdd_wlan_start_modules(hdd_ctx, false); if (errno) { hdd_err("Start wlan modules failed: %d", errno); goto unlock; } + errno = hdd_open_adapters_for_mode(hdd_ctx, next_mode); + if (errno) { + hdd_err("Failed to open adapters"); + goto unlock; + } + if (next_mode == QDF_GLOBAL_MONITOR_MODE) { struct hdd_adapter *adapter = hdd_get_adapter(hdd_ctx, QDF_MONITOR_MODE);