summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBala Venkatesh <bjavvaji@codeaurora.org>2018-08-23 11:34:35 +0530
committernshrivas <nshrivas@codeaurora.org>2018-08-24 06:20:14 -0700
commite36d2d8f8f403dec4bb4f9c8a98825eba6f347db (patch)
treef416e0df4dfed6ded3f7da468064809928e9309e
parentbbda672cd793003b215d87d5f2b6da7ecc6c197e (diff)
qcacld-3.0: Do not Teardown tdls links if new interface is p2p device
As part of any change interface TDLS links are toredown and tdls state set to disabled in FW. The assumption here is before adding new interface disable TDLS mode as TDLS is not supported in concurrency. Due to recent changes in framework, Driver may receive the change interface to P2P Device mode after STA connection then teardown is not expected as STA + P2P Device modes does not comes under concurrent operation. Check for current and new interface types before disabling TDLS. Change-Id: I26cfab077b3f83c64687479fba5c7a7c01491a52 CRs-Fixed: 2301650
-rw-r--r--core/hdd/src/wlan_hdd_cfg80211.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/core/hdd/src/wlan_hdd_cfg80211.c b/core/hdd/src/wlan_hdd_cfg80211.c
index 0e1c618f9884..66a3dfabb83c 100644
--- a/core/hdd/src/wlan_hdd_cfg80211.c
+++ b/core/hdd/src/wlan_hdd_cfg80211.c
@@ -14724,7 +14724,11 @@ static int __wlan_hdd_cfg80211_change_iface(struct wiphy *wiphy,
/* Reset the current device mode bit mask */
cds_clear_concurrency_mode(pAdapter->device_mode);
- hdd_update_tdls_ct_and_teardown_links(pHddCtx);
+ if (!(pAdapter->device_mode == QDF_P2P_DEVICE_MODE &&
+ type == NL80211_IFTYPE_STATION)) {
+ hdd_debug("Teardown tdls links and disable tdls in FW as new interface is coming up");
+ hdd_update_tdls_ct_and_teardown_links(pHddCtx);
+ }
if ((pAdapter->device_mode == QDF_STA_MODE) ||
(pAdapter->device_mode == QDF_P2P_CLIENT_MODE) ||
(pAdapter->device_mode == QDF_P2P_DEVICE_MODE) ||