diff options
author | Jouni Malinen <jouni.malinen@atheros.com> | 2008-08-21 14:45:56 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-08-29 16:24:07 -0400 |
commit | 87e8b64e6856a41c5204a22c47cc14b1b0b57332 (patch) | |
tree | 9b958a0a83e3d49764a2b951ff6dc3e6edf03596 /drivers/net/wireless/mac80211_hwsim.c | |
parent | 31ce12fb3ebf88b054deb99ad729e84888bf6125 (diff) |
mac80211_hwsim: Add minimal IEEE 802.11n support
Set some semi-random values for HT and add more queues to allow IEEE
802.11n association to be tested with mac80211_hwsim. This with the
latest hostapd git tree version can complete a simulated 802.11n
association successfully (with mac80211 client MLME).
Signed-off-by: Jouni Malinen <jouni.malinen@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/mac80211_hwsim.c')
-rw-r--r-- | drivers/net/wireless/mac80211_hwsim.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c index 248d31a7aa33..732429d49122 100644 --- a/drivers/net/wireless/mac80211_hwsim.c +++ b/drivers/net/wireless/mac80211_hwsim.c | |||
@@ -446,7 +446,8 @@ static int __init init_mac80211_hwsim(void) | |||
446 | SET_IEEE80211_PERM_ADDR(hw, addr); | 446 | SET_IEEE80211_PERM_ADDR(hw, addr); |
447 | 447 | ||
448 | hw->channel_change_time = 1; | 448 | hw->channel_change_time = 1; |
449 | hw->queues = 1; | 449 | hw->queues = 4; |
450 | hw->ampdu_queues = 1; | ||
450 | 451 | ||
451 | memcpy(data->channels, hwsim_channels, sizeof(hwsim_channels)); | 452 | memcpy(data->channels, hwsim_channels, sizeof(hwsim_channels)); |
452 | memcpy(data->rates, hwsim_rates, sizeof(hwsim_rates)); | 453 | memcpy(data->rates, hwsim_rates, sizeof(hwsim_rates)); |
@@ -454,6 +455,19 @@ static int __init init_mac80211_hwsim(void) | |||
454 | data->band.n_channels = ARRAY_SIZE(hwsim_channels); | 455 | data->band.n_channels = ARRAY_SIZE(hwsim_channels); |
455 | data->band.bitrates = data->rates; | 456 | data->band.bitrates = data->rates; |
456 | data->band.n_bitrates = ARRAY_SIZE(hwsim_rates); | 457 | data->band.n_bitrates = ARRAY_SIZE(hwsim_rates); |
458 | data->band.ht_info.ht_supported = 1; | ||
459 | data->band.ht_info.cap = IEEE80211_HT_CAP_SUP_WIDTH | | ||
460 | IEEE80211_HT_CAP_GRN_FLD | | ||
461 | IEEE80211_HT_CAP_SGI_40 | | ||
462 | IEEE80211_HT_CAP_DSSSCCK40; | ||
463 | data->band.ht_info.ampdu_factor = 0x3; | ||
464 | data->band.ht_info.ampdu_density = 0x6; | ||
465 | memset(data->band.ht_info.supp_mcs_set, 0, | ||
466 | sizeof(data->band.ht_info.supp_mcs_set)); | ||
467 | data->band.ht_info.supp_mcs_set[0] = 0xff; | ||
468 | data->band.ht_info.supp_mcs_set[1] = 0xff; | ||
469 | data->band.ht_info.supp_mcs_set[12] = | ||
470 | IEEE80211_HT_CAP_MCS_TX_DEFINED; | ||
457 | hw->wiphy->bands[IEEE80211_BAND_2GHZ] = &data->band; | 471 | hw->wiphy->bands[IEEE80211_BAND_2GHZ] = &data->band; |
458 | 472 | ||
459 | err = ieee80211_register_hw(hw); | 473 | err = ieee80211_register_hw(hw); |