That’s what we’re going to do; add the device ID to the driver files and compile a new version. Please be sure you have a wired ethernet connection and do:
sudo apt-get install linux-headers-generic build-essential
Now go here and download compat-wireless-2.6.tar.bz2 to your desktop. http://linuxwireless.org/
When you have the file on your desktop, right-click it and select Extract Here. Open the folder it extracts and drill down to drivers/net/wireless/ath/ath9k. Open the file pci.c with any text editor such as gedit. Add your device ID as follows:
static DEFINE_PCI_DEVICE_TABLE(ath_pci_id_table) = {
{ PCI_VDEVICE(ATHEROS, 0x0023) }, /* PCI */
{ PCI_VDEVICE(ATHEROS, 0x0024) }, /* PCI-E */
{ PCI_VDEVICE(ATHEROS, 0x0027) }, /* PCI */
{ PCI_VDEVICE(ATHEROS, 0x0029) }, /* PCI */
{ PCI_VDEVICE(ATHEROS, 0x002A) }, /* PCI-E */
{ PCI_VDEVICE(ATHEROS, 0x002B) }, /* PCI-E */
{ PCI_VDEVICE(ATHEROS, 0x002C) }, /* PCI-E 802.11n bonded out */
{ PCI_VDEVICE(ATHEROS, 0x002D) }, /* PCI */
{ PCI_VDEVICE(ATHEROS, 0x002E) }, /* PCI-E */
{ PCI_VDEVICE(ATHEROS, 0x0030) }, /* PCI-E AR9300 */
{ PCI_VDEVICE(ATHEROS, 0x0032) }, /* PCI-E AR9485 */
{ PCI_VDEVICE(ATHEROS, 0x0033) }, /* PCI-E AR9580 */
{ PCI_VDEVICE(ATHEROS, 0x0034) }, /* PCI-E AR9462 */
{ PCI_VDEVICE(ATHEROS, 0x0037) }, /* PCI-E */
{ 0 }
};
Caution! Spacing, punctuation, etc. are crucial. Proofread twice before saving and closing gedit. All the text before and after the line I’ve highlighted remains unchanged.
In the file drivers/net/wireless/ath/ath9k/hw.c, change around line 680 as I’ve highlighted:
case AR9300_DEVID_AR9485_PCIE:
case AR9300_DEVID_AR9330:
case AR9300_DEVID_AR9340:
case AR9300_DEVID_AR9580:
case AR9300_DEVID_AR9462:
case AR9485_DEVID_AR1111:
break;
default:
if (common->bus_ops->ath_bus_type == ATH_USB)
break;
Also modify drivers/net/wireless/ath/ath9k/hw.h around line 51 as highlighted:
#define AR9300_DEVID_AR9340 0x0031
#define AR9300_DEVID_AR9485_PCIE 0x0032
#define AR9300_DEVID_AR9580 0x0033
#define AR9300_DEVID_AR9462 0x0034
#define AR9300_DEVID_AR9330 0x0035
#define AR9485_DEVID_AR1111 0x0037
#define AR5416_AR9100_DEVID 0x000b
#define AR_SUBVENDOR_ID_NOG 0x0e11
#define AR_SUBVENDOR_ID_NEW_A 0x7065
#define AR5416_MAGIC 0x19641014
Now we recompile:
cd Desktop/compat-wireless-2012-05-10
sudo su
./scripts/driver-select restore
./scripts/driver-select ath9k
make clean
make
make install
exit
Reboot