Qualcomm Atheros Device 0042 (rev 31) driver
I'm trying to get WiFi to work (device: Qualcomm Atheros Device 0042 (rev 31)
) and I found the following line in the dmesg
output.
Direct firmware load for ath10k/cal-pci-0000:02:00.0.bin failed with error -2
Now, I guess this driver is not included in my kernel (Linux 4.4.0-62-generic #83-Ubuntu SMP Wed Jan 18 14:10:15 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux; Ubuntu Linux 16.04
), so I have to clone The ath10k
GitHub repo.
Which files do I have to copy to which directories i.o. to install the driver?
EDIT
After downloading the firmware package, installing it and rebooting the device is still not working.
When I try to connect I just get (in the dmesg
output):
IPv6: ADDRCONF(NETDEV_UP): wlp2s0: link is not ready
The command dmesg | grep ath
gives me
[ 3.497692] ath10k_pci 0000:02:00.0: pci irq msi-x interrupts 8 irq_mode 0 reset_mode 0
[ 3.743026] ath10k_pci 0000:02:00.0: Direct firmware load for ath10k/cal-pci-0000:02:00.0.bin failed with error -2
[ 6.290044] ath10k_pci 0000:02:00.0: qca9377 hw1.1 (0x05020001, 0x003821ff sub 11ad:08a6) fw WLAN.TF.1.0-00267-1 fwapi 5 bdapi 2 htt-ver 3.1 wmi-op 4 htt-op 3 cal otp max-sta 32 raw 0 hwcrypto 1 features ignore-otp
[ 6.290049] ath10k_pci 0000:02:00.0: debug 0 debugfs 1 tracing 1 dfs 0 testmode 0
[ 6.291556] ath: EEPROM regdomain: 0x69
[ 6.291559] ath: EEPROM indicates we should expect a direct regpair map
[ 6.291562] ath: Country alpha2 being used: 00
[ 6.291563] ath: Regpair used: 0x69
[ 6.298835] ath10k_pci 0000:02:00.0 wlp2s0: renamed from wlan0
Quite often, the driver looks for one of several firmware files. Failing to find the first, it prints the 'failed' message, looks for the second (or third), finds it and loads the firmware.
I suggest that you update the firmware as follows; with a working internet connection, please open a terminal and do:
wget http://mirrors.kernel.org/ubuntu/pool/main/l/linux-firmware/linux-firmware_1.163_all.deb
sudo dpkg -i linux-firmware*.deb
Reboot and tell us if your wireless is working. If you are still having issues, please show us:
dmesg | grep ath
NOTE: Edited to update the link that changes very often.