Qualcomm Atheros WiFI、联想 v310 和 Ubuntu 16.04

Qualcomm Atheros WiFI、联想 v310 和 Ubuntu 16.04

最近购买了联想 V310,配有 Qualcomm Atheros wifi 卡。其余硬件组件工作正常,问题只出在 wifi 上。问题:

  • 在安装过程中,当系统要求我连接到 wifi 时,我只得到一个选项“Qualcomm Atheros”,而不是无线网络。
  • 安装并完全更新 Ubuntu 后,wifi 无法使用。wifi 下拉菜单中有一个名为“启用无线”的选项。我启用了它,但什么也没发生。仍然没有 Wifi。

我尝试了以下解决方案:

似乎没什么效果。知道我下一步该尝试什么吗?

根据要求,输出如下:

03:00.0 Network controller [0280]: Qualcomm Atheros Device [168c:0042] (rev 30)
Subsystem: Lenovo Device [17aa:4035]
Kernel driver in use: ath10k_pci
Kernel modules: ath10k_pci


0: ideapad_wlan: Wireless LAN
    Soft blocked: no
    Hard blocked: yes
1: ideapad_bluetooth: Bluetooth
    Soft blocked: yes
    Hard blocked: yes
2: hci0: Bluetooth
    Soft blocked: no
    Hard blocked: no
3: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no

答案1

您需要禁用ideapad_laptop阻止 Wi-Fi 的模块。

在终端中运行

sudo tee /etc/modprobe.d/blacklist-ideapad.conf <<< "blacklist ideapad_laptop"

然后重新启动。

答案2

您无需ideapad_laptop再禁用;只需将 Linux 内核更新到最新版本(或 v4.13 之后的任何版本)。要了解您当前拥有的版本

uname -r

如果您使用的是旧版本,则可以使用更新管理器安装较新的版本(例如,查看 > Linux 内核)。如果更新管理器没有 v4.13+,则可以使用Ubuntu wiki 主线内核构建页面. 只需从Ubuntu 内核页面,安装并重启。

我遇到了完全相同的问题,并且它帮我解决了这个问题。

如果你好奇为什么会发生这种情况,以下是我对这个问题的理解:

这是联想 V310 的问题。Linux 内核附带ideapad-laptop.ko内核模块(您可以在 中找到它/lib/modules/KERNEL-VERSION/kernel/drivers/platform/x86/ideapad-laptop.ko)。这是 ideapad 笔记本电脑的通用模块,大多数笔记本电脑都有一个用于 wifi 的硬件开关。该模块将尝试读取开关的值(开/关),如果开关不存在,它会错误地将其解释为关闭,因此它会禁用 wifi。这发生在 V310 上。但是,有一系列笔记本电脑型号ideapad-laptop.ko没有这个硬件开关,因此模块知道忽略它从开关读取的值并保持 wifi 开启。您可以找到此列表这是 GitHub 上补丁的评论

联想 V310 最初并不在名单上,但今年早些时候被添加到 v4.13+ 版本中(如果你真的对此感兴趣,请查看这次提交, 和这个或查看文件历史记录)。

因此可能的解决方案是将内核更新到具有 V310 的版本(如我上面所述),将其添加到ideapad-laptop.c,编译模块并替换模块中的模块lib/modules,或者按照前面的答案所建议的,禁用整个ideapad-laptop模块(我想你在这里错过了一些功能,但可能不是什么大问题)。

相关内容