"W: posible firmware faltante para el módulo i915_bpo" al actualizar initramfs

66

Cuando ejecuto una actualización de kernel o controlador NVIDIA en mi 16.04, esto desencadena una reconstrucción initramfs que genera la siguiente advertencia:

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

Tengo un portátil con dos chips gráficos, un NVIDIA GeForce 940M y los gráficos integrados de Intel i5-6200U.

El dispositivo en uso es mi tarjeta 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: 1920x1080@60.03hz
           GLX Renderer: GeForce 940M/PCIe/SSE2 GLX Version: 4.5.0 NVIDIA 367.35

Aquí está la salida de lshw -c video , correspondiente a mi chip de gráficos Intel, que debería usar ese controlador:

    *-display         
         description: VGA compatible controller
         product: Sky Lake Integrated Graphics
         vendor: Intel Corporation
         physical id: 2
         bus info: pci@0000: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)

El archivo en la advertencia no existe, solo aquellos:

$ 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

El último paquete de controladores parece estar instalado:

$ 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

¿Qué significa exactamente esta advertencia y cómo puedo solucionarla?

    
pregunta Byte Commander 12.08.2016 - 13:29

3 respuestas

55

El paquete del controlador está algo retrasado en el kernel. En mi caso, el firmware que falta no importa porque no tengo un procesador SkyLake, pero en su caso podría ser importante. Puede obtener el firmware más reciente desde aquí .

EDIT 1: Tenga en cuenta que el enlace ha cambiado, pero los lectores aún deberían poder encontrar lo que necesitan en el nuevo enlace, aunque a veces puede ser difícil saber exactamente lo que está buscando.

EDIT 2: Esta respuesta debería ser aplicable a algunos otros requisitos de firmware nuevos que se hayan presentado desde que se escribió originalmente esta respuesta. Por ejemplo:

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
    
respondido por el Doug Smythies 12.08.2016 - 14:41
12

26 de mayo de 2018 Actualización

Recientemente Intel ha cambiado para descargar archivos llamados blobs que significa B inary L arge OB ject ( BLOB).

Para ver los nuevos métodos de instalación del controlador i915, consulte la respuesta actualizada hoy.

Skylake (skl) Firmware

Hay un nuevo enlace para acceder al firmware de Skylake (skl) para aquellos con ese motor de gráficos que se encuentra aquí ( 01.org - Linux Graphics Descargas de firmware ). A continuación se muestra una captura de pantalla de muestra.

Si intentas seleccionar el firmware Kabylake (kbl) o Broxton (bxt), recibirás un mensaje de error ya que estos controladores todavía no se han lanzado al público.

Falta el firmware Kabylake (kbl) y Broxton (bxt)

El enlace anterior requiere inicio de sesión especial. Intel ha cambiado el enlace de su sitio web para el resto de nosotros.

Aún quedan preguntas sobre los mensajes de advertencia generados por sudo update-initramfs -u cuando Kernel version & gt; 4.8 (Ubuntu 16.10 y 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

En algún momento el informe de error ( bugs.launchpad.net - error de firmware de Linux ) dijo que los controladores simplemente no existen y no lo harán hasta que se lance un chip futuro llamado "lago kaby". A partir de febrero de 2017, sin embargo, puede instalar estos controladores siguiendo estas instrucciones: Kernel actualizado a 4.8, ahora falta advertencias de firmware

Eliminar los mensajes de advertencia

A partir de febrero de 2017, ignore esta sección y siga las instrucciones del último párrafo anterior.

Para que desaparezca el mensaje de advertencia, hice lo siguiente:

$ 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! No más mensajes de advertencia.

El programa "hola" es un programa ensamblador de 504 bytes que dice "¡Hola mundo!". Puede copiar cualquier ejecutable pequeño a los binarios de firmware que se muestran en los mensajes de error. Cuando Intel finalmente los libere, el actualizador de software los reemplazará con las versiones reales.

Cómo navegar en el sitio web de Intel Graphics for Linux

Se preguntó a través de comentarios cómo navegar dentro del nuevo sitio web de Intel ( 01.org - Descargas de gráficos de Linux ) que se presenta esta pantalla:

Escriba Ubuntu 16.04 en el campo de búsqueda y haga clic en el botón Filter .

Para Ubuntu 16.10, seleccione el primer resultado. En nuestro caso, Ubuntu 16.04, seleccione el segundo resultado INTEL GRAPHICS UPDATE TOOL FOR LINUX* OS V2.0.2 y aparecerá esta pantalla:

En mi caso, seleccioné Ubuntu 16.04 de 64 bits que descargó el archivo intel-graphics-update-tool_2.0.2_amd64.deb en mi directorio ~/Downloads .

El siguiente paso es abrir la terminal y usar:

cd Downloads
sudo dpkg -i intel*.deb

NOTA: Intel usa la fuente antiguos ttf y su instalación fallará si no está en su sistema. En este punto, debe usar:

sudo apt -f install
sudo apt update
sudo apt upgrade

Ahora puede ejecutar la herramienta Intel Graphics for Linux Updater como se muestra en esta pantalla:

Agregue firmas Intel para Ubuntu

Durante apt-get update , puede ver mensajes de advertencia / error como este:

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.

Necesitará agregar las firmas de Intel usando:

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

Luego actualiza en Ubuntu:

sudo apt update
sudo apt upgrade
    
respondido por el WinEunuuchs2Unix 03.02.2017 - 01:12
2

También me he enfrentado a un problema similar porque he actualizado el kernel de la aplicación "Software" Ubuntu Gnome 16.04 (administrador de paquetes nativo) y se bloqueó durante la actualización.

Entonces, me prohibieron reiniciar Ubuntu porque la imagen de Linux se generó sin éxito.

Para resolverlo desde ese punto hice lo siguiente:

  1. Reinicia Linux e inmediatamente después de la pantalla de la placa madre, presiona Shift para ingresar al menú de grub;
  2. Seleccione su versión anterior de Linux desde el menú. En mi caso, *4.4.0-21-generic y presione Enter ;
  3. Una vez que Ubuntu vuelva a funcionar, desinstala la imagen de Linux rota. En mi caso, el *4.4.0-59-generic (he usado el administrador de paquetes Synaptic para él);
  4. Descargue e instale el firmware que falta en la página de Intel (igual que Doug Smythies) . En mi caso, obtuve el KabyLake kbl DMC - Ver 1.01 ;
  5. Y, por último, instale de nuevo el kernel de Linux *4.4.0-59-generic (en mi caso) o simplemente linux-generic para el kernel genérico de Linux más reciente y completo.

¡Éxito! ¡Kernel está actualizado y todos los firmwares funcionan bien!

¡Saludos!

    
respondido por el Matt Mello 17.01.2017 - 02:50

Lea otras preguntas en las etiquetas