List of Wi-Fi Device IDs in Linux

Wi-Fi devices recognized by the Linux kernel. For a detailed list of supported USB adapters and their properties, see: DNI:USB WiFi adapters w/ probable Linux support.

Only IDs mentioned in /drivers/net/wireless are listed here.

Other drivers, such as drivers from /drivers/staging or drivers not currently in the kernel such as 3rd-party drivers on github, vendor drivers, ndis-wrapper drivers etc... are not listed here.

Table
{| class="wikitable sortable" cellpadding="3px" style="border: 1px solid black; border-spacing: 0px; width: 100%;" ! style="border: solid grey; border-width: 0 1px 0 0; width: 120px;" | Device ID ! style="border: solid grey; border-width: 0 1px 0 0; width: 90px;" | First seen kernel version ! style="border: solid grey; border-width: 0 1px 0 0; width: 80px;" | First seen kernel date ! style="border: solid grey; border-width: 0 1px 0 0;" | Chipsets / Adapters ! style="border: solid grey; border-width: 0 1px 0 0; width: 120px;" | Kernel modules

Workaround for missing device IDs (runtime device ID insertion)
If a device ID is not listed, but the chipset is supported by an existent kernel module, it may be possible to get the device operational by loading the kernel module manually and then feeding it the new ID.

For example, the following commands will allow the USB ID (2001:3c20) of the D-Link DWA-140 rev D1 to be recognized by the rt2800usb kernel module.. modprobe rt2800usb echo -n "2001 3c20" > /sys/bus/usb/drivers/rt2800usb/new_id

To persist across reboots, the process must be repeated again - you can either shove commands to re-insert the USB ID in a script executed upon boot or you will need to recompile the driver (using backports [latest stable releases] would be recommended).