diff options
author | Luis R. Rodriguez <lrodriguez@atheros.com> | 2008-08-29 19:26:43 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-09-05 16:17:42 -0400 |
commit | f59ac0481660e66cec67f1d6b024e78b9dc715fe (patch) | |
tree | e9c69b04ac5863b1429bca5a9df1d75026703cde /net/mac80211/main.c | |
parent | c6e387a214f4b2c4bd48020409e366c133385d98 (diff) |
cfg80211: keep track of supported interface modes
It is obviously good for userspace to know up front which
interface modes a given piece of hardware might support (even
if adding such an interface might fail later because of
concurrency issues), so let's make cfg80211 aware of that.
For good measure, disallow adding interfaces in all other
modes so drivers don't forget to announce support for one mode
when they add it.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: Stephen Blackheath <tramp.enshrine.stephen@blacksapphire.com>
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/main.c')
-rw-r--r-- | net/mac80211/main.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/net/mac80211/main.c b/net/mac80211/main.c index 638b75f36e23..396cfb2d0f46 100644 --- a/net/mac80211/main.c +++ b/net/mac80211/main.c | |||
@@ -1675,6 +1675,13 @@ int ieee80211_register_hw(struct ieee80211_hw *hw) | |||
1675 | } | 1675 | } |
1676 | } | 1676 | } |
1677 | 1677 | ||
1678 | /* if low-level driver supports AP, we also support VLAN */ | ||
1679 | if (local->hw.wiphy->interface_modes & BIT(NL80211_IFTYPE_AP)) | ||
1680 | local->hw.wiphy->interface_modes |= BIT(NL80211_IFTYPE_AP_VLAN); | ||
1681 | |||
1682 | /* mac80211 always supports monitor */ | ||
1683 | local->hw.wiphy->interface_modes |= BIT(NL80211_IFTYPE_MONITOR); | ||
1684 | |||
1678 | result = wiphy_register(local->hw.wiphy); | 1685 | result = wiphy_register(local->hw.wiphy); |
1679 | if (result < 0) | 1686 | if (result < 0) |
1680 | return result; | 1687 | return result; |