diff options
author | Hauke Mehrtens <hauke@hauke-m.de> | 2013-03-24 01:46:02 +0100 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2013-03-27 13:37:36 -0400 |
commit | 492b71e8d468102372969705b65845f5e57038c5 (patch) | |
tree | 0dc2aa74e894cf810bcbaf1523acc92f652d1270 /drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c | |
parent | 04d2e422df4ae6bc4f0f193be020429000dd7556 (diff) | |
download | linux-492b71e8d468102372969705b65845f5e57038c5.tar.gz linux-492b71e8d468102372969705b65845f5e57038c5.tar.bz2 linux-492b71e8d468102372969705b65845f5e57038c5.zip |
brcmsmac: activate AP support
This activates the AP mode support.
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c')
-rw-r--r-- | drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c b/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c index 13c284e73586..1c4f98686e49 100644 --- a/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c +++ b/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c @@ -357,10 +357,11 @@ brcms_ops_add_interface(struct ieee80211_hw *hw, struct ieee80211_vif *vif) { struct brcms_info *wl = hw->priv; - /* Just STA for now */ - if (vif->type != NL80211_IFTYPE_STATION) { + /* Just STA and AP for now */ + if (vif->type != NL80211_IFTYPE_STATION && + vif->type != NL80211_IFTYPE_AP) { brcms_err(wl->wlc->hw->d11core, - "%s: Attempt to add type %d, only STA for now\n", + "%s: Attempt to add type %d, only STA and AP for now\n", __func__, vif->type); return -EOPNOTSUPP; } @@ -370,6 +371,9 @@ brcms_ops_add_interface(struct ieee80211_hw *hw, struct ieee80211_vif *vif) brcms_c_mute(wl->wlc, false); if (vif->type == NL80211_IFTYPE_STATION) brcms_c_start_station(wl->wlc, vif->addr); + else if (vif->type == NL80211_IFTYPE_AP) + brcms_c_start_ap(wl->wlc, vif->addr, vif->bss_conf.bssid, + vif->bss_conf.ssid, vif->bss_conf.ssid_len); spin_unlock_bh(&wl->lock); return 0; @@ -1051,7 +1055,8 @@ static int ieee_hw_init(struct ieee80211_hw *hw) /* channel change time is dependent on chip and band */ hw->channel_change_time = 7 * 1000; - hw->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION); + hw->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION) | + BIT(NL80211_IFTYPE_AP); /* * deactivate sending probe responses by ucude, because this will |