opnsense-src/sys/dev/rtwn
Adrian Chadd fcb5e8d0c1 rtwn: don't do 64 bit TSF extension by default
The TSF64 extension involves at least 3 reads from TSF registers
(R92C_TSFTR(0), R92C_TSFTR(1), R92C_TSFTR(2)) which are 4 byte
control transfers.  They take up valuable USB link time.

It's likely much less expensive for PCIe adapters.  At some point
it may be worthwhile enabling it by default just for those.

With this disabled, the only USB traffic that I see during
normal data operation are bulk TX/RX data transfers for 802.11
packets, and on NICs w/ net80211 rate control, the control register
space read/writes for TX completion.  (And that will also need
addressing.)

This is the difference between 15mbit TCP RX and 30mbit TCP RX
on the 11n NICs, and around 40 to 50mbit TCP RX on the 11ac NICs
in HT40 and VHT80.

Locally tested:

* RTL8188EU, STA mode
* RTL8192CU, STA mode
* RTL8192EU, STA mode
* RTL8811AU, STA mode
* RTL8821AU, STA mode

Differential Revision:	https://reviews.freebsd.org/D47861
2024-12-04 23:27:46 -08:00
..
pci Revert "Widen EPOCH(9) usage in PCI WLAN drivers." 2023-12-01 00:48:54 +00:00
rtl8188e sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
rtl8192c rtwn: use ieee80211_ht_get_node_ampdu_density(), fix programming MAX_AGG 2024-12-04 23:26:35 -08:00
rtl8192e sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
rtl8812a rtwn: fix rtl8812/rtl8821 vht definitions, add VHT calibration/rate control 2024-12-04 23:26:49 -08:00
rtl8821a sys: Remove $FreeBSD$: one-line .c pattern 2023-08-16 11:54:36 -06:00
usb rtwn: Add device ID for TPLink RTL8192CU 2024-11-21 10:40:11 -05:00
if_rtwn.c rtwn: don't do 64 bit TSF extension by default 2024-12-04 23:27:46 -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 sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
if_rtwn_ridx.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
if_rtwn_rx.c rtwn: don't do 64 bit TSF extension by default 2024-12-04 23:27:46 -08:00
if_rtwn_rx.h sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06: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 sys: Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:18 -06:00
if_rtwnvar.h rtwn: don't do 64 bit TSF extension by default 2024-12-04 23:27:46 -08:00