]> git.baikalelectronics.ru Git - kernel.git/commit
mac80211: Import airtime calculation code from mt76
authorToke Høiland-Jørgensen <toke@redhat.com>
Tue, 19 Nov 2019 06:06:08 +0000 (22:06 -0800)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 22 Nov 2019 12:36:25 +0000 (13:36 +0100)
commit96dcb3349856042b3e1356c6abf66670d7c25e97
tree31588dcb7a472dee404037552487ea1cbe3f9017
parentfac6b3e6bfef736cd4cf8fa6e3dcd04811b18653
mac80211: Import airtime calculation code from mt76

Felix recently added code to calculate airtime of packets to the mt76
driver. Import this into mac80211 so we can use it for airtime queue limit
calculations.

The airtime.c file is copied verbatim from the mt76 driver, and adjusted to
be usable in mac80211. This involves:

- Switching to mac80211 data structures.
- Adding support for 160 MHz channels and HE mode.
- Moving the symbol and duration calculations around a bit to avoid
  rounding with the higher rates and longer symbol times used for HE rates.

The per-rate TX rate calculation is also split out to its own function so
it can be used directly for the AQL calculations later.

Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com>
Link: https://lore.kernel.org/r/20191119060610.76681-3-kyan@google.com
[fix HE_GROUP_IDX() to use 3 * bw, since there are 3 _gi values]
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
include/net/mac80211.h
net/mac80211/Makefile
net/mac80211/airtime.c [new file with mode: 0644]
net/mac80211/ieee80211_i.h