正在使用哪个英特尔显卡固件版本以及如何更改

正在使用哪个英特尔显卡固件版本以及如何更改

在 ubuntu 17.10 上,我安装了最新的英特尔显卡固件:

skl_dmc_ver1_26
skl_guc_ver6_1
skl_huc_ver01_07_1398

https://01.org/linuxgraphics/downloads/firmware使用 install.sh 脚本。升级到 ubuntu 18.04 后,我注意到此固件的较新版本已在 /lib/firmware/i915 中。

现在我不确定正在使用哪个固件版本——旧的还是新的?

dmesg | grep skl_

返回...skl_dmc_ver1_26.bin (v1.26)

  • 这是否意味着仍在使用旧版本?
  • guc 和 huc 怎么样?
  • 我该如何将其更改为新版本?

答案1

简短答案

要更改正在使用的驱动程序,您需要更改内核版本。但是,除非有特殊原因,否则您不应该这样做。

长答案

这些install.sh脚本已被弃用,不再使用。现在有斑点(二进制大对象)只需下载然后复制到 即可/lib/firmware/i915。如果您点击您发布的链接,您将看到它已从上次下载时发生变化。

有关安装新斑点看:已将内核升级至 4.8,现在缺少固件警告

至于快速查看哪些 i915 驱动程序Skylake您已安装(但不一定在当前启动时处于活动状态)使用:

$ locate i915/skl_
/lib/firmware/i915/skl_dmc_ver1.bin
/lib/firmware/i915/skl_dmc_ver1_23.bin
/lib/firmware/i915/skl_dmc_ver1_26.bin
/lib/firmware/i915/skl_guc_ver1.bin
/lib/firmware/i915/skl_guc_ver1_1059.bin
/lib/firmware/i915/skl_guc_ver4.bin
/lib/firmware/i915/skl_guc_ver4_3.bin
/lib/firmware/i915/skl_guc_ver6.bin
/lib/firmware/i915/skl_guc_ver6_1.bin
/lib/firmware/i915/skl_guc_ver9_33.bin
/lib/firmware/i915/skl_huc_ver01_07_1398.bin

我注意到您的链接中有一个新版本skl_dmc_ver1_27.bin,因此我下载了它然后运行:

$ sudo updatedb
[sudo] password for rick:          
───────────────────────────────────────────────────────────────────────────────────────────
rick@alien:~$ locate dmc_ver1_27
/home/rick/Downloads/skl_dmc_ver1_27.bin
───────────────────────────────────────────────────────────────────────────────────────────
rick@alien:~$ sudo mv /lib/firmware/i915/skl_dmc_ver1_26.bin /lib/firmware/i915/skl_dmc_ver1_26.bin.old
───────────────────────────────────────────────────────────────────────────────────────────
rick@alien:~$ sudo mv /home/rick/Downloads/skl_dmc_ver1_27.bin /lib/firmware/i915/skl_dmc_ver1_27.bin
───────────────────────────────────────────────────────────────────────────────────────────
rick@alien:~$ sudo update-initramfs -u -k `uname -r`
update-initramfs: Generating /boot/initrd.img-4.14.42-041442-generic
W: Possible missing firmware /lib/firmware/i915/skl_dmc_ver1_26.bin for module i915
Adding /lib/firmware/i915/skl_guc_ver9_33.bin

因此,即使skl_dmc_ver1_27.bin可用,它也无法与内核4.14链一起使用,并且它仍在寻找skl_dmc_ver1_26.bin。Ubuntu 18.04 使用4.15内核链,因此显然它也在使用skl_dmc_ver1_26.bin


我刚刚下载了两天前发布的 Kernel 4.17,它使用了新的skl_dmc_ver1_27.bin驱动程序:

$ sudo mv /lib/firmware/i915/skl_dmc_ver1_27.bin /lib/firmware/i915/skl_dmc_ver1_27.bin.old
$ sudo update-initramfs -u -k 4.17.0-041700-generic
update-initramfs: Generating /boot/initrd.img-4.17.0-041700-generic
W: Possible missing firmware /lib/firmware/i915/skl_dmc_ver1_27.bin for module i915
W: Possible missing firmware /lib/firmware/i915/kbl_dmc_ver1_04.bin for module i915
W: Possible missing firmware /lib/firmware/i915/cnl_dmc_ver1_07.bin for module i915
W: Possible missing firmware /lib/firmware/i915/kbl_guc_ver9_39.bin for module i915
W: Possible missing firmware /lib/firmware/i915/bxt_guc_ver9_29.bin for module i915
Adding /lib/firmware/i915/skl_guc_ver9_33.bin

注意它是如何寻找的/lib/firmware/i915/skl_dmc_ver1_27.bin


概括

  • 内核4.14使用skl_dmc_ver1_26.bin
  • 内核4.17使用skl_dmc_ver1_27.bin
  • /lib/firmware/i915/skl_guc_ver9_33.bin4.14被内核和所使用4.17

您还问过:“那guc和huc怎么样?” 古克上面立即回答了这个问题。至于休克担心从内核4.14(及更早版本)到内核使用相同的版本4.17

rick@alien:~/Downloads$ sudo mv /lib/firmware/i915/skl_huc_ver01_07_1398.bin /lib/firmware/i915/skl_huc_ver01_07_1398.bin.old
───────────────────────────────────────────────────────────────────────────────────────────
rick@alien:~/Downloads$ sudo update-initramfs -u -k `uname -r`
update-initramfs: Generating /boot/initrd.img-4.14.42-041442-generic
W: Possible missing firmware /lib/firmware/i915/skl_dmc_ver1_26.bin for module i915
W: Possible missing firmware /lib/firmware/i915/skl_huc_ver01_07_1398.bin for module i915
Adding /lib/firmware/i915/skl_guc_ver9_33.bin

相关内容