Atheros QCA9377 - Wifi very slow - (Hardware problem)

So I recently installed garuda KDE dragonised, Before i used to work on windows when i dual booted with garuda linux my wifi started coming to slow like 1-10 Kbps only. I tried a lot of way in example restarting wifi module changing wifi settings but it still didn't worked here are my pc specs and kernel info:-

Kernel: 5.15.12-zen1-1-zen x86_64 bits: 64 compiler: gcc v: 11.1.0
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=0609bd75-585a-4048-8700-ebf978c0c3f5 rw rootflags=subvol=@
quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel=3
Desktop: KDE Plasma 5.23.4 tk: Qt 5.15.2 info: latte-dock wm: kwin_x11
vt: 1 dm: SDDM Distro: Garuda Linux base: Arch Linux
Machine:
Type: Laptop System: LENOVO product: 81FK v: Lenovo ideapad 330-15ICH
serial: <superuser required> Chassis: type: 10 v: Lenovo ideapad 330-15ICH
serial: <superuser required>
Mobo: LENOVO model: LNVNB161216 v: SDK0Q55722 WIN
serial: <superuser required> UEFI: LENOVO v: 7ZCN29WW date: 10/24/2018
Battery:
ID-1: BAT0 charge: 39.6 Wh (100.0%) condition: 39.6/43.8 Wh (90.4%)
volts: 12.7 min: 11.2 model: Sunwoda L17D3PB0 type: Li-poly
serial: <filter> status: Full
CPU:
Info: model: Intel Core i5-8300H bits: 64 type: MT MCP arch: Coffee Lake
family: 6 model-id: 0x9E (158) stepping: 0xA (10) microcode: 0xEA
Topology: cpus: 1x cores: 4 tpc: 2 threads: 8 smt: enabled cache:
L1: 256 KiB desc: d-4x32 KiB; i-4x32 KiB L2: 1024 KiB desc: 4x256 KiB
L3: 8 MiB desc: 1x8 MiB
Speed (MHz): avg: 2300 min/max: 800/2300 scaling: driver: intel_pstate
governor: powersave cores: 1: 2300 2: 2300 3: 2300 4: 2300 5: 2300 6: 2300
7: 2300 8: 2300 bogomips: 36799
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Vulnerabilities:
Type: itlb_multihit status: KVM: VMX disabled
Type: l1tf
mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
Type: mds mitigation: Clear CPU buffers; SMT vulnerable
Type: meltdown mitigation: PTI
Type: spec_store_bypass
mitigation: Speculative Store Bypass disabled via prctl
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional,
IBRS_FW, STIBP: conditional, RSB filling
Type: srbds mitigation: Microcode
Type: tsx_async_abort status: Not affected
Graphics:
Device-1: Intel CoffeeLake-H GT2 [UHD Graphics 630] vendor: Lenovo
driver: i915 v: kernel bus-ID: 00:02.0 chip-ID: 8086:3e9b class-ID: 0300
Device-2: NVIDIA GP107M [GeForce GTX 1050 Mobile] vendor: Lenovo
driver: nvidia v: 495.46 alternate: nouveau,nvidia_drm bus-ID: 01:00.0
chip-ID: 10de:1c8d class-ID: 0302
Device-3: Realtek EasyCamera type: USB driver: uvcvideo bus-ID: 1-8:3
chip-ID: 0bda:58ea class-ID: 0e02 serial: <filter>
Display: x11 server: X.Org 1.21.1.2 compositor: kwin_x11 driver:
loaded: modesetting,nvidia display-ID: :0 screens: 1
Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.0x11.2")
s-diag: 582mm (22.9")
Monitor-1: eDP-1 res: 1920x1080 hz: 60 dpi: 142
size: 344x193mm (13.5x7.6") diag: 394mm (15.5")
Message: Unable to show advanced data. Required tool glxinfo missing.
Audio:
Device-1: Intel Cannon Lake PCH cAVS vendor: Lenovo driver: snd_hda_intel
v: kernel alternate: snd_soc_skl,snd_sof_pci_intel_cnl bus-ID: 00:1f.3
chip-ID: 8086:a348 class-ID: 0403
Sound Server-1: ALSA v: k5.15.12-zen1-1-zen running: yes
Sound Server-2: PulseAudio v: 15.0 running: no
Sound Server-3: PipeWire v: 0.3.42 running: yes
Network:
Device-1: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter
vendor: Lenovo driver: ath10k_pci v: kernel bus-ID: 07:00.0
chip-ID: 168c:0042 class-ID: 0280
IF: wlp7s0 state: up mac: <filter>
Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
vendor: Lenovo driver: r8169 v: kernel port: 3000 bus-ID: 08:00.0
chip-ID: 10ec:8168 class-ID: 0200
IF: enp8s0 state: down mac: <filter>
Bluetooth:
Device-1: Qualcomm Atheros type: USB driver: btusb v: 0.8 bus-ID: 1-14:4
chip-ID: 0cf3:e500 class-ID: e001
Report: bt-adapter ID: hci0 rfk-id: 2 state: up address: <filter>
Drives:
Local Storage: total: 931.51 GiB used: 11.35 GiB (1.2%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/sda maj-min: 8:0 vendor: Toshiba model: MQ04ABF100
size: 931.51 GiB block-size: physical: 4096 B logical: 512 B
speed: 6.0 Gb/s type: HDD rpm: 5400 serial: <filter> rev: 0E scheme: GPT
Partition:
ID-1: / raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 11.35 GiB (1.2%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 576 KiB (0.2%) fs: vfat dev: /dev/sda1 maj-min: 8:1
ID-3: /home raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 11.35 GiB (1.2%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
ID-4: /var/log raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 11.35 GiB (1.2%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
ID-5: /var/tmp raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 11.35 GiB (1.2%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
ID-1: swap-1 type: zram size: 7.64 GiB used: 0 KiB (0.0%) priority: 100
dev: /dev/zram0
Sensors:
System Temperatures: cpu: 39.0 C pch: 41.0 C mobo: N/A
Fan Speeds (RPM): N/A
Info:
Processes: 279 Uptime: 26m wakeups: 1 Memory: 7.64 GiB
used: 2.42 GiB (31.7%) Init: systemd v: 250 tool: systemctl Compilers:
gcc: 11.1.0 clang: 13.0.0 Packages: pacman: 1206 lib: 298 Shell: fish
v: 3.3.1 default: Bash v: 5.1.12 running-in: konsole inxi: 3.3.11

I hope I get replied soon!
Thanks,
Ayush

Firstly, welcome to the forum.

Thank you for including your inxi -Faz output as that makes it much easier to provide effective support. However, please take a look at how I reformatted your inxl output, so that in the future your outputs are formatted correctly and more easily readable.

Unfortunately, your background information is somewhat lacking.

The above kind of statement isn’t very helpful. What alterations exactly did you attempt? Details are required when troubleshooting remotely, as helpers aren’t there looking over your shoulder as you make changes to know what you’ve done. Please list what you’ve already attempted so that others don’t waste their time suggesting things you’ve already tried.

Also, please update your system as it is outdated.

3 Likes

I updated my system. Heres the command i tried to fix it,
echo "options iwlwifi 11n_disable=8" | sudo tee -a /etc/modprobe.d/iwlwifi.conf

Kernel: 5.15.12-zen1-1-zen x86_64 bits: 64 compiler: gcc v: 11.1.0
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=0609bd75-585a-4048-8700-ebf978c0c3f5 rw rootflags=subvol=@
quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0 loglevel=3
Desktop: KDE Plasma 5.23.5 tk: Qt 5.15.2 info: latte-dock wm: kwin_x11
vt: 1 dm: SDDM Distro: Garuda Linux base: Arch Linux
Machine:
Type: Laptop System: LENOVO product: 81FK v: Lenovo ideapad 330-15ICH
serial: <superuser required> Chassis: type: 10 v: Lenovo ideapad 330-15ICH
serial: <superuser required>
Mobo: LENOVO model: LNVNB161216 v: SDK0Q55722 WIN
serial: <superuser required> UEFI: LENOVO v: 7ZCN29WW date: 10/24/2018
Battery:
ID-1: BAT0 charge: 17.6 Wh (44.4%) condition: 39.6/43.8 Wh (90.4%)
volts: 10.8 min: 11.2 model: Sunwoda L17D3PB0 type: Li-poly
serial: <filter> status: Discharging
CPU:
Info: model: Intel Core i5-8300H bits: 64 type: MT MCP arch: Coffee Lake
family: 6 model-id: 0x9E (158) stepping: 0xA (10) microcode: 0xEA
Topology: cpus: 1x cores: 4 tpc: 2 threads: 8 smt: enabled cache:
L1: 256 KiB desc: d-4x32 KiB; i-4x32 KiB L2: 1024 KiB desc: 4x256 KiB
L3: 8 MiB desc: 1x8 MiB
Speed (MHz): avg: 900 min/max: 800/2300 scaling: driver: intel_pstate
governor: powersave cores: 1: 900 2: 900 3: 900 4: 900 5: 900 6: 900 7: 900
8: 900 bogomips: 36799
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Vulnerabilities:
Type: itlb_multihit status: KVM: VMX disabled
Type: l1tf
mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
Type: mds mitigation: Clear CPU buffers; SMT vulnerable
Type: meltdown mitigation: PTI
Type: spec_store_bypass
mitigation: Speculative Store Bypass disabled via prctl
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional,
IBRS_FW, STIBP: conditional, RSB filling
Type: srbds mitigation: Microcode
Type: tsx_async_abort status: Not affected
Graphics:
Device-1: Intel CoffeeLake-H GT2 [UHD Graphics 630] vendor: Lenovo
driver: i915 v: kernel bus-ID: 00:02.0 chip-ID: 8086:3e9b class-ID: 0300
Device-2: NVIDIA GP107M [GeForce GTX 1050 Mobile] vendor: Lenovo
driver: nvidia v: 495.46 alternate: nouveau,nvidia_drm bus-ID: 01:00.0
chip-ID: 10de:1c8d class-ID: 0302
Device-3: Realtek EasyCamera type: USB driver: uvcvideo bus-ID: 1-8:3
chip-ID: 0bda:58ea class-ID: 0e02 serial: <filter>
Display: x11 server: X.Org 1.21.1.2 compositor: kwin_x11 driver:
loaded: modesetting,nvidia display-ID: :0 screens: 1
Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.0x11.2")
s-diag: 582mm (22.9")
Monitor-1: eDP-1 res: 1920x1080 hz: 60 dpi: 142
size: 344x193mm (13.5x7.6") diag: 394mm (15.5")
Message: Unable to show advanced data. Required tool glxinfo missing.
Audio:
Device-1: Intel Cannon Lake PCH cAVS vendor: Lenovo driver: snd_hda_intel
v: kernel alternate: snd_soc_skl,snd_sof_pci_intel_cnl bus-ID: 00:1f.3
chip-ID: 8086:a348 class-ID: 0403
Sound Server-1: ALSA v: k5.15.12-zen1-1-zen running: yes
Sound Server-2: PulseAudio v: 15.0 running: no
Sound Server-3: PipeWire v: 0.3.43 running: yes
Network:
Device-1: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter
vendor: Lenovo driver: ath10k_pci v: kernel bus-ID: 07:00.0
chip-ID: 168c:0042 class-ID: 0280
IF: wlp7s0 state: up mac: <filter>
Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
vendor: Lenovo driver: r8169 v: kernel port: 3000 bus-ID: 08:00.0
chip-ID: 10ec:8168 class-ID: 0200
IF: enp8s0 state: down mac: <filter>
Bluetooth:
Device-1: Qualcomm Atheros type: USB driver: btusb v: 0.8 bus-ID: 1-14:4
chip-ID: 0cf3:e500 class-ID: e001
Report: bt-adapter ID: hci0 rfk-id: 2 state: up address: <filter>
Drives:
Local Storage: total: 931.51 GiB used: 15.44 GiB (1.7%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/sda maj-min: 8:0 vendor: Toshiba model: MQ04ABF100
size: 931.51 GiB block-size: physical: 4096 B logical: 512 B
speed: 6.0 Gb/s type: HDD rpm: 5400 serial: <filter> rev: 0E scheme: GPT
Partition:
ID-1: / raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 15.44 GiB (1.7%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 576 KiB (0.2%) fs: vfat dev: /dev/sda1 maj-min: 8:1
ID-3: /home raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 15.44 GiB (1.7%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
ID-4: /var/log raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 15.44 GiB (1.7%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
ID-5: /var/tmp raw-size: 931.22 GiB size: 931.22 GiB (100.00%)
used: 15.44 GiB (1.7%) fs: btrfs dev: /dev/sda2 maj-min: 8:2
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
ID-1: swap-1 type: zram size: 7.64 GiB used: 91.8 MiB (1.2%)
priority: 100 dev: /dev/zram0
Sensors:
System Temperatures: cpu: 38.0 C pch: 46.0 C mobo: N/A
Fan Speeds (RPM): N/A
Info:
Processes: 294 Uptime: 2h 0m wakeups: 1 Memory: 7.64 GiB
used: 3.78 GiB (49.5%) Init: systemd v: 250 tool: systemctl Compilers:
gcc: 11.1.0 clang: 13.0.0 Packages: pacman: 1208 lib: 299 Shell: fish
v: 3.3.1 default: Bash v: 5.1.16 running-in: konsole inxi: 3.3.12

This is the specs after updating

Ya but unfortunately, that command will do you absolutely no good, as that command is for an Intel adapter and yours is an Atheros based adapter.

Delete that file, then try this.

The following command will automatically add helpful kernel boot parameters to /etc/default/grub:

sudp cp /etc/default/grub /etc/default/grub.bak && sudo sed '/^GRUB_CMDLINE_LINUX_DEFAULT=/s/"$/ ath10k_core.nohwcrypt=1 pcie_aspm=off "/g' -i /etc/default/grub

After adding the boot parameter(s), run:

sudo update-grub 

Then, reboot, and test your connection for improvement.

2 Likes

Okay, iamma try it

Careful here.
The kernel version changed for sure.
You must reboot after a kernel update.

2 Likes

If the kernel boot parameters alone make no difference, then also try disabling IPv6. I would recommend doing that through your router settings if you haven't already rebooted your router. Be sure to reboot your computer also.

Otherwise, set IPv6 to "ignore", or be sure that "IPV6 is required for this connection" is not checked in your wifi connection's properties settings in Network Manager. Reboot both the computer and router after disabling IPv6.

Another problem came it's like when i connect to the wifi it stay connected for 1-2 minutes after it show no internet then .-. . i rebooted too

Install linux-firmware-git then reboot.

Disable Network Managers' power saving features:

NetworkManager can sometimes disrupt connectivity with a too aggressive power saving setting.

You can disable Network Manager's power saving features by creating this configuration file:

/etc/NetworkManager/conf.d/default-wifi-powersave-on.conf

Add the following contents to the conf file:

[connection]
wifi.powersave = 0

A setting of "0" will totally disable power saving features in the WiFi adapter.

A setting of "2" or "1" will be less aggressive, but still leave powersaving enabled.

1 Like

I found something strange, The router i was using before giving slow speed. When i tryed a 2nd router it giving high speed like 110 mpbs. But the first router giving good speed in other devices but not in garuda, Do you got any idea why its happening?

1 Like

Do you use Cloudflare as a DNS server, because some routers don't work well with it for some reason in Linux.

DNS server

Post

cat /etc/resolv.conf

Anyways, Thanks for your help and for replying quicky!

alright one sec

Generated by NetworkManager
nameserver 208.67.220.220

I would assume those are your ISP's DNS nameservers.

Nice work diagnosing the cause.

Thank you, and welcome to the Garuda community.

PS.

BTW, the changes to grub can be reversed with:

sudp cp /etc/default/grub.bak /etc/default/grub && sudo update-grub

Reboot.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.