RTW89(4)               FreeBSD Kernel Interfaces Manual               RTW89(4)

NAME

     rtw89 - Realtek IEEE 802.11ax wireless network driver

SYNOPSIS

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

     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).

DESCRIPTION

     The rtw89 driver is derived from Realtek's Linux rtw89 driver based on
     Linux version 7.0.

     This driver 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).  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.

HARDWARE

     The rtw89 driver supports PCIe devices with the following chipsets:

           o   Realtek 8851BE Wi-Fi 6  (RTL8851BE)
           o   Realtek 8852AE Wi-Fi 6  (RTL8852AE)
           o   Realtek 8852BE Wi-Fi 6  (RTL8852BE)
           o   Realtek 8852BTE Wi-Fi 6 (RTL8852BE-VT)
           o   Realtek 8852CE Wi-Fi 6E (RTL8852CE)
           o   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.  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.

SEE ALSO

     linuxkpi(4,) linuxkpi_wlan(4,) wlan(4), networking(7), fwget(8),
     ifconfig(8), wpa_supplicant(8)

HISTORY

     The rtw89 driver first appeared in FreeBSD 14.2.

BUGS

     Certainly.

     Does not seem to work (reliably) on machines with more than 4GB of main
     memory.  See in the LOADER TUNABLES section above.

     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).

     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.

FreeBSD 15.1-STABLE-HBSD         May 15, 2026                         RTW89(4)