NOTE: this page is for archival only, see the note at the end of the page.

About nl80211

nl80211 is the new 802.11 netlink interface public header. Together with cfg80211 it is intended to replace Wireless-Extensions. nl80211 and cfg80211 are still under development.

Users of nl80211

Current users of nl80211:

libnl tiny

OpenWrt folks created a tiny version of libnl based on a git snapshot, which only contains genl, not rtnetlink or any of the netfilter stuff, and compiles down to less than 30k in binary size. You can find it here:

svn co svn://

Kerneldoc for nl80211


testmode (CONFIG_NL80211_TESTMODE=y)

The nl80211 testmode command helps implementing things like factory calibration or validation tools for wireless chips.

This functionality could possibly be used for SAR testing (Specific Absorption Rate), MPE testing (Maximum Permissible Exposure), RF testing (Radio Frequency), as possibly requested by institutions such as FCC.

According to Linux_2_6_32, testmode has been introduced by nicely described commit aff89a9b90849.

This setting is currently provided by net/wireless/Kconfig.

For a way to determine whether a wireless driver actually supports nl80211 testmode interface, see [PATCH] nl80211: add testmode to the list of supported commands.

Current users of the testmode interface are:

TODO: could list (references to) ready-made scripts which implement nicely automated / elegant workflows for SAR testing etc.

For ATH9K chipsets, there's SAR testing functionality provided via the non-testmode setting CONFIG_ATH9K_TX99. Hmm, this possibly needs conversion to (additionally?) providing the generic nl80211 testmode functionality?

This is a static dump of the wiki, taken after locking it in January 2015. The new wiki is at
versions of this page: last, v26, v25, v24, v23, v22, v21, v20, v19, v18, v17, v16, v15, v14, v13, v12, v11, v10, v9, v8, v7, v6, v5, v4, v3, v2, v1