Solucionar problema de desconección Wifi en Ubuntu con atheros

Algunos chipset Atheros como el AR5001 o el AR5007 tienen un problema en el soporte ASPM desde el hardware, lo que causa que veamos el error “ath5k unsuported jumbo” y que tengamos alto consumo de cpu por el driver ath5k y desconecciónes randómicas.

La sulución al problema es modificar la raiz compleja y el endpoint de nuestra tarjeta wifi, y la forma de hacerlo no es muy dificil que digamos, solo hay que seguir los pasos que muestro a continuación:

1) Bajamos #mce_temp_url#

2) Obtenemos nuestro root complex

$ lspci -tv
0000:00
...
+-1c.2-[0000:03]----00.0 Atheros Communications Inc. AR5001 Wireless Network
Adapter
...

En este ejemplo nuestro root complex es 00:1c.2

3) Obtenemos nuestro endpoint

$ lspci
...
03:00.0 Ethernet controller: Atheros Communications Inc. AR5001 Wireless Network
Adapter (rev 01)
...

En este ejemplo nuestro endpoint es 03:00.0

4) Ahora debemos editar el archivo enable-aspm que descargamos en el punto 1.

# You just need to modify these three values: 

ROOT_COMPLEX="00:1c.2" 
ENDPOINT="03:00.0" 

ASPM_SETTING=2

5) Finalmente ejecutamos el script y deberíamos ver lo siguiente:

vo-one <at> acerone:~$ sudo bash enable-aspm 
[sudo] password for vo-one: 
Root complex: 
00:1c.2 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 3 (rev 
02) 
0x50 : 0x43 --> 0x42 ... [SUCCESS]] 
L1 only 

Endpoint: 
03:00.0 Ethernet controller: Atheros Communications Inc. AR5001 Wireless Network 
Adapter (rev 01) 
0x70 : 0x4B --> 0x4A ... [SUCCESS]] 
L1 only

6) Por último haremos el script ejecutable y lo configuraremos para que se ejecute al inicio del sistema.

sudo chmod +x enable-aspm
sudo cp enable-aspm /usr/bin

Para que se ejecute al inicio del sistema editados el archivo /etc/rc.conf y agregamos “enable-aspm” sin comillas antes de la línea “exit 0;”.