"W: firmware manquant possible pour le module i915_bpo" lors de la mise à jour de initramfs

65

Lorsque je lance une mise à jour du noyau ou du pilote NVIDIA sur mon 16.04, cela déclenche une reconstruction initramfs qui génère l’avertissement ci-dessous:

Processing triggers for initramfs-tools (0.122ubuntu8.1) ...
update-initramfs: Generating /boot/initrd.img-4.4.0-34-generic
W: Possible missing firmware /lib/firmware/i915/skl_guc_ver6.bin for module i915_bpo

J'ai un ordinateur portable avec deux puces graphiques, une carte graphique NVIDIA GeForce 940M et la carte graphique intégrée de l’Intel i5-6200U.

L’appareil utilisé est ma carte NVIDIA:

$ inxi -G
Graphics:  Card-1: Intel Sky Lake Integrated Graphics
           Card-2: NVIDIA GM108M [GeForce 940M]
           Display Server: X.Org 1.18.3 driver: nvidia Resolution: [email protected]
           GLX Renderer: GeForce 940M/PCIe/SSE2 GLX Version: 4.5.0 NVIDIA 367.35

Voici la sortie de lshw -c video , correspondant à ma puce graphique Intel qui devrait utiliser ce pilote:

    *-display         
         description: VGA compatible controller
         product: Sky Lake Integrated Graphics
         vendor: Intel Corporation
         physical id: 2
         bus info: [email protected]:00:02.0
         version: 07
         width: 64 bits
         clock: 33MHz
         capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
         configuration: driver=i915_bpo latency=0
         resources: irq:125 memory:a2000000-a2ffffff memory:b0000000-bfffffff ioport:5000(size=64)

Le fichier dans l’avertissement n’existe pas, seulement ceux:

$ ll /lib/firmware/i915/
total 336
drwxr-xr-x  2 root root   4096 Aug 11 13:24 ./
drwxr-xr-x 74 root root  32768 Aug 11 13:24 ../
-rw-r--r--  1 root root   5872 Jul 21 17:03 bxt_dmc_ver1_04.bin
-rw-r--r--  1 root root   5872 Jul 21 17:03 bxt_dmc_ver1_05.bin
-rw-r--r--  1 root root   8380 Jul 21 17:03 bxt_dmc_ver1_06.bin
-rw-r--r--  1 root root   8380 Jul 21 17:05 bxt_dmc_ver1_07.bin
lrwxrwxrwx  1 root root     19 Jul 21 17:05 bxt_dmc_ver1.bin -> bxt_dmc_ver1_07.bin
-rw-r--r--  1 root root   8824 Jul 21 17:03 skl_dmc_ver1_23.bin
-rw-r--r--  1 root root   8928 Jul 12 21:33 skl_dmc_ver1_26.bin
lrwxrwxrwx  1 root root     19 Jul 12 21:33 skl_dmc_ver1.bin -> skl_dmc_ver1_26.bin
-rw-r--r--  1 root root 109636 Jul 21 17:03 skl_guc_ver1_1059.bin
lrwxrwxrwx  1 root root     21 Jul 21 17:03 skl_guc_ver1.bin -> skl_guc_ver1_1059.bin
-rw-r--r--  1 root root 128320 Jul 21 17:03 skl_guc_ver4_3.bin
lrwxrwxrwx  1 root root     18 Jul 21 17:03 skl_guc_ver4.bin -> skl_guc_ver4_3.bin

Le dernier package de pilote semble être installé si:

$ apt-cache policy xserver-xorg-video-intel
xserver-xorg-video-intel:
  Installed: 2:2.99.917+git20160325-1ubuntu1
  Candidate: 2:2.99.917+git20160325-1ubuntu1
  Version table:
 *** 2:2.99.917+git20160325-1ubuntu1 500
        500 http://ftp.uni-stuttgart.de/ubuntu xenial/main amd64 Packages
        100 /var/lib/dpkg/status

Que signifie exactement cet avertissement et comment puis-je le résoudre?

    
posée Byte Commander 12.08.2016 - 15:29
la source

3 réponses

54

Le package du pilote est un peu en retard sur le noyau. Dans mon cas, le firmware manquant n'a pas d'importance car je n'ai pas de processeur SkyLake, mais dans votre cas, cela pourrait avoir de l'importance. Vous pouvez obtenir le nouveau firmware à partir de ici .

ÉDITER 1: Notez que le lien a changé, mais les lecteurs doivent toujours être en mesure de trouver ce dont ils ont besoin dans le nouveau lien, bien que parfois il soit difficile de savoir exactement ce que vous recherchez.

EDIT 2: cette réponse devrait s’appliquer à d’autres nouvelles exigences de microprogramme apparues depuis l’écriture de cette réponse. Par exemple:

W: Possible missing firmware /lib/firmware/i915/kbl_dmc_ver1_01.bin for module i915
W: Possible missing firmware /lib/firmware/i915/kbl_guc_ver9_14.bin for module i915
W: Possible missing firmware /lib/firmware/i915/bxt_guc_ver8_7.bin for module i915
    
réponse donnée Doug Smythies 12.08.2016 - 16:41
la source
12

Mise à jour du 26 mai 2018

Récemment, Intel a opté pour le téléchargement de fichiers appelés blobs , ce qui signifie B Inary L arge OB ject ( BLOB).

Pour voir les nouvelles méthodes d’installation du pilote i915, consultez cette réponse mise à jour aujourd'hui.

Firmware Skylake (skl)

Il existe un nouveau lien pour accéder au micrologiciel Skylake (skl) pour ceux qui disposent de ce moteur graphique ( 01.org - Graphiques Linux). Téléchargements de micrologiciels ). Un exemple de capture d'écran suit.

Si vous essayez de sélectionner le micrologiciel Kabylake (kbl) ou Broxton (bxt), vous obtenez un message d'erreur car ces pilotes n'ont pas encore été publiés.

Firmware Kabylake (kbl) et Broxton (bxt) manquant

L'ancien lien nécessite un code d'accès spécial. Intel a modifié le lien de leur site Web pour le reste d'entre nous.

Des questions subsistent sur les messages d’avertissement générés par sudo update-initramfs -u lorsque la version du noyau & gt; 4.8 (Ubuntu 16.10 et Ubuntu 17.04):

W: Possible missing firmware /lib/firmware/i915/kbl_dmc_ver1_01.bin for module i915
W: Possible missing firmware /lib/firmware/i915/kbl_guc_ver9_14.bin for module i915
W: Possible missing firmware /lib/firmware/i915/bxt_guc_ver8_7.bin for module i915

A un moment donné, le rapport de bogue ( bugs.launchpad.net - bogue du micrologiciel Linux ) a déclaré que les pilotes n’existaient tout simplement pas et qu’ils n’auront pas d’autorisation avant la sortie d’une nouvelle puce appelée "kaby lake". En février 2017, vous pouvez toutefois installer ces pilotes en suivant ces instructions: Mise à jour du noyau vers des avertissements de micrologiciel désormais manquants à 4.8

Faire disparaître les messages d’avertissement

En février 2017, ignorez cette section et suivez les instructions du dernier paragraphe ci-dessus.

Pour faire disparaître le message d'avertissement, j'ai fait ce qui suit:

$ sudo cp assembly/hello  /lib/firmware/i915/kbl_dmc_ver1_01.bin
$ sudo cp assembly/hello /lib/firmware/i915/kbl_guc_ver9_14.bin
$ sudo cp assembly/hello /lib/firmware/i915/bxt_guc_ver8_7.bin
$ sudo update-initramfs -u
update-initramfs: Generating /boot/initrd.img-4.9.5-040905-generic

Voila! Plus de messages d'avertissement.

Le programme "hello" est un programme d’assemblage de 504 octets indiquant "Hello World!". Vous pouvez copier tout petit fichier exécutable dans les fichiers binaires du firmware fournis dans les messages d'erreur. Lorsque Intel les publie, le logiciel de mise à jour les remplacera par les versions réelles.

Comment naviguer sur le site Web Intel Graphics for Linux

Il a été demandé via les commentaires comment naviguer dans le nouveau site Web d’Intel ( 01.org - Téléchargements de graphiques Linux ) qui présente cet écran:

Tapez Ubuntu 16.04 dans le champ de recherche et cliquez sur le bouton Filter .

Pour Ubuntu 16.10, sélectionnez le premier résultat. Dans notre cas, Ubuntu 16.04 sélectionne le deuxième résultat INTEL GRAPHICS UPDATE TOOL FOR LINUX* OS V2.0.2 et cet écran apparaît:

Dans mon cas, j'ai choisi Ubuntu 16.04 64-bit qui a téléchargé le fichier intel-graphics-update-tool_2.0.2_amd64.deb dans mon répertoire ~/Downloads .

L'étape suivante consiste à ouvrir le terminal et à utiliser:

cd Downloads
sudo dpkg -i intel*.deb

REMARQUE: Intel utilise la police ancients ttf et votre installation échouera si elle n’est pas installée sur votre système. À ce stade, vous devez utiliser:

sudo apt -f install
sudo apt update
sudo apt upgrade

Maintenant, vous pouvez exécuter l'outil Intel Graphics for Linux Updater comme le montre cet écran:

Ajouter des signatures Intel pour Ubuntu

Pendant apt-get update , vous pouvez voir des messages d'avertissement / d'erreur comme ceci:

W: GPG error: https://download.01.org/gfx/ubuntu/16.04/main xenial InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 56A3DEF863961D39
E: The repository 'https://download.01.org/gfx/ubuntu/16.04/main xenial InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

Vous devrez ajouter les signatures d’Intel en utilisant:

wget --no-check-certificate https://download.01.org/gfx/RPM-GPG-KEY-ilg-4 -O - | \
sudo apt-key add -

Puis mettez à jour dans Ubuntu:

sudo apt update
sudo apt upgrade
    
réponse donnée WinEunuuchs2Unix 03.02.2017 - 02:12
la source
2

J'ai également rencontré un problème similaire car j'ai mis à jour le noyau depuis l'application "Software" d'Ubuntu Gnome 16.04 (gestionnaire de paquets natif) et il s'est écrasé pendant la mise à jour.

Donc, on m'a interdit de redémarrer Ubuntu car l'image Linux a été générée sans succès.

Pour résoudre ce problème, j'ai fait ce qui suit:

  1. Redémarrez Linux et juste après l’écran de la carte mère, appuyez sur Shift pour entrer dans le menu grub;
  2. Sélectionnez votre version précédente de Linux dans le menu. Dans mon cas, *4.4.0-21-generic et appuyez sur Enter ;
  3. Une fois Ubuntu rétabli, désinstallez l'image de linux cassée. Dans mon cas, le *4.4.0-59-generic (j'ai utilisé le gestionnaire de paquets Synaptic pour cela);
  4. Téléchargez et installez le micrologiciel manquant à partir de page Intel (identique à Doug Smythies) . Dans mon cas, j'ai eu le KabyLake kbl DMC - Ver 1.01 ;
  5. Enfin, réinstallez le noyau Linux *4.4.0-59-generic (dans mon cas) ou linux-generic pour le dernier noyau Linux générique complet.

Succès! Le noyau est à jour et tous les firmwares fonctionnent correctement!

Cordialement!

    
réponse donnée Matt Mello 17.01.2017 - 03:50
la source

Lire d'autres questions sur les étiquettes