RTW89(4)

πŸ“¦
version 15.1 Β· 2 versions
, in freebsd 15.1

πŸ’– NAME πŸ’–

okay so welcome to RTW89(4) in the Kernel Interfaces Manual, bestie ✨ This is the page for rtw89 β€” the Realtek IEEE 802.11ax wireless network driver, and it's giving main character energy fr fr πŸ’….

✨ SYNOPSIS ✨

The driver will auto-load without any user interaction using devmatch(8) if enabled in rc.conf(5). No cap.

Only if auto-loading is explicitly disabled, place the following lines in rc.conf(5) to manually load the driver as a module at boot time:

kld_list="${kld_list} if_rtw89"

It is not possible to load the driver from loader(8), so don't try that vibe check πŸ™ˆ.

πŸ¦‹ DESCRIPTION πŸ¦‹

The rtw89 driver is derived from Realtek's Linux rtw89 driver based on Linux version 7.0. Iconic crossover behavior, honestly.

This driver lowkey requires firmware to be loaded before it will work. The package wifi-firmware-rtw89-kmod from the ports/net/wifi-firmware-rtw89-kmod port needs to be installed before the driver is loaded. Otherwise no wlan(4) interface can be created using ifconfig(8) β€” and that's not the slay we want 😭. One should use fwget(8) to install the correct firmware package.

The driver uses the linuxkpi_wlan(4) and linuxkpi(4) compat framework to bridge between the Linux and native FreeBSD driver code as well as to the native net80211(4) wireless stack. It's literally building bridges, bestie 🌈.

🌸 HARDWARE 🌸

The rtw89 driver supports PCIe devices with the following chipsets:

  • Realtek 8851BE Wi-Fi 6 (RTL8851BE)
  • Realtek 8852AE Wi-Fi 6 (RTL8852AE)
  • Realtek 8852BE Wi-Fi 6 (RTL8852BE)
  • Realtek 8852BTE Wi-Fi 6 (RTL8852BE-VT)
  • Realtek 8852CE Wi-Fi 6E (RTL8852CE)
  • Realtek 8922AE Wi-Fi 7 (RTL8922AE)

πŸŽ€ LOADER TUNABLES πŸŽ€

compat.linuxkpi.skb.mem_limit

If you are running a 64bit system with more than 4GB of main memory you need to set this tunable to 1 in loader.conf(5) and reboot once to make it effective. Yes, reboot. The classic turn-it-off-and-on-again, bestie. This tunable will work around a problem with DMA and limit allocations for network buffer memory to the lower 32bit of physical memory and make the driver work. That's highkey important, no cap πŸ”₯.

πŸ‘‘ SEE ALSO πŸ‘‘

No cap, go read those too, bestie 🫢.

🌈 HISTORY 🌈

The rtw89 driver first appeared in FreeBSD 14.2. It's giving debut era ✨.

πŸ’€ BUGS πŸ’€

Certainly. Iconic answer, honestly.

🚨 bestie, real talk: it does not seem to work (reliably) on machines with more than 4GB of main memory. See in the β€œLOADER TUNABLES” section above. Do not skip that part, iykyk 😭.

We observe various stability issues leading up to driver crashes and kernel panics with the current set of chipsets at least in combination with linuxkpi_wlan(4). That's not a vibe, fr fr πŸ’€.

While rtw89 supports 802.11a/b/g/n/ac/ax modes, the compatibility code currently only supports 802.11a/b/g modes. Support for 802.11n/ac/ax is yet to come. So yes, the future is pending, bestie πŸ¦‹.

peace out bestie πŸ’œ this page came from the Debian manual source, dated May 15, 2026, for RTW89(4) β€” mwah, periodt 🫢

πŸ“¦ where this page comes from
  • freebsd 15.1: base 15.1
  • πŸ“œ the page's license: BSD-2-Clause
  • πŸ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms