wlan: Fix GuestAP start up failure when PrimaryAP specifies [HT40]
qcacld-2.0 to prima propagation
This is caused by changing con_mode to STA_MODE regardless Guest AP
status the fix is to set con_mode to STA only when non-SAP
concurrency mode exists
Change-Id: I35dfc15fce0c835ac8bb8e38e31c53011a64d83d
CRs-fixed: 644492
diff --git a/CORE/HDD/src/wlan_hdd_cfg80211.c b/CORE/HDD/src/wlan_hdd_cfg80211.c
index 529c5b1..ff2f0b5 100644
--- a/CORE/HDD/src/wlan_hdd_cfg80211.c
+++ b/CORE/HDD/src/wlan_hdd_cfg80211.c
@@ -97,6 +97,7 @@
#include "wlan_hdd_dev_pwr.h"
#include "qwlan_version.h"
#include "wlan_logging_sock_svc.h"
+#include "wlan_hdd_misc.h"
#define g_mode_rates_size (12)
@@ -10586,7 +10587,10 @@
pAdapter->device_mode = (type == NL80211_IFTYPE_STATION) ?
WLAN_HDD_INFRA_STATION: WLAN_HDD_P2P_CLIENT;
}
- hdd_set_conparam(0);
+
+ /* set con_mode to STA only when no SAP concurrency mode */
+ if (!(hdd_get_concurrency_mode() & (VOS_SAP | VOS_P2P_GO)))
+ hdd_set_conparam(0);
pHddCtx->change_iface = type;
memset(&pAdapter->sessionCtx, 0, sizeof(pAdapter->sessionCtx));
hdd_set_station_ops( pAdapter->dev );
diff --git a/CORE/HDD/src/wlan_hdd_main.c b/CORE/HDD/src/wlan_hdd_main.c
index 6f2ae14..01c017a 100644
--- a/CORE/HDD/src/wlan_hdd_main.c
+++ b/CORE/HDD/src/wlan_hdd_main.c
@@ -8222,7 +8222,9 @@
hdd_cleanup_actionframe(pHddCtx, pAdapter);
hdd_unregister_hostapd(pAdapter, rtnl_held);
- hdd_set_conparam( 0 );
+ /* set con_mode to STA only when no SAP concurrency mode */
+ if (!(hdd_get_concurrency_mode() & (VOS_SAP | VOS_P2P_GO)))
+ hdd_set_conparam(0);
break;
}