diff options
Diffstat (limited to 'drivers/net/wireless/b43/main.c')
-rw-r--r-- | drivers/net/wireless/b43/main.c | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c index 997303bcf4ae..7965b70efbab 100644 --- a/drivers/net/wireless/b43/main.c +++ b/drivers/net/wireless/b43/main.c | |||
@@ -4571,6 +4571,23 @@ static void b43_op_sw_scan_complete_notifier(struct ieee80211_hw *hw) | |||
4571 | mutex_unlock(&wl->mutex); | 4571 | mutex_unlock(&wl->mutex); |
4572 | } | 4572 | } |
4573 | 4573 | ||
4574 | static int b43_op_get_survey(struct ieee80211_hw *hw, int idx, | ||
4575 | struct survey_info *survey) | ||
4576 | { | ||
4577 | struct b43_wl *wl = hw_to_b43_wl(hw); | ||
4578 | struct b43_wldev *dev = wl->current_dev; | ||
4579 | struct ieee80211_conf *conf = &hw->conf; | ||
4580 | |||
4581 | if (idx != 0) | ||
4582 | return -ENOENT; | ||
4583 | |||
4584 | survey->channel = conf->channel; | ||
4585 | survey->filled = SURVEY_INFO_NOISE_DBM; | ||
4586 | survey->noise = dev->stats.link_noise; | ||
4587 | |||
4588 | return 0; | ||
4589 | } | ||
4590 | |||
4574 | static const struct ieee80211_ops b43_hw_ops = { | 4591 | static const struct ieee80211_ops b43_hw_ops = { |
4575 | .tx = b43_op_tx, | 4592 | .tx = b43_op_tx, |
4576 | .conf_tx = b43_op_conf_tx, | 4593 | .conf_tx = b43_op_conf_tx, |
@@ -4590,6 +4607,7 @@ static const struct ieee80211_ops b43_hw_ops = { | |||
4590 | .sta_notify = b43_op_sta_notify, | 4607 | .sta_notify = b43_op_sta_notify, |
4591 | .sw_scan_start = b43_op_sw_scan_start_notifier, | 4608 | .sw_scan_start = b43_op_sw_scan_start_notifier, |
4592 | .sw_scan_complete = b43_op_sw_scan_complete_notifier, | 4609 | .sw_scan_complete = b43_op_sw_scan_complete_notifier, |
4610 | .get_survey = b43_op_get_survey, | ||
4593 | .rfkill_poll = b43_rfkill_poll, | 4611 | .rfkill_poll = b43_rfkill_poll, |
4594 | }; | 4612 | }; |
4595 | 4613 | ||
@@ -4905,8 +4923,7 @@ static int b43_wireless_init(struct ssb_device *dev) | |||
4905 | 4923 | ||
4906 | /* fill hw info */ | 4924 | /* fill hw info */ |
4907 | hw->flags = IEEE80211_HW_RX_INCLUDES_FCS | | 4925 | hw->flags = IEEE80211_HW_RX_INCLUDES_FCS | |
4908 | IEEE80211_HW_SIGNAL_DBM | | 4926 | IEEE80211_HW_SIGNAL_DBM; |
4909 | IEEE80211_HW_NOISE_DBM; | ||
4910 | 4927 | ||
4911 | hw->wiphy->interface_modes = | 4928 | hw->wiphy->interface_modes = |
4912 | BIT(NL80211_IFTYPE_AP) | | 4929 | BIT(NL80211_IFTYPE_AP) | |