Comparison of open-source wireless drivers
Wireless network cards for computers require control software to make them function. This is a list of the status of some open-source drivers for 802.11 wireless network cards.
Linux
Status
| Driverfamily | Chipsets | Chipset PHY Modes | Integration in mainline | Non-free firmware required | License | Development | |
| ADMtek ADM8211 | b | GPLv2 | With support from Infineon / ADMtek | ||||
| Atmel AT76C503 / AT76C505 based USB WLAN adapters | b | Depends on the model | GPLv2 | ||||
| Texas Instruments ACX100, ACX111, TNETW1450 | b/g | Dual BSD/MPL | Reverse-engineered | ||||
| Cisco Systems Aironet 4500/4800 and 340/350 | b | Dual GPLv2 and BSD | |||||
| Atheros AR5523 based USB dongles | a/b/g | ISC | Reverse-engineered | ||||
| Atheros AR2413, AR2414, AR2417, AR2425, AR5210, AR5211, AR5212, AR5213, AR5413, AR5414, AR5423, AR5424 | a/b/g | Dual GPL/BSD | Reverse-engineered | ||||
| Atheros AR6003, AR6004, AR6004 | a/b/g | ISC | Written by Atheros | ||||
| Atheros chips with IEEE [802.11n|802.11n] support | a/b/g/n | proprietary blob only required for Bluetooth | ISC | Written by Atheros | |||
| Atheros AR9271, AR7010 | b/g/n | ISC | Written by Qualcomm Atheros | ||||
| Qualcomm Atheros chips with 802.11ac support | a/b/g/n /ac | ISC | Written by Qualcomm Atheros | ||||
| Qualcomm Atheros chips with 802.11ax support | a/b/g/n /ac/ax | ISC | Written by Qualcomm Atheros | ||||
| Qualcomm Atheros chips with 802.11be support | a/b/g/n /ac/ax/be | ISC | Written by Qualcomm Atheros | ||||
| Atheros AR9170 | a/b/g/n | GPL | Qualcomm Atheros-supported | ||||
| Wilocity wil6210, 802.11ad 60GHz | ad | ISC | Written by Qualcomm Atheros | ||||
| Atmel at76c502 at76c504 and at76c506 wireless cards | b | GPLv2+ | Reverse-engineered | ||||
| Broadcom BCM43xx | a/b/g/n | Experimental OSS firmware | GPL | Reverse-engineered | |||
| Broadcom BCM4301, BCM4303, and BCM4306 rev 1 and 2 | a/b/g | Experimental OSS firmware | GPL | Reverse-engineered | |||
| PCIe devices: Broadcom 4356, 43567, 43570, 4358, 4359, 43602, 4365, 4366 SDIO devices: Broadcom 4329, 4330, 4334, 43340, 43341, 43241, 4335, 4339, 43362, 43430, 43455, 4354, 43143 USB devices: Broadcom 43235, 43236, 43238, 43143, 43242, 43566, 43569 | a/b/g/n/ac | ISC | Written by Broadcom | ||||
| Broadcom BCM4313, BCM43224, BCM43225 | a/b/g/n | ISC | Written by Broadcom | ||||
| ST-Ericsson CW1100 & CW1200 WLAN chipsets | GPLv2 | ? | |||||
HostAP | Intersil PRISM-II, PRISM-2.5, PRISM 3 | Depends on the model | GPLv2 | ||||
| Intel PRO/Wireless 2100 and 2200 Network Connection | GPL | Written by Intel | |||||
| Intel Wireless Wi-Fi 3945ABG, 4965AGN | GPL | ||||||
| Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N: 6250AGN, 6200AGN, 6300AGN, 1000BGN, 5150AGN, 5100AGN, 5300AGN, 5350AGN, 6005, 6030, 6150BGN, 100BGN, 130BGN, AX200, AX210 and BE200 | a/b/g/n /ac/ax/be | Dual GPL/BSD | Written by Intel | ||||
| Marvell 88W8686 SDIO Libertas 8388 802.11b/g, 8385 802.11b/g, 8385/8686/8688 802.11b/g, 8686 802.11b/g, | GPL | Marvell-supported | |||||
| Marvell 8388 WLAN Thinfirm Driver | b/g | GPL | cozybit, Marvell-supported | ||||
| MediaTek MT76xxx, MT79xxxx | a/b/g/n /ac/ax/be | ISC | With support from MediaTek | ||||
| MediaTek MT7601U | b/g/n | GPLv2 | |||||
| WiFi-Ex Driver for Marvell SD8786/SD8787/SD8797, 8766/8897 and 88W8797 | GPLv2 | Written by Marvell | |||||
| Marvell TopDog 802.11 Wireless cards: 88W8366, 88W8863, 88W8687, 88W8764 | GPLv2 | Written by Marvell | |||||
| Lucent Hermes ; Intersil PRISM-II, PRISM-2.5; Symbol Spectrum24 802.11b | Required for WPA support | ||||||
| Prism54: Intersil/Conexant ISL3877, ISL3880, ISL3886, ISL3887, ISL3890 | | Experimental OSS firmware | |||||
| Prism54: Intersil/Conexant ISL3877, ISL3880, ISL3886, ISL3887, ISL3890 | Experimental OSS firmware | Reverse-engineered; obsoleted by p54. | |||||
| MediaTek RT2460 | b | GPLv2+ | rt2x00.serialmonkey.com; From partial documentation and GPL drivers by Ralink | ||||
| Ralink RT2560 | b/g | GPLv2+ | rt2x00.serialmonkey.com | ||||
| Ralink RT2561, RT2561S, RT2661 | GPLv2+ | rt2x00.serialmonkey.com | |||||
| Ralink RT2760, RT2790, RT2860, RT2880, RT2890, RT3052, RT3090, RT3091, RT3092 RT3390, RT3060, RT3062, RT3290, RT3562, RT3592, RT5390, RT5392 | GPLv2+ | rt2x00.serialmonkey.com | |||||
| Ralink RT2571 & RT2572 | b/g | GPLv2+ | rt2x00.serialmonkey.com | ||||
| Ralink RT2571W, RT2573 & RT2671 | GPLv2+ | rt2x00.serialmonkey.com | |||||
| Ralink RT2770, RT2870, RT3070, RT3071, RT3072 RT3370, RT3572, RT5370, RT5572 | GPLv2+ | rt2x00.serialmonkey.com | |||||
| Realtek RTL8180, RTL8185, RTL8187SE | b/g | GPL | |||||
| Realtek RTL8187, RTL8187B | a/b/g | GPL | |||||
| Realtek RTL8723AU, RTL8723BU, RTL8188CUS, RTL8192CU, RTL8191EU, RTL8192EU, RTL8188EU, RTL8188RU, RTL8188FU, RTL8192FU | b/g/n | GPLv2 | fan-made, based on open source drivers released by Realtek | ||||
| Realtek RTL8188EE | GPL | Written by Realtek et al. Forked from rtl8180-sa2400 project. | |||||
| Realtek RTL8192C | GPL | Written by Realtek et al. | |||||
| Realtek RTL8192CE | GPL | Written by Realtek et al. | |||||
| Realtek RTL8192CU | GPL | Written by Realtek et al. | |||||
| Realtek RTL8192DE | GPL | Written by Realtek et al. | |||||
| Realtek RTL8192SE | GPL | Written by Realtek et al. | |||||
| Realtek RTL8723AE | GPL | Written by Realtek et al. | |||||
| Realtek RTL8188EU | GPL | Written by Realtek et al. | |||||
| Realtek RTL8812AE, RTL8821AE | a/b/g/n /ac | GPL | |||||
| rtw88_8822ce | Realtek RTL8822CE | a/b/g/n /ac | Dual GPLv2 and BSD | Written by Realtek et al. | |||
| rtw88_8822be | Realtek RTL8822BE | a/b/g/n /ac | Dual GPLv2 and BSD | Written by Realtek et al. | |||
| rtw88_8821ce | Realtek RTL8821CE | a/b/g/n /ac | Dual GPLv2 and BSD | Written by Realtek et al. | |||
| rtw88_8723de | Realtek RTL8723DE | b/g/n | Dual GPLv2 and BSD | Written by Realtek et al. | |||
| rtw88_8822cu | Realtek RTL8822CU | a/b/g/n /ac | Dual GPLv2 and BSD | Written by Realtek et al. | |||
| rtw88_8822bu | Realtek RTL8822BU | a/b/g/n /ac | Dual GPLv2 and BSD | Written by Realtek et al. | |||
| rtw88_8821cu | Realtek RTL8821CU | a/b/g/n /ac | Dual GPLv2 and BSD | Written by Realtek et al. | |||
| rtw88_8723du | Realtek RTL8723DU | b/g/n | Dual GPLv2 and BSD | Written by Realtek et al. | |||
| rtw89_8852ae | Realtek RTL8852AE | a/b/g/n /ac/ax | Dual GPLv2 and BSD | Written by Realtek et al. | |||
| rtw89_8852be | Realtek RTL8852BE | a/b/g/n /ac/ax | Dual GPLv2 and BSD | Written by Realtek et al. | |||
| rtw89_8852ce | Realtek RTL8852CE | a/b/g/n /ac/ax | Dual GPLv2 and BSD | Written by Realtek et al. | |||
| rsi9113 | Redpine Signals SDIO and USB adapters | GPL | Written by Redpine Signals Inc. | ||||
| Texas Instruments TI wl1251 | GPL | Written by Nokia | |||||
| Texas Instruments TI wl1271, wl1273, wl1281 and wl1283 | GPL | Written by Nokia and Texas Instruments | |||||
| Texas Instruments TI WiLink 8 | GPL | Written by Texas Instruments | |||||
| ZyDAS ZD1211/ZD1211B | GPL | various |
FreeBSD
Status
| Driver | Chipset | Integration | Non-free firmware required | License | Original/ Primary developer | Development |
| Texas Instruments ACX100/ACX111 | Separate project | BSD | Reverse engineering | |||
| Aironet 4500/4800, Cisco Aironet 340/350, Xircom Wireless Ethernet | Integrated | BSD | Bill Paul | |||
| Aironet Arlan 655 | Integrated / Removed in 8.0 | BSD | ||||
| Atheros AR5210/ AR5211/ AR5212/ AR5416 /AR9130 /AR9160 /AR9280 /AR9285 /AR9287 /AR9565 | Integrated | BSD | Originally by Atheros via Sam Leffler ; supported by the community | Documentation based | ||
| AMD PCnetMobile | Integrated / Removed in 8.0 | BSD | Bill Sommerfeld, Atsushi Onoe | |||
| Broadcom BCM43xx/4318 | Integrated since 8.0 | BSD | Sepherosa Ziehau , Andrew Thompson, Sam Leffler | Ported from DragonFly BSD | ||
| Broadcom BCM43xx/4318 v4 firmware | Integrated since 8.1 | BSD | Weongyo Jeong | ? | ||
| Netwave AirSurfer | Integrated / Removed in 8.0 | BSD | Imported from NetBSD | |||
| Intel PRO/Wireless 2100 | Integrated | BSD | Damien Bergamini | Reverse engineering | ||
| Intel PRO/Wireless 2200BG/ 2225BG/ 2915ABG | Integrated | BSD | Damien Bergamini | Reverse engineering | ||
| Intel Dual Band Wireless-AC 3160 / 3165 / 7260 / 7265 / 8260 | ? | ? | ? | ? | ||
| Intel PRO/Wireless 4965 ABGN/ 5100/ 5300/ 5350/ 1000 Intel Centrino 6000/ 6150/ 6200/ 6205/ 6230/ 6250/ 6300 | Integrated since 8.0 / Available for 7.1 and above as separate patch | BSD | Damien Bergamini, Benjamin Close, Sam Leffler | Reverse engineering | ||
| Marvell 88W8335 | Integrated | BSD | Weongyo Jeong, Sam Leffler | |||
| Marvell 88W8363 | Integrated since 8.0 | BSD | Sam Leffler | ? | ||
| Ralink RT2500/ RT2501/ RT2600/ RT3090/ RT3592 | Integrated | BSD | Damien Bergamini | Based on partial documentation | ||
| Raytheon Raylink/ Webgear Aviator | Integrated / Removed in 8.0 | BSD | Imported from NetBSD | |||
| Realtek RTL8188SU/ RTL8192SU | Integrated since 10.0 | BSD | Damien Bergamini , Imported from OpenBSD by Rui Paulo | ? | ||
| Ralink RT2501USB/ RT2601USB | Integrated | BSD | Niall O'Higgins, Damien Bergamini | Based on partial documentation | ||
| Ralink RT2700U/ RT2800U/ RT3000U | Integrated since 8.1 | BSD | Damien Bergamini , Imported from OpenBSD by Akinori Furukoshi | Based on partial documentation | ||
| Atheros AR5005UG/ AR5005UX | Integrated since 8.0 | BSD | Weongyo Jeong, Sam Leffler | ? | ||
| GW3887 | Integrated since 8.0 | BSD | Imported from OpenBSD | Reverse engineering | ||
| Ralink RT2500USB | Integrated | BSD | Damien Bergamini | Based on partial documentation | ||
| Realtek RTL8187L/ RTL8187B | Integrated since 8.0 | BSD | Weongyo Jeong | ? | ||
| Realtek RTL8188CU/ RTL8188EU/ RTL8192CU | Integrated since 10.0 | BSD | Damien Bergamini | Reverse engineering | ||
| Lucent Hermes ; Intersil PRISM-2, PRISM-2.5, PRISM-3; Symbol Spectrum24 802.11b | Integrated | BSD | Bill Paul | Documentation based | ||
| Intel PRO/ Wireless 3945ABG | Integrated | BSD | Damien Bergamini, Benjamin Close | Reverse engineering | ||
| ZyDAS ZD1211/ ZD1211B | Integrated | BSD | Florian Stoehr, Damien Bergamini, Jonathan Gray | Documentation based |
Driver capabilities
| Driver | 802.11 | Bus interface | WEP | WPA | WPA2 | Monitor mode | Master mode | Ad-Hoc mode |
| 802.11a?, 802.11b, 802.11g | Cardbus, PCI | ? | ? | ? | ? | |||
| 802.11b | Cardbus, PCI, ISA | ? | ? | ? | ? | |||
| N/A | ISA | ? | ? | ? | ? | ? | ? | |
| 802.11a, 802.11b, 802.11g, 802.11n | Cardbus, PCI, Mini PCI | |||||||
| N/A | PC Card | ? | ? | ? | ? | |||
| 802.11b, 802.11g | Cardbus, PCI | |||||||
| N/A | Cardbus | ? | ? | ? | ? | ? | ? | |
| 802.11b | Mini PCI | |||||||
| 802.11a, 802.11b, 802.11g | Mini PCI | |||||||
| 802.11a, 802.11b, 802.11g, 802.11n | Mini PCI | |||||||
| 802.11b, 802.11g | PCI | |||||||
| 802.11a, 802.11b, 802.11g, 802.11n | PCI | |||||||
| 802.11a, 802.11b, 802.11g | Cardbus, PCI, Mini PCI | |||||||
| N/A | PC Card | ? | ? | ? | ||||
| 802.11a, 802.11b, 802.11g | USB | |||||||
| 802.11a, 802.11b, 802.11g | USB | |||||||
| 802.11b, 802.11g | USB | |||||||
| 802.11b, 802.11g | USB | |||||||
| 802.11b, 802.11g | USB | |||||||
| 802.11b, 802.11g | USB | |||||||
| 802.11b | PC Card, Cardbus, PCI | |||||||
| 802.11a, 802.11b, 802.11g | Mini PCI | |||||||
| 802.11b, 802.11g | USB |
OpenBSD
The following is an incomplete list of supported wireless devices:Status
| Driver | Chipset | Integration | Free firmware | License | Original/Primary developer | Development | Free software |
| Texas Instruments ACX100/ACX111 | Integrated | BSD | Ported from DragonFlyBSD | Reverse engineering | |||
| Aironet 4500/4800, Cisco Aironet 340/350 | Integrated | BSD | |||||
| Atheros AR5210/ AR5211/ AR5212 | Integrated | BSD | Reverse engineering | ||||
| Atheros AR5416/AR9160/AR928X | Integrated | BSD | Damien Bergamini | Partly based on the ath9k driver for Linux | |||
| Atmel AT76C503/ AT76C503A/ AT76C505/ AT76C505A | Integrated | BSD | Reverse engineering | ||||
| ADMtek ADM8211 | Integrated | BSD | Documentation based | ||||
| BayStack 650 | 2.7 to 4.3 | BSD | |||||
| Broadcom and Cypress IEEE 802.11a/ac/ax/b/g/n wireless network device | 6.3+ | BSD | Patrick Wildt | Yes | |||
| Broadcom BCM430x/4318 | Integrated | BSD | Sepherosa Ziehau | Ported from DragonFly BSD | |||
| NetWave AirSurfer | 2.6 to 6.0 | BSD | |||||
| Intel PRO/Wireless 2100 | Integrated | BSD | Damien Bergamini | Reverse engineering | |||
| Intel PRO/Wireless 2200BG/ 2225BG/ 2915ABG | Integrated | BSD | Damien Bergamini | Reverse engineering | |||
| Intel Wireless WiFi Link 4965/ 5000/ 1000/ 6000 | Integrated | BSD | Damien Bergamini | Reverse engineering | |||
| Intel Wireless WiFi Link 3160ac/ 7260ac/ 7265ac | Integrated | BSD | Antti Kantee, Stefan Sperling | Based on iwn, and iwlwifi driver released by Intel for Linux under dual GPLv2/BSD license | |||
| Marvell 88W8335/ 88W8310 | Integrated | BSD | Marcus Glocker and Claudio Jeker | Reverse engineering | |||
| Atheros AR9170 | Integrated | BSD | Damien Bergamini | Based on source code released by Atheros for Linux under the ISC | |||
| Conexant/Intersil Prism GT Full-MAC ISL3877, ISL3880, and ISL3890 chips | Integrated | BSD | Ported from FreeBSD | Reverse engineering | |||
| / | Ralink RT2500, RT2501, RT2600, RT2700, RT2800, RT3090, RT3292, RT3592 and RT5390, RT2500USB | Integrated | BSD | Damien Bergamini | Documentation based | ||
| Raytheon Raylink/WebGear Aviator IEEE 802.11FH | 2.7 to 5.4 | BSD | |||||
| Realtek RTL8188SU/RTL8191SU/RTL8192SU | Integrated | BSD | Damien Bergamini | Reverse engineering | |||
| Realtek RTL8180L | Integrated | BSD | Ported from NetBSD | Documentation based | |||
| Realtek RTL8188CE/RTL8192CE | Integrated | BSD | Stefan Sperling | Based on urtwn driver. | |||
| Ralink RT2501USB/ RT2601USB | Integrated | BSD | Niall O'Higgins and Damien Bergamini | Documentation based | |||
| Ralink RT2700U/ RT2800U/ RT3000U | Integrated | BSD | Damien Bergamini | Documentation based | |||
| Atheros AR5005UG/ AR5005UX | Integrated | BSD | Damien Bergamini | Reverse Engineering | |||
| GW3887 | Integrated | BSD | Marcus Glocker | Reverse engineering | |||
| Realtek RTL8187L | Integrated | BSD | Weongyo Jeong | ? | |||
| Realtek RTL8188CU/RTL8192CU | Integrated | BSD | Damien Bergamini | Reverse engineering | |||
| Lucent Hermes ; Intersil PRISM-2, PRISM-2.5, PRISM-3; Symbol Spectrum24 | Integrated | Yes for Spectrum24 and N/A for others | BSD | Bill Paul | Documentation based | ||
| Intel PRO/Wireless 3945ABG | Integrated | BSD | Damien Bergamini | Reverse engineering | |||
| ZyDAS ZD1211/ZD1211B | Integrated | BSD | Florian Stoehr, Damien Bergamini, and Jonathan Gray | Documentation based |
Driver capabilities
| Driver | 802.11 | Bus interface | WEP | WPA | WPA2 | Monitor mode | Master mode | Ad-Hoc mode |
| 802.11a, 802.11b, 802.11g | Cardbus, PCI | |||||||
| 802.11b | PC Card, PCI, ISA | |||||||
| 802.11a, 802.11b, 802.11g | Cardbus, PCI | |||||||
| 802.11a, 802.11b, 802.11g, 802.11n | Cardbus, PCI-E, Mini PCIE | |||||||
| 802.11b | USB | |||||||
| 802.11b | Cardbus, PCI | |||||||
| 802.11a/ac/ax/b/g/n | PCI, USB | Yes | Yes | Yes | Yes | Yes | No | |
| 802.11b, 802.11g | Cardbus, PCI | |||||||
| N/A | PC Card | |||||||
| 802.11b | PCI | |||||||
| 802.11a, 802.11b, 802.11g | PCI | |||||||
| 802.11a, 802.11b, 802.11g, 802.11n | PCI-E, Mini PCIE | |||||||
| 802.11a, 802.11b, 802.11g, 802.11n | PCI-E, Mini PCIE | |||||||
| 802.11b, 802.11g | Cardbus, PC Card, PCI | |||||||
| 802.11a, 802.11b, 802.11g | USB | |||||||
| 802.11a, 802.11b, 802.11g | Cardbus, PCI | |||||||
| 802.11a, 802.11b, 802.11g | Cardbus, PCI, Mini PCI | |||||||
| N/A | PC Card | |||||||
| 802.11b | Cardbus, PCI | |||||||
| 802.11b, 802.11g | Mini PCIE | |||||||
| 802.11a, 802.11b, 802.11g | USB | |||||||
| 802.11a, 802.11b, 802.11g | USB | |||||||
| 802.11a, 802.11b, 802.11g | USB | |||||||
| 802.11b, 802.11g | USB | |||||||
| 802.11b, 802.11g | USB | |||||||
| 802.11b, 802.11g | USB | |||||||
| 802.11b, 802.11g | USB | |||||||
| 802.11b | PC Card, PCI, USB | |||||||
| 802.11a, 802.11b, 802.11g | PCI | |||||||
| 802.11b, 802.11g | USB |