diff options
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-rx.c')
| -rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-rx.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-rx.c b/drivers/net/wireless/iwlwifi/iwl-rx.c index e34d3fcb6c3d..8150c5c3a16b 100644 --- a/drivers/net/wireless/iwlwifi/iwl-rx.c +++ b/drivers/net/wireless/iwlwifi/iwl-rx.c | |||
| @@ -962,6 +962,9 @@ void iwl_rx_reply_rx(struct iwl_priv *priv, | |||
| 962 | return; | 962 | return; |
| 963 | } | 963 | } |
| 964 | 964 | ||
| 965 | /* This will be used in several places later */ | ||
| 966 | rate_n_flags = le32_to_cpu(phy_res->rate_n_flags); | ||
| 967 | |||
| 965 | /* rx_status carries information about the packet to mac80211 */ | 968 | /* rx_status carries information about the packet to mac80211 */ |
| 966 | rx_status.mactime = le64_to_cpu(phy_res->timestamp); | 969 | rx_status.mactime = le64_to_cpu(phy_res->timestamp); |
| 967 | rx_status.freq = | 970 | rx_status.freq = |
| @@ -969,10 +972,7 @@ void iwl_rx_reply_rx(struct iwl_priv *priv, | |||
| 969 | rx_status.band = (phy_res->phy_flags & RX_RES_PHY_FLAGS_BAND_24_MSK) ? | 972 | rx_status.band = (phy_res->phy_flags & RX_RES_PHY_FLAGS_BAND_24_MSK) ? |
| 970 | IEEE80211_BAND_2GHZ : IEEE80211_BAND_5GHZ; | 973 | IEEE80211_BAND_2GHZ : IEEE80211_BAND_5GHZ; |
| 971 | rx_status.rate_idx = | 974 | rx_status.rate_idx = |
| 972 | iwl_hwrate_to_plcp_idx(le32_to_cpu(phy_res->rate_n_flags)); | 975 | iwl_hwrate_to_mac80211_idx(rate_n_flags, rx_status.band); |
| 973 | if (rx_status.band == IEEE80211_BAND_5GHZ) | ||
| 974 | rx_status.rate_idx -= IWL_FIRST_OFDM_RATE; | ||
| 975 | |||
| 976 | rx_status.flag = 0; | 976 | rx_status.flag = 0; |
| 977 | 977 | ||
| 978 | /* TSF isn't reliable. In order to allow smooth user experience, | 978 | /* TSF isn't reliable. In order to allow smooth user experience, |
| @@ -1034,7 +1034,6 @@ void iwl_rx_reply_rx(struct iwl_priv *priv, | |||
| 1034 | rx_status.flag |= RX_FLAG_SHORTPRE; | 1034 | rx_status.flag |= RX_FLAG_SHORTPRE; |
| 1035 | 1035 | ||
| 1036 | /* Set up the HT phy flags */ | 1036 | /* Set up the HT phy flags */ |
| 1037 | rate_n_flags = le32_to_cpu(phy_res->rate_n_flags); | ||
| 1038 | if (rate_n_flags & RATE_MCS_HT_MSK) | 1037 | if (rate_n_flags & RATE_MCS_HT_MSK) |
| 1039 | rx_status.flag |= RX_FLAG_HT; | 1038 | rx_status.flag |= RX_FLAG_HT; |
| 1040 | if (rate_n_flags & RATE_MCS_HT40_MSK) | 1039 | if (rate_n_flags & RATE_MCS_HT40_MSK) |
