问题描述
我购买了一台 Acer 笔记本电脑并安装了 Ubuntu 14.04LTS,但 WiFi 驱动程序不可用。所以我尝试使用 wifidocs/driver/ndiswrapper 安装 Windows 驱动程序。
在执行 lspci -vvnn
时,它给出:
Network controller [0280: Qualcomm Atheros Device [168c:0042] (rev 30)
然后我还禁用了 atheros 驱动程序。使用 lspci
和 lspci -n
,我可以说 PCI id 是 168c:0042
。但Acer网站上有3个atheros驱动程序。我不知道要下载哪个,但在 Windows PC 上下载了一个,并将 zip 文件粘贴到我的桌面上,然后使用 unzip <filename>.zip
从终端将其解压缩。该页面显示您必须进入控制面板系统硬件以及 Windows 系统上的所有内容。我没做这个。 Windows 计算机不是我的,恐怕我不应该在上面安装任何额外的驱动程序。解压后有1个.inx
文件和1个.bin
文件,没有.sys
文件。我不知道我是否完全正确,或者我错过了什么?如果我是对的那么如何从这里开始?我还创建了一个新目录,并将解压后的 .inx
和 .bin
文件复制到其中。然后在该目录中我运行了 ndiswrapper -i <filename>.inf
但它说 ndiswrapper
未安装,当我执行 sudo apt-get install ndiswrapper-common
时,我得到的答复是 ndiswrapper-common
已经是最新版本。该怎么办?这是我的
dmesg | grep ath10k result
[ 7.882758] ath10k_pci 0000:03:00.0: pci irq msi-x interrupts 8 irq_mode 0 reset_mode 0
[ 8.190016] ath10k_pci 0000:03:00.0: Direct firmware load for ath10k/cal-pci-0000:03:00.0.bin failed with error -2
[ 8.334587] ath10k_pci 0000:03:00.0: Direct firmware load for ath10k/QCA9377/hw1.0/board-2.bin failed with error -2
[ 10.140677] ath10k_pci 0000:03:00.0: qca9377 hw1.0 (0x05020000, 0x003820ff sub 105b:e09a) fw WLAN.TF.1.0-00267-1 fwapi 5 bdapi 1 htt-ver 3.1 wmi-op 4 htt-op 3 cal otp max-sta 32 raw 0 hwcrypto 1 features ignore-otp
[ 10.140682] ath10k_pci 0000:03:00.0: debug 0 debugfs 0 tracing 0 dfs 0 testmode 0
这是输出
lspci -nnk | grep -iA2 net
02:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 15)
Subsystem: Acer Incorporated [ALI] Device [1025:098a]
Kernel driver in use: r8169
03:00.0 Network controller [0280]: Qualcomm Atheros Device [168c:0042] (rev 30)
Subsystem: Foxconn International, Inc. Device [105b:e09a]
Kernel driver in use: ath10k_pci
最佳方法
Ubuntu 16.04 用户应该只需要
sudo apt-get update && sudo apt-get upgrade
并重新启动。
您不需要 Windows 驱动程序和 ndiswrapper。
最近已在上游修复此问题,请按照以下说明安装向后移植的模块和所需的固件:
sudo apt-get install build-essential linux-headers-$(uname -r) git
echo "options ath10k_core skip_otp=y" | sudo tee /etc/modprobe.d/ath10k_core.conf
wget https://www.kernel.org/pub/linux/kernel/projects/backports/stable/v4.4.2/backports-4.4.2-1.tar.gz
tar -zxvf backports-4.4.2-1.tar.gz
cd backport-4.4.2-1
make defconfig-wifi
make
sudo make install
git clone https://github.com/kvalo/ath10k-firmware.git
sudo cp -r ath10k-firmware/QCA9377 /lib/firmware/ath10k/
sudo cp /lib/firmware/ath10k/QCA9377/hw1.0/firmware-5.bin_WLAN.TF.1.0-00267-1 /lib/firmware/ath10k/QCA9377/hw1.0/firmware-5.bin
重新启动后它应该可以工作。
当通过更新安装新内核时,它将失败,直到内核被修补以支持 wifi。当这种情况发生时,您将需要:
cd backports-4.4.2-1
make clean
make defconfig-wifi
make
sudo make install
并重新启动。