diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2009-03-31 06:12:07 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-04-22 16:54:39 -0400 |
commit | 5ef2d41afb7fce2315d12a8aaebe0c9f1b50755b (patch) | |
tree | 00fb4ac6a019b42c5be143793a3b34253f43eea9 /net/mac80211/main.c | |
parent | de95a54b1aebe5592cae971ca5e5d9ec6a381a17 (diff) |
mac80211: include HT capabilities in probe request
Include the HT capabilities in the probe request frame.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/main.c')
-rw-r--r-- | net/mac80211/main.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/net/mac80211/main.c b/net/mac80211/main.c index b3bbe78821d9..679b3a14f11f 100644 --- a/net/mac80211/main.c +++ b/net/mac80211/main.c | |||
@@ -822,6 +822,7 @@ int ieee80211_register_hw(struct ieee80211_hw *hw) | |||
822 | struct net_device *mdev; | 822 | struct net_device *mdev; |
823 | struct ieee80211_master_priv *mpriv; | 823 | struct ieee80211_master_priv *mpriv; |
824 | int channels, i, j, max_bitrates; | 824 | int channels, i, j, max_bitrates; |
825 | bool supp_ht; | ||
825 | 826 | ||
826 | /* | 827 | /* |
827 | * generic code guarantees at least one band, | 828 | * generic code guarantees at least one band, |
@@ -830,6 +831,7 @@ int ieee80211_register_hw(struct ieee80211_hw *hw) | |||
830 | */ | 831 | */ |
831 | channels = 0; | 832 | channels = 0; |
832 | max_bitrates = 0; | 833 | max_bitrates = 0; |
834 | supp_ht = false; | ||
833 | for (band = 0; band < IEEE80211_NUM_BANDS; band++) { | 835 | for (band = 0; band < IEEE80211_NUM_BANDS; band++) { |
834 | struct ieee80211_supported_band *sband; | 836 | struct ieee80211_supported_band *sband; |
835 | 837 | ||
@@ -846,6 +848,7 @@ int ieee80211_register_hw(struct ieee80211_hw *hw) | |||
846 | 848 | ||
847 | if (max_bitrates < sband->n_bitrates) | 849 | if (max_bitrates < sband->n_bitrates) |
848 | max_bitrates = sband->n_bitrates; | 850 | max_bitrates = sband->n_bitrates; |
851 | supp_ht = supp_ht || sband->ht_cap.ht_supported; | ||
849 | } | 852 | } |
850 | 853 | ||
851 | local->int_scan_req.n_channels = channels; | 854 | local->int_scan_req.n_channels = channels; |
@@ -872,6 +875,8 @@ int ieee80211_register_hw(struct ieee80211_hw *hw) | |||
872 | * information -- SSID is the driver's responsibility. | 875 | * information -- SSID is the driver's responsibility. |
873 | */ | 876 | */ |
874 | local->scan_ies_len = 4 + max_bitrates; /* (ext) supp rates */ | 877 | local->scan_ies_len = 4 + max_bitrates; /* (ext) supp rates */ |
878 | if (supp_ht) | ||
879 | local->scan_ies_len += 2 + sizeof(struct ieee80211_ht_cap); | ||
875 | 880 | ||
876 | if (!local->ops->hw_scan) { | 881 | if (!local->ops->hw_scan) { |
877 | /* For hw_scan, driver needs to set these up. */ | 882 | /* For hw_scan, driver needs to set these up. */ |