Comment 0 for bug 1670041

Revision history for this message
Dmitrii Shcherbakov (dmitriis) wrote : Poor performance of Atheros QCA6174 802.11ac (rev 32) ()

I experience a very poor 802.11ac performance of a QCA6174 Wireless card (Killer Wireless 1535).

This is a dev version of Zesty with a recently released 4.10 kernel:

uname -r
4.10.0-9-generic

dpkg -l linux-firmware | grep ii
ii linux-firmware 1.163 all Firmware for Linux kernel drivers

lspci -vvv:

...
3b:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32)
        Subsystem: Bigfoot Networks, Inc. QCA6174 802.11ac Wireless Network Adapter
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin A routed to IRQ 334
        Region 0: Memory at dd200000 (64-bit, non-prefetchable) [size=2M]
        Capabilities: <access denied>
        Kernel driver in use: ath10k_pci
        Kernel modules: ath10k_pci

-----------------------------------------

Testing wireless speed with RT-87U 802.11ac router shows that the speed is only 27.3 megabits per second which is very low for an 802.11ac card:

iperf -c rtr
------------------------------------------------------------
Client connecting to rtr, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 10.10.10.78 port 48930 connected with 10.10.10.1 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 32.6 MBytes 27.3 Mbits/sec

------------------------------------

For comparison, on the same network (from the same distance to the router) I have the following result with an Intel's card (on a 4.8 kernel, different laptop):

UX32LN:~$ lspci | grep 7260
02:00.0 Network controller: Intel Corporation Wireless 7260 (rev bb)

UX32LN:~$ iperf -c rtr
------------------------------------------------------------
Client connecting to rtr, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 10.10.10.208 port 37196 connected with 10.10.10.1 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 237 MBytes 198 Mbits/sec
administrator@UX32LN:~$ lsp
lspci lspcmcia lspgpot

200 Mbps is much better.

-----------------------------------

Back to the problematic card:

Booted 16.04.2 with the rolling HWE kernel 4.8:

journalctl -k | grep -i ath
Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: enabling device (0000 -> 0002)
Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: pci irq msi oper_irq_mode 2 irq_mode 0 reset_mode 0
Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: Direct firmware load for ath10k/pre-cal-pci-0000:3b:00.0.bin failed with error -2
Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: Direct firmware load for ath10k/cal-pci-0000:3b:00.0.bin failed with error -2
Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: Direct firmware load for ath10k/QCA6174/hw3.0/firmware-5.bin failed with error -2
Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: could not fetch firmware file 'ath10k/QCA6174/hw3.0/firmware-5.bin': -2
Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: qca6174 hw3.2 target 0x05030000 chip_id 0x00340aff sub 1a56:1535
Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: kconfig debug 0 debugfs 1 tracing 1 dfs 0 testmode 0
Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: firmware ver WLAN.RM.2.0-00180-QCARMSWPZ-1 api 4 features wowlan,ignore-otp,no-4addr-pad crc32 75dee6c5
Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: board_file api 2 bmi_id N/A crc32 6fc88fe7
Mar 04 18:28:34 ubuntu kernel: ath10k_pci 0000:3b:00.0: htt-ver 3.26 wmi-op 4 htt-op 3 cal otp max-sta 32 raw 0 hwcrypto 1
Mar 04 18:28:34 ubuntu kernel: ath: EEPROM regdomain: 0x6c
Mar 04 18:28:34 ubuntu kernel: ath: EEPROM indicates we should expect a direct regpair map
Mar 04 18:28:34 ubuntu kernel: ath: Country alpha2 being used: 00
Mar 04 18:28:34 ubuntu kernel: ath: Regpair used: 0x6c
Mar 04 18:28:34 ubuntu kernel: ath10k_pci 0000:3b:00.0 wlp59s0: renamed from wlan0

iperf -c 10.10.10.1
------------------------------------------------------------
Client connecting to 10.10.10.1, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 10.10.10.78 port 43786 connected with 10.10.10.1 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 43.0 MBytes 36.0 Mbits/sec

--------------------------------

Booted on 4.4 General Availability kernel - the card did not work at all:

Mar 04 18:51:54 ubuntu kernel: ath10k_pci 0000:3b:00.0: failed to enable dynamic BW: -11
Mar 04 18:52:00 ubuntu kernel: ath10k_pci 0000:3b:00.0: could not suspend target (-11)

--------------------------------

The card's product name is Killer Wireless-AC 1535:
http://www.killernetworking.com/products/killer-wireless-ac-1535

The card vendor refers to linux-firmware 1.163:
http://www.killernetworking.com/driver-downloads/knowledge-base?view=topic&id=2

---------------------------------

I tend to blame Atheros firmware so I've tried whatever kvalo has in the ath10k-firmware

https://github.com/kvalo/ath10k-firmware

sudo rmmod ath10k_pci ath10k_core ath mac80211 cfg80211

# this gets rid of some of the kernel warnings about firmware but the performance remains low

sudo cp ath10k-firmware/QCA6174/hw3.0/firmware-4.bin_WLAN.RM.2.0-00180-QCARMSWPZ-1 /lib/firmware/ath10k/QCA6174/hw3.0/firmware-5.bin

sudo cp ath10k-firmware/QCA6174/hw3.0/board-2.bin /lib/firmware/ath10k/QCA6174/hw3.0/board-2.bin

sudo modprobe -a ath10k_pci ath10k_core ath mac80211 cfg80211

----------------------------------

Tried both 5.0 GHz and 2.4 GHz modes - got similar results.

ProblemType: Bug
DistroRelease: Ubuntu 17.04
Package: linux-image-4.10.0-9-generic 4.10.0-9.11
ProcVersionSignature: Ubuntu 4.10.0-9.11-generic 4.10.0
Uname: Linux 4.10.0-9-generic x86_64
NonfreeKernelModules: nvidia_uvm nvidia_drm nvidia_modeset nvidia
ApportVersion: 2.20.4-0ubuntu2
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: dima 3458 F.... pulseaudio
 /dev/snd/controlC1: dima 3458 F.... pulseaudio
CurrentDesktop: Unity:Unity7
Date: Sat Mar 4 22:03:00 2017
InstallationDate: Installed on 2017-02-27 (5 days ago)
InstallationMedia: Ubuntu 17.04 "Zesty Zapus" - Alpha amd64 (20170227)
MachineType: Razer Blade
ProcFB: 0 inteldrmfb
ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-4.10.0-9-generic.efi.signed root=UUID=3f515c94-cd91-48b4-80f6-84ec24cb7b8f ro rootflags=subvol=@ quiet button.lid_init_state=open pcie_aspm=off
RelatedPackageVersions:
 linux-restricted-modules-4.10.0-9-generic N/A
 linux-backports-modules-4.10.0-9-generic N/A
 linux-firmware 1.163
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 01/10/2017
dmi.bios.vendor: Razer
dmi.bios.version: 1.00
dmi.board.name: Razer
dmi.board.vendor: Razer
dmi.chassis.type: 9
dmi.chassis.vendor: Razer
dmi.modalias: dmi:bvnRazer:bvr1.00:bd01/10/2017:svnRazer:pnBlade:pvr6.06:rvnRazer:rnRazer:rvr:cvnRazer:ct9:cvr:
dmi.product.name: Blade
dmi.product.version: 6.06
dmi.sys.vendor: Razer