我的无线网卡的 iwlwifi 和固件版本是多少?

我的无线网卡的 iwlwifi 和固件版本是多少?

lshw -C network提供有关我的无线网卡、驱动程序和固件的信息:

  *-network
       description: Wireless interface
       product: PRO/Wireless 5100 AGN [Shiloh] Network Connection
       vendor: Intel Corporation
       physical id: 0
       bus info: pci@0000:03:00.0
       logical name: wlan0
       version: 00
       width: 64 bits
       clock: 33MHz
       capabilities: bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=iwlwifi driverversion=3.16.0-34-generic firmware=8.83.5.1 build 33692 ip=192.168.1.102 latency=0 link=yes multicast=yes wireless=IEEE 802.11abg
       resources: irq:49 memory:f4200000-f4201fff

modinfo提供有关驱动模块iwlwifi和固件的信息:

$ modinfo iwlwifi
filename:       /lib/modules/3.16.0-34-generic/kernel/drivers/net/wireless/iwlwifi/iwlwifi.ko
license:        GPL
author:         Copyright(c) 2003- 2014 Intel Corporation <[email protected]>
version:        in-tree:
description:    Intel(R) Wireless WiFi driver for Linux
firmware:       iwlwifi-100-5.ucode
firmware:       iwlwifi-1000-5.ucode
firmware:       iwlwifi-135-6.ucode
firmware:       iwlwifi-105-6.ucode
firmware:       iwlwifi-2030-6.ucode
firmware:       iwlwifi-2000-6.ucode
firmware:       iwlwifi-5150-2.ucode
firmware:       iwlwifi-5000-5.ucode
firmware:       iwlwifi-6000g2b-6.ucode
firmware:       iwlwifi-6000g2a-5.ucode
firmware:       iwlwifi-6050-5.ucode
firmware:       iwlwifi-6000-4.ucode
firmware:       iwlwifi-7265-9.ucode
firmware:       iwlwifi-3160-9.ucode
firmware:       iwlwifi-7260-9.ucode
firmware:       iwlwifi-8000-8.ucode
srcversion:     93D664267873827B22C4309
  1. 关于驱动模块:

    版本是iwlwifi

    • 3.16.0-34-generic作为输出lshw -C network,或
    • in-tree: 作为输出modinfo iwlwifi,或
    • 93D664267873827B22C4309作为输出modinfo iwlwifi

    在哪里可以找到最新可用版本iwlwifi以及如何在 64 位 Ubuntu 14.04 上安装它?

  2. 关于固件:

    iwlwifi需要的固件版本是

    • 8.83.5.1 build 33692作为输出lshw -C network,或
    • iwlwifi-<digit>.ucode作为输出modinfo iwlwifi

    firmware输出中以 开头的行是否modinfo iwlwifi

    • 同一固件的不同版本?或者
    • 不同的固件?

    在哪里可以找到最新可用的固件版本,以及如何在 64 位 Ubuntu 14.04 上安装它们?

谢谢!

答案1

虽然您说您正在运行 14.04,但您的 3.16.0-xx 内核对应于 Ubuntu 14.10。

司机无线上网有点独特,因为 pci.id(例如 8086:4239)会告诉驱动程序确切的设备并调用该设备的相应固件。

我怀疑版本:在树中意味着该版本是包含在相关内核中的版本,在您的情况下是 3.16。

固件可用的地方如下:https://wireless.wiki.kernel.org/en/users/Drivers/iwlwifi您的卡加载了 8.83.5.1,它对应于 Intel 5100、5300 或 5350 的固件。如果您找到更早或更新的固件文件并将其放在 /lib/firmware 中,则驱动程序仍将调用并使用其写入的相同固件。

如您所见,您的设备的固件有三个版本;5.4.A.11 提取到 iwlwifi-5000-1.ucode;8.24.2.12 提取到 5000-2,8.83.51.1 提取到 5000-5。虽然完全可以下载并提取这些固件,并将它们放在驱动程序希望找到它们的位置,即 /lib/firmware,但驱动程序无线上网包含在内核版本3.16中的将调用并使用仅适当的固件文件:iwlwifi-5000-5.ucode。

至于差异,我找不到任何更改日志。我猜想每个后续固件版本都会包含改进和/或错误修复。

至于驱动程序,获取更高版本的驱动程序的通常方法是编译反向移植:https://www.kernel.org/pub/linux/kernel/projects/backports/stable/或者,如果你够勇敢的话:https://www.kernel.org/pub/linux/kernel/projects/backports/2015/03/13/

例如,如果你想编译无线上网对应更高版本3.18.1内核的驱动程序,将其下载到桌面,右键单击并选择“在此处提取”:https://www.kernel.org/pub/linux/kernel/projects/backports/stable/v3.18.1/backports-3.18.1-1.tar.xz 然后,在终端中:

sudo apt-get update
sudo apt-get install linux-headers-generic build-essential
cd ~/Desktop/backports-3.18.1
make defconfig-iwlwifi
make
sudo make install

重新启动并检查版本修改信息. 应为:

版本:使用反向移植 v3.18.1-1-0-g5e9ec4c 从 Linux(v3.18.1-0-g39ca484)反向移植

每次安装更高版本的 linux 映像时,都需要重新编译并重新启动。

根据您的症状,我怀疑这种困难与无线上网及其固件。您可以在发生丢包时检查日志,特别是 /var/log/syslog。

相关内容