summaryrefslogtreecommitdiffstats
path: root/net/mac80211/iface.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/mac80211/iface.c')
-rw-r--r--net/mac80211/iface.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
index efb433d3dc25..56a38a3088d4 100644
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
@@ -254,7 +254,11 @@ static int ieee80211_do_open(struct net_device *dev, bool coming_up)
254 254
255 switch (sdata->vif.type) { 255 switch (sdata->vif.type) {
256 case NL80211_IFTYPE_AP_VLAN: 256 case NL80211_IFTYPE_AP_VLAN:
257 /* no need to tell driver */ 257 /* no need to tell driver, but set carrier */
258 if (rtnl_dereference(sdata->bss->beacon))
259 netif_carrier_on(dev);
260 else
261 netif_carrier_off(dev);
258 break; 262 break;
259 case NL80211_IFTYPE_MONITOR: 263 case NL80211_IFTYPE_MONITOR:
260 if (sdata->u.mntr_flags & MONITOR_FLAG_COOK_FRAMES) { 264 if (sdata->u.mntr_flags & MONITOR_FLAG_COOK_FRAMES) {
@@ -294,7 +298,8 @@ static int ieee80211_do_open(struct net_device *dev, bool coming_up)
294 ieee80211_bss_info_change_notify(sdata, changed); 298 ieee80211_bss_info_change_notify(sdata, changed);
295 299
296 if (sdata->vif.type == NL80211_IFTYPE_STATION || 300 if (sdata->vif.type == NL80211_IFTYPE_STATION ||
297 sdata->vif.type == NL80211_IFTYPE_ADHOC) 301 sdata->vif.type == NL80211_IFTYPE_ADHOC ||
302 sdata->vif.type == NL80211_IFTYPE_AP)
298 netif_carrier_off(dev); 303 netif_carrier_off(dev);
299 else 304 else
300 netif_carrier_on(dev); 305 netif_carrier_on(dev);