aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorJouni Malinen <j@w1.fi>2011-08-06 16:07:00 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-08-10 14:07:41 -0400
commit281ed297ffb6741550e33b99b24ac3f5c16e3458 (patch)
tree2e8ca8b726371beeedbd883662164c0d3278840f /drivers/net
parent20adc1aecca5a55d7dba2189c1783c2e6d73fac7 (diff)
mac80211_hwsim: Fix RX status reporting for HT
RX_FLAG_HT must be included when reporting MCS rates. Without this, mac80211 ended up dropping any frame sent at MCS index 12 or higher and that resulted in oddly random looking errors in mac80211_hwsim tests. Signed-off-by: Jouni Malinen <j@w1.fi> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/wireless/mac80211_hwsim.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c
index 031cd89b1768..34b79fc91e39 100644
--- a/drivers/net/wireless/mac80211_hwsim.c
+++ b/drivers/net/wireless/mac80211_hwsim.c
@@ -612,6 +612,12 @@ static bool mac80211_hwsim_tx_frame_no_nl(struct ieee80211_hw *hw,
612 rx_status.freq = data->channel->center_freq; 612 rx_status.freq = data->channel->center_freq;
613 rx_status.band = data->channel->band; 613 rx_status.band = data->channel->band;
614 rx_status.rate_idx = info->control.rates[0].idx; 614 rx_status.rate_idx = info->control.rates[0].idx;
615 if (info->control.rates[0].flags & IEEE80211_TX_RC_MCS)
616 rx_status.flag |= RX_FLAG_HT;
617 if (info->control.rates[0].flags & IEEE80211_TX_RC_40_MHZ_WIDTH)
618 rx_status.flag |= RX_FLAG_40MHZ;
619 if (info->control.rates[0].flags & IEEE80211_TX_RC_SHORT_GI)
620 rx_status.flag |= RX_FLAG_SHORT_GI;
615 /* TODO: simulate real signal strength (and optional packet loss) */ 621 /* TODO: simulate real signal strength (and optional packet loss) */
616 rx_status.signal = data->power_level - 50; 622 rx_status.signal = data->power_level - 50;
617 623