summaryrefslogtreecommitdiff
path: root/drivers/net
diff options
context:
space:
mode:
authorLior David <liord@codeaurora.org>2016-03-31 13:07:22 +0300
committerJeevan Shriram <jshriram@codeaurora.org>2016-04-05 11:36:57 -0700
commitefacf5d031b7e2a595db2891acf3b78cc9049bed (patch)
tree36d2db2e6fadecd0c11d7780ef97f7a779910e28 /drivers/net
parent6516fec06156056fc62820f693ca7038b08bbe01 (diff)
cfg80211: basic support for PBSS network type
PBSS (Personal Basic Service Set) is a new BSS type for DMG networks. It is similar to infrastructure BSS, having an AP-like entity called PCP (PBSS Control Point), but it has few differences. PBSS support is mandatory for 11ad devices. Add support for PBSS by introducing a new PBSS flag attribute. The PBSS flag is used in the START_AP command to request starting a PCP instead of an AP, and in the CONNECT command to request connecting to a PCP instead of an AP. Change-Id: I9f26a8ff8433268240eb9443befadc0d279a0293 [liord@codeaurora.org: added missing attributes to nl80211.h that were added in upstream kernel before the PBSS attribute, in order to keep the ABI compatible] Signed-off-by: Lior David <liord@codeaurora.org> Signed-off-by: Johannes Berg <johannes.berg@intel.com> Git-commit: 00807f28573a101dc2833f0075e806b9874f306c Git-repo: https://github.com/kvalo/ath.git CRs-Fixed: 982931 Signed-off-by: Maya Erez <merez@codeaurora.org>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/wireless/ath/wil6210/cfg80211.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/wil6210/cfg80211.c b/drivers/net/wireless/ath/wil6210/cfg80211.c
index 0f3e1517c079..0c25e8beec3c 100644
--- a/drivers/net/wireless/ath/wil6210/cfg80211.c
+++ b/drivers/net/wireless/ath/wil6210/cfg80211.c
@@ -434,6 +434,11 @@ static int wil_cfg80211_connect(struct wiphy *wiphy,
if (sme->privacy && !rsn_eid)
wil_info(wil, "WSC connection\n");
+ if (sme->pbss) {
+ wil_err(wil, "connect - PBSS not yet supported\n");
+ return -EOPNOTSUPP;
+ }
+
bss = cfg80211_get_bss(wiphy, sme->channel, sme->bssid,
sme->ssid, sme->ssid_len,
IEEE80211_BSS_TYPE_ESS, IEEE80211_PRIVACY_ANY);
@@ -1033,6 +1038,11 @@ static int wil_cfg80211_start_ap(struct wiphy *wiphy,
return -EINVAL;
}
+ if (info->pbss) {
+ wil_err(wil, "AP: PBSS not yet supported\n");
+ return -EOPNOTSUPP;
+ }
+
switch (info->hidden_ssid) {
case NL80211_HIDDEN_SSID_NOT_IN_USE:
hidden_ssid = WMI_HIDDEN_SSID_DISABLED;