opnsense-src/sys/dev/rtwn
Adrian Chadd af2e102c40 rtwn: enable periodic TX reporting support on RTL8188EU NICs.
The RTL8188E firmware doesn't have the "full" offload firmware
rate control.  Instead, the vendor driver has a bunch of logic
in the driver for rate probing and selection.

Part of this is the periodic TX report - which uploads a summary
of multi-rate retries and drops per MAC.  Using it drastically
cuts down on the TX notifications - it's fired from a timer
(defaulting to ~ 1.6 seconds) and is a single receive frame in
the normal bulk RX path.

I've not ported / reimplemented the whole vendor driver rate adaption
code - instead, I'm just using the normal net80211 rate control APIs.
It seems to behave OK - I get 25-30mbit down and 20mbit up using TCP/
speedtest.

Locally tested:

* RTL8188EU, STA mode

Differential Revision:	 https://reviews.freebsd.org/D48088
Reviewed by:	fuz, bz
Obtained from:	https://github.com/lwfinger/rtl8188eu/blob/master/hal/Hal8188ERateAdaptive.c
2024-12-31 11:11:33 -08:00
..
pci rtwn: add placeholder for the per-MACID rate report 2024-12-06 16:22:47 -08:00
rtl8188e rtwn: enable periodic TX reporting support on RTL8188EU NICs. 2024-12-31 11:11:33 -08:00
rtl8192c rtwn: enable periodic TX reporting support on RTL8188EU NICs. 2024-12-31 11:11:33 -08:00
rtl8192e rtwn: create a new HAL routine for enabling STA mode beacon processing 2024-12-20 12:40:19 -08:00
rtl8812a rtwn: create a new HAL routine for enabling STA mode beacon processing 2024-12-20 12:40:19 -08:00
rtl8821a rtwn: create a new HAL routine for enabling STA mode beacon processing 2024-12-20 12:40:19 -08:00
usb rtwn: bump up the RX USB buffers 2024-12-18 15:47:37 -08:00
if_rtwn.c rtwn: add support for register IO debugging 2024-12-31 11:11:07 -08:00
if_rtwn_beacon.c sys: Automated cleanup of cdefs and other formatting 2023-11-26 22:24:00 -07:00
if_rtwn_beacon.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
if_rtwn_calib.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
if_rtwn_calib.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
if_rtwn_cam.c net80211: migrate the group/unicast key check into inline functions 2024-07-15 11:45:30 -07:00
if_rtwn_cam.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
if_rtwn_debug.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
if_rtwn_efuse.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
if_rtwn_efuse.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
if_rtwn_fw.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
if_rtwn_fw.h sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
if_rtwn_nop.h rtwn: add APIs for setting transmit power 2024-12-18 15:45:24 -08:00
if_rtwn_ridx.h rtwn: expand the ridx numbers to include VHT; add accessor macros 2024-12-06 23:13:50 -08:00
if_rtwn_rx.c rtwn: make sure RCR_APPFCS stays set in monitor mode / mode changes. 2024-12-27 17:46:38 -08:00
if_rtwn_rx.h rtwn: update rtwn_get_rates() to separate out the CCK/OFDM and HT rates 2024-12-18 15:48:10 -08:00
if_rtwn_task.c sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
if_rtwn_task.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
if_rtwn_tx.c rtwn: ensure TX work isn't scheduled during reset / abort 2024-11-08 08:26:05 -08:00
if_rtwn_tx.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
if_rtwnreg.h rtwn: add VHT awareness to rtwn_chan2centieee() 2024-12-06 23:14:20 -08:00
if_rtwnvar.h rtwn: enable periodic TX reporting support on RTL8188EU NICs. 2024-12-31 11:11:33 -08:00