FreeBSD The Power to Serve

LinuxKPI 802.11 Wireless Update

Contact: Bjoern A. Zeeb <bz@FreeBSD.org>
Contact: The FreeBSD wireless mailing list <wireless@FreeBSD.org>

With multiple wireless projects ongoing, this report focuses on the efforts using permissively licensed Linux wireless drivers mostly unmodified on FreeBSD.

Drivers previously committed directly to FreeBSD src.git were retroactively imported in vendor branches and merged to main. This makes maintenance and identifying local changes a lot easier. The iwlwifi(4), rtw88(4), and rtw89(4) drivers got updated in main to match Linux 6.11.

The rtw89(4) driver, which had been ported and in the tree for a while, got connected to the build. Thanks for that goes to the efforts of the community finding two bugs preventing it from working before.

Wireless firmware in ports got updated and a release flavor was added. The release building framework got enhanced to install the firmware packages onto the release media. The installer grew support to run fwget(8) on the installed system to install the firmware. This all together ensures that (wireless) drivers with external firmware can be used from the installer and right away on the installed system without the need for alternate connectivity. With the framework in place for iwlwifi(4), rtw88(4), and rtw89(4) support for more drivers can easily be added in the future. These changes shipped the first time with 14.2-RELEASE.

Having a lot of these requested necessities out of the way, time was spent on HT(802.11n) and VHT(802.11ac) improvements to the LinuxKPI framework synching between driver and net80211. Hardware crypto offload got sorted along with A-MPDU RX/BA offload right at the end of the year. Both were needed towards the goal to achieve higher throughput with iwlwifi(4).

A half-year old bug, which stayed unnoticed preventing packets to be sent beyond scanning with rtw88(4) in main and stable/14, received a patch to fix the situation.

Work for the first quarter of 2025 should include:

  • finishing basic HT and VHT support, and

  • looking at finishing the code for generic LinuxKPI 802.11 suspend/resume support

Sponsor: The FreeBSD Foundation


Last modified on: January 9, 2025 by Bjoern A. Zeeb