WLAN: Driver now advertises support for multi channel concurrency
Need even changes in kernel also to get the issue fixed
Pull in supplicant changes
(http://hostap.epitest.fi/gitweb/gitweb.cgi?p=hostap.git;
a=commit;h=d76cd41a3a17a8f1d57c99591542668ab29a5851)
Add this to p2p_supplicant.conf file (p2p_no_group_iface=1)
CRs-fixed: 441722
Change-Id: I5a6020a294bfc0141028469e5e62032b9ec9301b
diff --git a/CORE/HDD/src/wlan_hdd_cfg80211.c b/CORE/HDD/src/wlan_hdd_cfg80211.c
index 913242b..144bcdf 100644
--- a/CORE/HDD/src/wlan_hdd_cfg80211.c
+++ b/CORE/HDD/src/wlan_hdd_cfg80211.c
@@ -351,6 +351,40 @@
#endif
};
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0))
+#ifdef WLAN_FEATURE_P2P
+static const struct ieee80211_iface_limit
+wlan_hdd_iface_limit[] = {
+ {
+ /* max=2 is to support JellyBean architecture which has wlan0
+ * and p2p0 interfaces during init. p2p0 is considered station
+ * interface until a group is formed */
+ .max = 2,
+ .types = BIT(NL80211_IFTYPE_STATION),
+ },
+ {
+ .max = 1,
+ .types = BIT(NL80211_IFTYPE_AP),
+ },
+ {
+ .max = 1,
+ .types = BIT(NL80211_IFTYPE_P2P_GO) |
+ BIT(NL80211_IFTYPE_P2P_CLIENT),
+ },
+};
+
+/* By default, only single channel concurrency is allowed */
+static struct ieee80211_iface_combination
+wlan_hdd_iface_combination = {
+ .limits = wlan_hdd_iface_limit,
+ .num_different_channels = 1,
+ .max_interfaces = 2,
+ .n_limits = ARRAY_SIZE(wlan_hdd_iface_limit),
+ .beacon_int_infra_match = false,
+};
+#endif
+#endif
+
static struct cfg80211_ops wlan_hdd_cfg80211_ops;
/* Data rate 100KBPS based on IE Index */
@@ -514,6 +548,22 @@
#endif
| BIT(NL80211_IFTYPE_AP);
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0))
+#ifdef WLAN_FEATURE_P2P
+ if( pCfg->enableMCC )
+ {
+ /* Currently, supports up to two channels */
+ wlan_hdd_iface_combination.num_different_channels = 2;
+
+ if( !pCfg->allowMCCGODiffBI )
+ wlan_hdd_iface_combination.beacon_int_infra_match = true;
+
+ }
+ wiphy->iface_combinations = &wlan_hdd_iface_combination;
+ wiphy->n_iface_combinations = 1;
+#endif
+#endif
+
/* Before registering we need to update the ht capabilitied based
* on ini values*/
if( !pCfg->ShortGI20MhzEnable )