]> git.baikalelectronics.ru Git - kernel.git/commit
mac80211: improve the rate control API
authorFelix Fietkau <nbd@openwrt.org>
Mon, 22 Apr 2013 14:14:41 +0000 (16:14 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Mon, 22 Apr 2013 14:16:41 +0000 (16:16 +0200)
commit6ee6c27c8577dd49df9269ae878cc2d7479bc39c
tree5afbdbf16e1ae3d4bf698cf4031032cca220f4b0
parent3092833d925f61082ab4d0db12ce7e4ed5430820
mac80211: improve the rate control API

Allow rate control modules to pass a rate selection table to mac80211
and the driver. This allows drivers to fetch the most recent rate
selection from the sta pointer for already buffered frames. This allows
rate control to respond faster to sudden link changes and it is also a
step towards adding minstrel_ht support to drivers like iwlwifi.

When a driver sets IEEE80211_HW_SUPPORTS_RC_TABLE, mac80211 will not
fill info->control.rates with rates from the rate table (to preserve
explicit overrides by the rate control module). The driver then
explicitly calls ieee80211_get_tx_rates to merge overrides from
info->control.rates with defaults from the sta rate table.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
include/net/mac80211.h
net/mac80211/ieee80211_i.h
net/mac80211/rate.c
net/mac80211/tx.c