Archive for Juni 2017

Linux Wifi on Thinkpad E470

Juni 11, 2017

So wifey needed a new computer, and we bought a Thinkpad E470.

Which so far is running ok in Ubuntu 16.04 except the WIFI card. Which is a big showstopper.

It seems the Thinkpad E470 comes with different Atheros 10k based chipsets, and this one had a QCA9377. It seems the brand name is Atheros Killer N1525 Wireless-AC, but I am not 100% sure. Support for the QCA9377 Wlan was only recently added to various distributions, as far as I know you need at least a kernel 4.8. However even then the Wifi connection drops randomly. Googling revealed that this is apparently a common bug (link in German).

After a dropout, manual reconnection is then required – in everyday life this is quite annoying. This is apparently due to a firmware crash. You can check if you are affected by this bug by

dmesg| grep ath10k

which should yield something like:

[ 715.689510] ath10k_pci 0000:05:00.0: firmware crashed! (uuid bf474904-06ea-4611-80b3-949e2ac31e80)
[ 715.689560] ath10k_pci 0000:05:00.0: qca6174 hw3.2 target 0x05030000 chip_id 0x00340aff sub 17aa:0827
[ 715.689571] ath10k_pci 0000:05:00.0: kconfig debug 0 debugfs 1 tracing 1 dfs 0 testmode 0
[ 715.691880] ath10k_pci 0000:05:00.0: firmware ver WLAN.RM.2.0-00180-QCARMSWPZ-1 api 5 features wowlan,ignore-otp,no-4addr-pad crc32 75dee6c5
[ 715.692947] ath10k_pci 0000:05:00.0: board_file api 2 bmi_id N/A crc32 6fc88fe7
[ 715.692963] ath10k_pci 0000:05:00.0: htt-ver 3.26 wmi-op 4 htt-op 3 cal otp max-sta 32 raw 0 hwcrypto 1
[ 715.694993] ath10k_pci 0000:05:00.0: firmware register dump:
[ 715.695012] ath10k_pci 0000:05:00.0: [00]: 0x05030000 0x000015B3 0x009860FA 0x00955B31

This behaviour is documented also here, but it seems no patch has been issued. In the above linked thread on github, someone observed that these connection dropouts occur only when frequency changes are isssued by the router. I set a fixed frequency (i.e. Wifi channel) on our AVM FRITZ!Box 7330, but this did not help at all. Running Ubuntu 16.04, I also tried updating to a very recent mainline kernel build (Kernel 4.11), however again this did not help at all.

In the end, I gave up an ordered an Intel Wireless 8265. There is support for this (link in German) one in Linux since Kernel 4.6. Fortunately, the Wifi card can easily replaced on the Thinkpad E470, since the card is socketed in an M.2 slot, and the notebook-case itself is easy to open. Also, as the above link mentions, there seems to be no hardware white-list, i.e. no restriction w.r.t. the choice of the Wlan module.

Nevertheless, it is quite annoying that in the year 2017 there are still these issues. Reminds me of the old days with ndiswrapper. If you want to run Linux, you still need to do endless hours of research before buying a notebook.

Which in this case I did, e.g. this compatibility test (link in German), but they apparently missed that bug in the test. Note that the Thinkapd E470 is also Ubuntu certified. I guess that says a lot about the value of such kind of certification program.

Let’s see if the Intel Wifi will work…

*Update: The Intel Wifi card works without problem. No connection losses anymore. Haven’t run any benchmarks w.r.t. WLAN performance, but everything seems to work fine! You can say what you want, but Intel’s open source policy is really excellent…“