diff options
Diffstat (limited to 'net/mac80211/main.c')
-rw-r--r-- | net/mac80211/main.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/net/mac80211/main.c b/net/mac80211/main.c index d767cfb9b45f..1f7d8422d62d 100644 --- a/net/mac80211/main.c +++ b/net/mac80211/main.c | |||
@@ -893,10 +893,15 @@ int ieee80211_register_hw(struct ieee80211_hw *hw) | |||
893 | /* mac80211 supports control port protocol changing */ | 893 | /* mac80211 supports control port protocol changing */ |
894 | local->hw.wiphy->flags |= WIPHY_FLAG_CONTROL_PORT_PROTOCOL; | 894 | local->hw.wiphy->flags |= WIPHY_FLAG_CONTROL_PORT_PROTOCOL; |
895 | 895 | ||
896 | if (local->hw.flags & IEEE80211_HW_SIGNAL_DBM) | 896 | if (local->hw.flags & IEEE80211_HW_SIGNAL_DBM) { |
897 | local->hw.wiphy->signal_type = CFG80211_SIGNAL_TYPE_MBM; | 897 | local->hw.wiphy->signal_type = CFG80211_SIGNAL_TYPE_MBM; |
898 | else if (local->hw.flags & IEEE80211_HW_SIGNAL_UNSPEC) | 898 | } else if (local->hw.flags & IEEE80211_HW_SIGNAL_UNSPEC) { |
899 | local->hw.wiphy->signal_type = CFG80211_SIGNAL_TYPE_UNSPEC; | 899 | local->hw.wiphy->signal_type = CFG80211_SIGNAL_TYPE_UNSPEC; |
900 | if (hw->max_signal <= 0) { | ||
901 | result = -EINVAL; | ||
902 | goto fail_wiphy_register; | ||
903 | } | ||
904 | } | ||
900 | 905 | ||
901 | WARN((local->hw.flags & IEEE80211_HW_SUPPORTS_UAPSD) | 906 | WARN((local->hw.flags & IEEE80211_HW_SUPPORTS_UAPSD) |
902 | && (local->hw.flags & IEEE80211_HW_PS_NULLFUNC_STACK), | 907 | && (local->hw.flags & IEEE80211_HW_PS_NULLFUNC_STACK), |