Welcome to the official Linux Wireless wiki

This is the main place to get all kind of information about Wireless Networking (currently only IEEE 802.11) on the Linux operating system. This wiki features information for end-users, developers and vendors.

This site covers mostly the new mac80211-based drivers and the mac80211 stack itself along with the new userspace and in-kernel configuration interfaces nl80211 and cfg80211. If you want to keep track of the latest, please refer to our RecentChanges page.

News

December 23, 2008

The 2.6.28 kernel is released. About 400 patches related to wireless have been merged and once again this release brings a slew of new wireless features to the kernel:

  • regulatory support – the kernel will now attempt to obey local wireless spectrum regulations

  • libertas_tf – a thin firmware driver for the XO-1's wireless

  • ath5k gains mesh networking

  • the full-mac orinoco driver gains WPA support

  • p54 gains 5 GHz support

  • mac80211 got mesh portal functionality (bridging a mesh mode interface)
  • the minstrel rate control algorithm was added along with rate control API improvements

  • nl80211 userspace API improvements for various things

As usual, some drivers and mac80211 received cleanups and API changes:

  • Some mac80211 driver operations are no longer required to be atomic which makes drivers simpler
  • mac80211 code was restructured to be easier to read
  • more station information is shared with the driver
  • the rate control API was rewritten and made available to outside mac80211 (due to be updated again in 2.6.29 for better HT control etc.)

October 10, 2008

Linux 2.6.27 is out. Our patch rate is increasing, there were about 700 patches in wireless code. The feature rate seems to be slightly decreasing, entirely new features are:

  • the ath9k driver

  • Intel wireless 5000 series support
  • some RTL8187B support
  • mac80211_hwsim - virtual 802.11 hardware
  • some of the rt2x00 drivers can do hardware crypto now
  • b43 got mesh networking support

Important internal improvements were made:

  • mac80211 is entirely multi-queue aware now, with the new multi-queue netdev features
  • mac80211 now requires many fewer kmalloc calls – control information was moved to skb->cb

  • mac80211 now creates correct QoS sequence numbers

Unfortunately, as of now, aggregation had to be disabled due needing more than just fixups after the multiqueue work.

July 14, 2008

Linux 2.6.26 is released. With almost 600 changesets related to wireless, this release brings you lots more wireless goodies:

  • mac80211 now supports draft mesh networking (802.11s; thanks to the open80211s project)

  • zd1211rw supports mesh networking (b43 will follow in 2.6.27, hopefully more drivers later)

  • mac80211 now supports more optional HT (802.11n) features
  • mac80211's monitor interfaces can now be configured more precisely, "cooked" monitors were added
  • mac80211's IBSS implementation now supports IBSS merging and received various bugfixes
  • mac80211 now has an in-kernel documentation book, help welcome!

  • b43 now has support for PCMCIA devices and QoS/WME

Also, lots of removals this time:

  • the bcm43xx driver
  • the old ieee80211softmac code

Access point mode has received a lot of attention in the stack and drivers, but is not ready yet.

Finally, lots of internal API updates and fixes.

April 17, 2008

Linux 2.6.25 is released. There are a number of important changes:

  • mac80211 now supports HT (802.11n) operation
  • a new rate control algorithm for mac80211 (using a PID controller) was added

In drivers, there were a number of changes as well:

  • New drivers added: ath5k, rndis_wlan and rtl8180

  • rt2x00 drivers now support software antenna diversity
  • zd1211rw is now a mac80211 driver
  • b43 supports new devices (BCM94311MCG rev 02)

As always, of course, lots of code improvements (notably libertas), bugfixes and device IDs for new (or just found to be working) devices.

March 10th, 2008

On February 14, 2008 John Linville announced a new git tree, the wireless-testing.git tree, "created to replace the usage of the former 'everything' branch". As it stands, there is no more #everything branch in wireless-2.6.git tree. Users and developers should rely on wireless-testing.git for the bleeding edge Linux wireless developments. The wireless-testing.git tree should be used as the primary development target. New git URL:

git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-testing.git

To learn how check this tree out, and a general overview of git please see our Linux wireless git-guide. To see the latest changes made on this tree check out the wireless-testing.git ChangeLog

News archive: view older news
(News list)