Cuando ejecuto una actualización del controlador de kernel o NVIDIA en mi 16.04, esto desencadena una reconstrucción de 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, una 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: [email protected]
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
Sin embargo, 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?
W: Possible missing firmware /lib/firmware/i915/kbl_dmc_ver1.bin for module i915_bpo
y mi CPU es Skylake con Intel HD en ella.1.158
versión dellinux-firmware
paquete en lugar de la línea principal1.157
porque solo eso proporcionó el firmware de trabajo para mi wifi (inalámbrico asesino).kbl
significa Kabylake, que es el sucesor de Skylake. Como no tiene una CPU de este tipo, puede ignorar la advertencia o simplemente instalar el controlador Kabylake desde el mismo enlace que aparece en la respuesta de Doug Smythies.Respuestas:
El paquete del controlador está algo rezagado con el núcleo. En mi caso, el firmware faltante no importa porque no tengo un procesador SkyLake, pero en su caso podría importar. Puede obtener el firmware más reciente desde aquí .
EDITAR 1: Tenga en cuenta que el enlace cambió, 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.
EDITAR 2: Esta respuesta debería ser aplicable a algunos otros requisitos de firmware nuevos que han aparecido desde que esta respuesta se escribió originalmente. Por ejemplo:
EDITAR 3: para los usuarios que usan git, esta respuesta también funciona bien.
fuente
Actualización del 20 de mayo de 2019
Para responder a su pregunta, no necesita actualizar los controladores de un procesador que no está ejecutando, pero es agradable ver que las advertencias desaparecen cuando lo hace.
Hoy recibí estas advertencias:
Descargué los blobs (descritos en la siguiente sección) y luego usé:
Ahora mis controladores Sky Lake (
skl
) están actualizados y puedo probar los últimos parámetros del kernel recomendados en Internet. Los mensajes de advertencia para los futuros procesadores Kaby Lake (kbl
), Cannon Lake (cnl
) y Ice Lake (icl
) se han ido haciendo la vida menos estresante.Actualización del 26 de mayo de 2018
Revisión menor 6 de agosto de 2018.
Nueva pantalla de descarga de "blobs"
Recientemente, Intel ha creado una nueva página de descarga y un nuevo diseño de página web:
Los archivos de descarga ahora se llaman blobs de firmware, que es nuevo para los controladores de firmware . Es sinónimo de B inary L arge OB ject (BLOB).
Los controladores están ordenados por procesador:
bxt
Broxton, cancelado en 2016, sucesor de los procesadores Cherry Trailkbl
Kabylake, 7ma generación, p. Ej. I7-7700skl
Skylake, 6ta generación, p. Ej. I7-6700Luego, los controladores se organizan por subgrupo (explicación completa aquí ):
Coincide el mensaje de error con el controlador necesario
Compare el mensaje de error que está recibiendo
update-initramfs
oupdate-grub
para encontrar el controlador que falta. En su ejemplo, el mensaje era "/lib/firmware/i915/kbl_guc_ver9_14.bin
", por lo que le falta la llamada de Kabylake GuC:kbl_guc_ver9_14.bin
en la página web que se muestra arriba. No quieres el más nuevo:kbl_guc_ver9_39.bin
Descargar controlador necesario
No hay más script de instalación como en versiones anteriores. Simplemente resalte el controlador que falta (blob) y haga clic en él. Esta pantalla aparece:
Inicialmente solo se ve el "volcado hexadecimal", pero después de hacer clic en el enlace titulado sin formato aparece una ventana de descarga como se ilustra arriba.
Haga clic en "Guardar archivo"
Instale el controlador con simple
sudo cp
(comando de copia)Después de la descarga, la instalación es simple
sudo cp
(comando de copia) y no haytar
comandos complicados ni./script_name
pasos de instalación.Instalación rápida
IMPORTANTE: Reemplace
kbl_guc_ver9_14.bin
y másbxt_guc_ver8_7.bin
arriba con los nombres de controladores que faltan que descargó.VOILA! Se instala un nuevo controlador. ¡Mucho más simple que los métodos de instalación anteriores para los controladores faltantes Intel i915!
TL; DR Instalación exploratoria
Ya tenía el controlador instalado. Este largo método de instalación le da una idea de los efectos antes y después de copiar el BLOB :
Utilice el siguiente comando de localización en lugar de llocate .
14 de febrero de 2017: Intel lanzó controladores
Según este informe de error de hoy ( W: Posible falta de firmware /lib/firmware/i915/kbl_guc_ver9_14.bin para el módulo i915 ) Intel ha lanzado los controladores Kabylake y Broxton necesarios en sus ( https://01.org/linuxgraphics/downloads/ firmware ) página web:
Descargue los controladores que faltan para Kabylake ( GuC - Ver 9.14 ) y ( DMC - Ver 1.01 ) y Broxton ( GuC - Ver 8.7 ). Estos están en
.tar.gz
y.tar.bz2
formato.Instalar controladores en formato "tar"
Aunque puede ejecutar los
install.sh
scripts, estas instrucciones son las más fáciles.Cambie al directorio de descarga y verifique que los archivos estén allí:
Extraiga los archivos tar comprimidos:
Copie los archivos y actualice initramfs
¡Observe que los mensajes de error (advertencia) se han ido!
Eliminar archivos de trabajo
Publicación histórica (original) para referencia
He recibido dos mensajes de advertencia sobre controladores i915 faltantes para Kernel's 4.6.3, 4.7.1, 4.7.2, 4.7.3 y 4.7.5. Los ignoré y las cosas han ido bien con mi HD4000 Intel Integrated Graphics. Desearía que se pudiera decir lo mismo de Nvidia y Nouvaeu.
Como decía una respuesta en su enlace, puede ir al sitio web de Intel para obtener la mayoría de los controladores de gráficos de Linux actualizados en: intel-linux-graphics-firmwares . Sin embargo, cuando leí ese sitio hace unas semanas, estaba preocupado por todas las cosas posibles que pueden salir mal en diferentes escenarios, así que opté por no hacerlo.
¿Instaló 4.8 Release Release 6 desde el 24 de septiembre? Eso es lo más actual en Ubuntu, creo. No tiene que responder, pero tengo curiosidad de por qué eligió 4.8 en lugar de 4.7.5, es decir, cuáles son las diferencias que necesita para arreglar las cosas.
Editar - 19 de octubre de 2016
Ahora uso la versión 4.8.1 del kernel (versión real y no candidato de lanzamiento) durante más de una semana y las cosas funcionan bien. Sin embargo, esto está bajo Ubuntu 16.04. Ubuntu 16.10 fue lanzado el 13 de octubre y está usando Kernel versión 4.8.0, creo.
No es mi plan seguir actualizando esta respuesta, pero quería dejar de lado la inferencia de que los candidatos de la versión 4.8 podrían tener problemas. La versión real no.
Editar - 2 de febrero de 2017
Ahora se está ejecutando la versión principal de Kernel versión 4.9.5 que en este momento Ubuntu 16.04 ha actualizado su núcleo a 4.4.0-59. Intel cambió su enlace para Intel Graphics para controladores de Linux y actualicé el nuevo enlace de arriba.
Todavía quedan preguntas sobre los mensajes de advertencia generados
sudo update-initramfs -u
cuando Kernel versión> 4.8 (Ubuntu 16.10 y Ubuntu 17.04):Como se indica en el informe de error ( bugs.launchpad.net - error de firmware de Linux ) los controladores simplemente no existen y no existirán hasta que se libere un futuro chip llamado "kaby lake".
Haz que los mensajes de advertencia desaparezcan
Para hacer desaparecer el mensaje de advertencia, hice lo siguiente:
Voila! No más mensajes de advertencia.
El programa "hola" es un programa ensamblador de 504 bytes que dice "¡Hola Mundo!". Puede copiar cualquier pequeño ejecutable en los binarios de firmware que figuran en los mensajes de error. Cuando Intel finalmente los lance, el actualizador de software los reemplazará con las versiones reales.
Cómo navegar por el sitio web de Intel Graphics para Linux
Se le preguntó a través de comentarios cómo navegar dentro del nuevo sitio web de Intel ( 01.org - Linux Graphics Downloads ) que presenta esta pantalla:
Escriba
Ubuntu 16.04
en el campo de búsqueda y haga clic en elFilter
botón.Para Ubuntu 16.10, seleccione el primer resultado. En nuestro caso, Ubuntu 16.04 selecciona el segundo resultado
INTEL GRAPHICS UPDATE TOOL FOR LINUX* OS V2.0.2
y aparece 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
a mi~/Downloads
directorio.El siguiente paso es abrir la terminal y usar:
NOTA: Intel usa la fuente ttf de los antiguos y su instalación fallará si no está en su sistema. En este punto necesitas usar:
Ahora puede ejecutar la
Intel Graphics for Linux Updater
herramienta como muestra esta pantalla:Agregar firmas Intel para Ubuntu
Durante
apt-get update
puede ver mensajes de advertencia / error como este:Deberá agregar las firmas de Intel usando:
Luego actualice en Ubuntu:
fuente
También me he enfrentado a un problema similar porque actualicé el kernel desde la aplicación "Software" Ubuntu Gnome 16.04 (administrador de paquetes nativo) y se bloqueó durante la actualización.
Entonces, se me prohibió iniciar Ubuntu nuevamente porque la imagen de Linux se generó sin éxito.
Para resolverlo desde ese punto hice lo siguiente:
Shift
para ingresar al menú de grub;*4.4.0-21-generic
y prensaEnter
;*4.4.0-59-generic
(he usado el administrador de paquetes Synaptic para ello);KabyLake kbl DMC - Ver 1.01
;*4.4.0-59-generic
(en mi caso) o sololinux-generic
para el último kernel genérico completo de Linux.¡Éxito! ¡Kernel está actualizado y todos los firmwares funcionan bien!
¡Atentamente!
fuente
Si está ejecutando debian (tengo el buster Debian GNU / Linux) simplemente siga estos pasos:
crea la carpeta:
copie todos los archivos de https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915 a esta carpeta
Reconfigure el paquete initramfs-tools:
fuente
sudo update-initramfs -u
pero estoy en el teléfono, así que no puedo confirmar. Las preguntas de Debian están fuera de tema aquí, por lo que es poco probable que su respuesta influya en muchas personas.