Ubuntu 16.04 中的 Wi-Fi 固件崩溃

Ubuntu 16.04 中的 Wi-Fi 固件崩溃

我有一台 Qualcomm Atheros QCA6174 802.11ac 无线网络适配器,在重启电脑后可以正常工作,但如果我通过屏幕右上角的 GUI 控件禁用并重新启用 Wi-Fi,它就永远不会再打开,我必须重启。我有理由相信这是一个固件问题。以下情况是否看起来有问题:

lspci对于我的 Wi-Fi 卡:

03:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 20)
    Subsystem: Lenovo QCA6174 802.11ac Wireless Network Adapter
    Flags: bus master, fast devsel, latency 0, IRQ 52
    Memory at c4000000 (64-bit, non-prefetchable) [size=2M]
    Capabilities: [40] Power Management version 3
    Capabilities: [50] MSI: Enable+ Count=8/8 Maskable+ 64bit-
    Capabilities: [70] Express Endpoint, MSI 00
    Capabilities: [100] Advanced Error Reporting
    Capabilities: [148] Virtual Channel
    Capabilities: [168] Device Serial Number 00-00-00-00-00-00-00-00
    Capabilities: [178] Latency Tolerance Reporting
    Capabilities: [180] L1 PM Substates
    Kernel driver in use: ath10k_pci
    Kernel modules: ath10k_pci

我的dmesg开机后):

[   12.530934] ath10k_pci 0000:03:00.0: pci irq msi-x interrupts 8 irq_mode 0 reset_mode 0
[   12.880922] ath10k_pci 0000:03:00.0: Direct firmware load for ath10k/cal-pci-0000:03:00.0.bin failed with error -2
[   14.538317] ath10k_pci 0000:03:00.0: qca6174 hw2.1 (0x05010000, 0x003405ff sub 17aa:3044) fw SW_RM.1.1.1-00157-QCARMSWPZ-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,no-4addr-pad
[   14.538321] ath10k_pci 0000:03:00.0: debug 0 debugfs 1 tracing 1 dfs 0 testmode 0

我的dmesg禁用 Wi-Fi 后):

[  657.466226] ath10k_pci 0000:03:00.0: firmware crashed! (uuid a1205b5c-0343-4aff-bda6-bb1e8842ada8)
[  657.466234] ath10k_pci 0000:03:00.0: qca6174 hw2.1 (0x05010000, 0x003405ff sub 17aa:3044) fw SW_RM.1.1.1-00157-QCARMSWPZ-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,no-4addr-pad
[  657.466236] ath10k_pci 0000:03:00.0: debug 0 debugfs 1 tracing 1 dfs 0 testmode 0
[  657.468246] ath10k_pci 0000:03:00.0: firmware register dump:
[  657.468248] ath10k_pci 0000:03:00.0: [00]: 0x05010000 0x00000000 0x0092E4DC 0xF6151216
[  657.468249] ath10k_pci 0000:03:00.0: [04]: 0x0092E4DC 0x00060130 0x00000018 0x0041A760
[  657.468251] ath10k_pci 0000:03:00.0: [08]: 0xF6151202 0x00400000 0x00000000 0x000A5C88
[  657.468252] ath10k_pci 0000:03:00.0: [12]: 0x00000009 0x00000000 0x0096C09C 0x0096C0A7
[  657.468253] ath10k_pci 0000:03:00.0: [16]: 0x0096BDBC 0x009286B6 0x00000000 0x009287BD
[  657.468254] ath10k_pci 0000:03:00.0: [20]: 0x4092E4DC 0x0041A710 0x00000000 0x0F000000
[  657.468256] ath10k_pci 0000:03:00.0: [24]: 0x809432A7 0x0041A770 0x0040D400 0xC092E4DC
[  657.468257] ath10k_pci 0000:03:00.0: [28]: 0x80942BC4 0x0041A790 0xF6151202 0x00400000
[  657.468258] ath10k_pci 0000:03:00.0: [32]: 0x80947BA7 0x0041A7B0 0x00404BF8 0x00413980
[  657.468259] ath10k_pci 0000:03:00.0: [36]: 0x809BDECC 0x0041A7D0 0x00404BF8 0x00413980
[  657.468261] ath10k_pci 0000:03:00.0: [40]: 0x8099638C 0x0041A7F0 0x00404BF8 0x00000000
[  657.468262] ath10k_pci 0000:03:00.0: [44]: 0x80992076 0x0041A810 0x004084F0 0x00405244
[  657.468263] ath10k_pci 0000:03:00.0: [48]: 0x80996BD3 0x0041A830 0x004084F0 0x00000000
[  657.468264] ath10k_pci 0000:03:00.0: [52]: 0x800B4405 0x0041A850 0x00422318 0x00005002
[  657.468266] ath10k_pci 0000:03:00.0: [56]: 0x809A6C34 0x0041A8E0 0x0042932C 0x0042CA20
[  657.468313] ath10k_pci 0000:03:00.0: could not suspend target (-108)
[  657.544844] ath10k_pci 0000:03:00.0: cannot restart a device that hasn't been started

显然这里面有问题。

我已尝试过: 我按照类似帖子中的说明重新下载了 ath10k_pci 固件,并执行了“重命名为 firmware-5.bin 和 firmware-4.bin”的操作。这没有用,我确信我做对了。除此之外,我不知道该怎么做。

编辑:我认为其中非常重要的一点是,只有当我重新启动时,我的 Wi-Fi 才能正常工作。一旦我通过系统托盘中的 GUI 图标禁用 Wi-Fi,驱动程序就会崩溃,我必须重新启动。

答案1

我将 linux-firmware 软件包从 1.157.13 降级到 1.157。我从https://launchpad.net/ubuntu/xenial/amd64/linux-firmware/1.157并使用以下命令进行安装:

sudo dpkg -i linux-firmware_1.157_all.deb

到目前为止,一切都很好。 :)

答案2

好的,我修好了。经过几个小时的调整和暴力破解,我终于从各种 git 存储库中找到了固件文件和板文件的配置。对于我的系统,我需要 kvalo board-2.bin 和 atondwal board.bin 和 firmware-5.bin。对于任何遇到与我相同问题的人,都可以从以下位置找到这些:

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

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

只需尝试这些存储库中的不同固件和主板文件组合,直到找到正确的组合。当您让它工作时,不要试图理解它,只需接受它的工作并继续前进 ;)

答案3

我仍然遇到(2018 年 6 月,Ubuntu 18.04,最新的 Linux 固件)ath10k_pci 固件崩溃的问题,主要是在笔记本电脑进入挂起模式后。

我目前的解决方法是通过以下方式重新启动它:

sudo rmmod ath10k_pci
sudo modprobe ath10k_pci
sudo ifup -a

答案4

上游已将此标记为硬件错误

https://bugzilla.kernel.org/show_bug.cgi?id=196649#c32

目前最好的解决方案似乎是更换 wifi 卡

相关内容