如何解析 iwlwifi 中的微码 (ucode) 以获取版本号?

dai*_*isy 11 linux kernel firmware intel iwlwifi

我有一个由 驱动的 Intel 无线网卡iwlwifi,我可以在 dmesg 中看到以下消息:

iwlwifi 0000:03:00.0: loaded firmware version 17.168.5.3 build 42301
Run Code Online (Sandbox Code Playgroud)

鉴于我知道加载了哪个 blob,我如何找出这个 blob(.ucode文件)的版本?

如果您查看下面加载 ucode 的位置,它不会仅告诉我加载了 blob 的版本信息。但我知道英特尔版本这些。

$ sudo dmesg | grep ucode
[   26.132487] iwlwifi 0000:03:00.0: firmware: direct-loading firmware iwlwifi-6000g2a-6.ucode
[40428.475015] (NULL device *): firmware: direct-loading firmware iwlwifi-6000g2a-6.ucode
Run Code Online (Sandbox Code Playgroud)

don*_*sti 8

iwlwifi驱动程序加载你的微码文件的WiFi启动适配器。如果您想知道机器上的 blob 版本,请尝试使用Andrew Brampton 的脚本。跑:

## Note the firmware may stored in `/usr/lib`
./ucode.py /lib/firmware/iwlwifi-*.ucode
Run Code Online (Sandbox Code Playgroud)

并将输出与您的日志(dmesg输出)进行比较。

请注意,该脚本适用于python2.