• Jouni Malinen's avatar
    cfg80211/mac80211: Use more generic bitrate mask for rate control · 37eb0b16
    Jouni Malinen authored
    Extend struct cfg80211_bitrate_mask to actually use a bitfield mask
    instead of just a single fixed or maximum rate index. This change
    itself does not modify the behavior (except for debugfs files), but it
    prepares cfg80211 and mac80211 for a new nl80211 command for setting
    which rates can be used in TX rate control.
    
    Since frames are now going through the rate control algorithm
    unconditionally, the internal IEEE80211_TX_INTFL_RCALGO flag can now
    be removed. The RC implementations can use the rate_idx_mask value to
    optimize their behavior if only a single rate is enabled.
    
    The old max_rate_idx in struct ieee80211_tx_rate_control is maintained
    (but commented as deprecated) for backwards compatibility with existing
    RC implementations. Once these implementations have been updated to
    use the more generic rate_idx_mask, the max_rate_idx value can be
    removed.
    Signed-off-by: default avatarJouni Malinen <jouni.malinen@atheros.com>
    Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
    37eb0b16
rate.c 9.54 KB