WiFi unstable after 17.10 update
I had the same issue and found a Debian bug report that also has a solution. See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=879184
The solution is simple: install updated firmware from firmware repository provided by Qualcomm.
Detailed steps:
Download https://github.com/kvalo/ath10k-firmware/blob/master/QCA6174/hw3.0/board-2.bin and overwrite /lib/firmware/ath10k/QCA6174/hw3.0/board-2.bin with the downloaded file.
Download https://github.com/kvalo/ath10k-firmware/blob/master/QCA6174/hw3.0/4.4.1/firmware-6.bin_WLAN.RM.4.4.1-00065-QCARMSWP-1 and overwrite /lib/firmware/ath10k/QCA6174/hw3.0/firmware-6.bin.
Restart
This bug has been reported on launchpad: https://bugs.launchpad.net/bugs/1743279 If you're affected, please tell them in the bug report so they can fix the bug ASAP.
The firmware-6.bin
file needs to be updated. Ubuntu currently ships version WLAN.RM.4.4-00022-QCARMSWPZ-2
and the fix for this issue was released in version WLAN.RM.4.4.1-00051-QCARMSWP-1
, which means you need some version later than the latter for the card to work properly on >4.12 kernels.
As of today, this bug can be fixed by simply replacing the board-2.bin
(not actually required but recommended) and firmware-6.bin
files with what's currently in the upstream repository for linux-firmware
, or by grabbing the firmware-6.bin
from kvalo's repository for the proper version.
You can grab the correct version from kvalo's repository, which is guaranteed to always work (if you don't require the new board-2.bin
as well).
These commands below will automate the replacement of the files:
$ sudo wget https://github.com/kvalo/ath10k-firmware/raw/master/QCA6174/hw3.0/4.4.1/firmware-6.bin_WLAN.RM.4.4.1-00051-QCARMSWP-1 -O /lib/firmware/ath10k/QCA6174/hw3.0/firmware-6.bin
Alternatively, you can grab the files from the current state of linux-firmware
These commands below will automate the replacement of the files from what's upstream (notice these commands might work now but there's no guarantee they will work in the future because the repository's contents can change, although they will hardly ever break things like this).
$ sudo wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/ath10k/QCA6174/hw3.0/board-2.bin -O /lib/firmware/ath10k/QCA6174/hw3.0/board-2.bin
$ sudo wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/ath10k/QCA6174/hw3.0/firmware-6.bin -O /lib/firmware/ath10k/QCA6174/hw3.0/firmware-6.bin
Then reboot.