O kernel atualizado para o 4.8 agora está faltando avisos de firmware

37

Eu atualizei meu laptop para ter o kernel 4.8 e durante o processo os seguintes avisos apareceram.

update-initramfs: Generating /boot/initrd.img-4.8.0-040800-generic
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

Isso parece um pouco estranho para mim, já que meu processador é o i7-6700HQ, que é um skylake e, no meu entender, eles são para CPUs diferentes? Eu segui as instruções aqui anteriormente, como no passado eu tinha avisos sobre a minha família de CPU.

Esses avisos devem ser ignorados ou devo instalar os drivers guc / dmc para essas famílias de CPU?

    
por Malachi 03.10.2016 / 12:48

3 respostas

50

26 de maio de 2018 Atualização

Nova tela de download de "blobs"

Recentemente, a Intel criou uma nova página de download e novo layout de página da web:

Os arquivos de download agora são chamados de blobs de firmware , que são novos idiomas para os drivers de firmware . Significa B inária L arge OB ject (BLOB).

Os drivers são classificados por processador:

  • bxt Broxton, cancelado em 2016, sucessor dos processadores Cherry Trail
  • kbl Kabylake, 7ª geração, por exemplo, i7-7700
  • skl Skylake, 6ª geração, por exemplo, i7-6700

Os drivers são organizados por subgrupo (explicação completa aqui ):

  • GUC - O GuC foi projetado para executar o agendamento da carga de trabalho gráfica nos vários mecanismos paralelos gráficos.
  • DMC - O DMC fornece estados gráficos inativos de baixa potência adicionais.
  • HUC - O HuC foi projetado para descarregar algumas das funções de mídia da CPU para a GPU.

Corresponder mensagem de erro ao driver necessário

Compare a mensagem de erro que você está recebendo por update-initramfs ou update-grub para encontrar o driver ausente. No seu exemplo, a mensagem era " /lib/firmware/i915/kbl_guc_ver9_14.bin ", então você está perdendo o Kabylake GuC chamado: kbl_guc_ver9_14.bin na página da web mostrada acima. Você não quer o mais novo: kbl_guc_ver9_39.bin

Download do driver necessário

Não há mais script de instalação como nas versões anteriores. Simplesmente destaque o driver ausente (blob) e clique nele. Esta tela aparece:

Inicialmente, você vê apenas o "despejo hexadecimal", mas após clicar no link intitulado plain , uma janela de download é exibida conforme ilustrado acima.

Clique em "Salvar arquivo"

Instalar o driver com sudo cp (comando de cópia) simples

Após o download, a instalação é um simples sudo cp (comando de cópia) e não há comandos tar complicados ou ./script_name etapas de instalação.

Instalação Rápida

sudo cp /home/YOUR_USER_NAME/Downloads/kbl_guc_ver9_14/kbl_guc_ver9_14.bin /lib/firmware/i915

VOILA! Novo driver está instalado. Muito mais simples que os métodos de instalação anteriores para drivers Intel i915 ausentes!

Instalação Exploratória de TL; DR

Eu já tinha o driver instalado. Este longo método de instalação dá-lhe uma ideia dos efeitos antes e depois de copiar o BLOB :

$ sudo updatedb
$ llocate kbl_guc_ver9_14.bin
ACCESS      OWNER  GROUP  SIZE    MODIFIED    NAME (updatdb last ran: 2018-05-26 12:07:57)
-rw-rw-r--  rick   rick   142656  2018-05-26  /home/rick/Downloads/kbl_guc_ver9_14.bin
-rw-rw-r--  rick   rick   142656  2017-02-24  /home/rick/Downloads/kbl_guc_ver9_14/kbl_guc_ver9_14.bin
-rw-r--r--  root   root   142656  2017-10-26  /lib/firmware/i915/kbl_guc_ver9_14.bin
$ diff /home/rick/Downloads/kbl_guc_ver9_14/kbl_guc_ver9_14.bin /lib/firmware/i915/kbl_guc_ver9_14.bin
# Blank line appears here signifying no differences from previous version
$ sudo cp /home/rick/Downloads/kbl_guc_ver9_14/kbl_guc_ver9_14.bin /lib/firmware/i915
$ llocate kbl_guc_ver9_14.bin
ACCESS      OWNER  GROUP  SIZE    MODIFIED    NAME (updatdb last ran: 2018-05-26 12:07:57)
-rw-rw-r--  rick   rick   142656  2018-05-26  /home/rick/Downloads/kbl_guc_ver9_14.bin
-rw-rw-r--  rick   rick   142656  2017-02-24  /home/rick/Downloads/kbl_guc_ver9_14/kbl_guc_ver9_14.bin
-rw-r--r--  root   root   142656  2018-05-26  /lib/firmware/i915/kbl_guc_ver9_14.bin

Use o comando localizar abaixo no lugar de llocate .

14 de fevereiro de 2017 - A Intel lançou drivers

De acordo com este relatório de bug hoje ( W: Possível falta de firmware / lib / firmware / i915 / kbl_guc_ver9_14.bin para o módulo i915 ) A Intel lançou os drivers Kabylake e Broxton necessários em seus ( link ):

Baixe os drivers que faltam para o Kabylake ( GuC - Ver 9.14 ) e ( DMC - Ver 1.01 ) e Broxton (GuC - Ver 8.7 ). Eles estão no formato .tar.gz e .tar.bz2 .

Instalar drivers no formato "tar"

Embora você possa executar os scripts install.sh , estas instruções são as mais fáceis.

Altere para o diretório de download e verifique se os arquivos estão lá:

:~$ cd Downloads

:~/Downloads$ ll *tar*
-rw-rw-r-- 1 rick rick 69329 Feb 14 21:05 bxtgucver87.tar.gz
-rw-rw-r-- 1 rick rick  4338 Feb 14 21:06 kbldmcver101.tar.bz2
-rw-rw-r-- 1 rick rick 70402 Feb 14 21:06 kblgucver914.tar.gz

Extraia os arquivos tar compactados:

:~/Downloads$ tar -zxvf bxtgucver87.tar.gz
firmware/bxt/guc/bxt_guc_ver8_7/
firmware/bxt/guc/bxt_guc_ver8_7/install.sh
firmware/bxt/guc/bxt_guc_ver8_7/ReleaseNotes.txt
firmware/bxt/guc/bxt_guc_ver8_7/bxt_guc_ver8_7.bin

:~/Downloads$ tar -xjvf kbldmcver101.tar.bz2
kbl_dmc_ver1_01/
kbl_dmc_ver1_01/kbl_dmc_ver1_01.bin
kbl_dmc_ver1_01/install.sh
kbl_dmc_ver1_01/ReleaseNotes.txt

:~/Downloads$ tar -zxvf kblgucver914.tar.gz
firmware/kbl/guc/kbl_guc_ver9_14/
firmware/kbl/guc/kbl_guc_ver9_14/install.sh
firmware/kbl/guc/kbl_guc_ver9_14/kbl_guc_ver9_14.bin
firmware/kbl/guc/kbl_guc_ver9_14/ReleaseNotes.txt

Copie os arquivos e atualize o initramfs

:~/Downloads$ sudo cp -t /lib/firmware/i915/ firmware/bxt/guc/bxt_guc_ver8_7/bxt_guc_ver8_7.bin kbl_dmc_ver1_01/kbl_dmc_ver1_01.bin firmware/kbl/guc/kbl_guc_ver9_14/kbl_guc_ver9_14.bin
:~/Downloads$ sudo update-initramfs -u
update-initramfs: Generating /boot/initrd.img-4.9.9-040909-generic

Observe que as mensagens de erro (aviso) acabaram!

Remover arquivos de trabalho

:~/Downloads$ rm -r firmware kbl_dmc_ver1_01 *.tar.*

Postagem histórica (original) para referência

Eu tive duas mensagens de aviso sobre drivers i915 ausentes para o kernel 4.6.3, 4.7.1, 4.7.2, 4.7.3 e 4.7.5. Eu os ignorei e tudo ficou bem com o meu HD4000 Intel Integrated Graphics. Eu gostaria que a mesma coisa pudesse ser dita sobre a Nvidia e o Nouvaeu.

Como uma resposta em seu link afirma que você pode ir ao site da Intel para obter os drivers de gráficos do Linux mais atualizados em: intel-linux -graphics-firmwares . No entanto, quando eu li esse site há algumas semanas, eu estava preocupado com todas as coisas possíveis que podem dar errado em cenários diferentes, então optei por sair.

Você instalou 4.8 release candidate 6 de 24 de setembro? Isso é o mais atual no Ubuntu, eu acredito. Você não precisa responder, mas estou curioso para saber por que você optou por 4.8 em vez de 4.7.5, ou seja, quais são as diferenças necessárias para corrigir as coisas.

Editar - 19 de outubro de 2016

Agora usando o kernel versão 4.8.1 (versão real e não release candidate) por mais de uma semana e as coisas estão funcionando bem. Isto está sob o Ubuntu 16.04 embora. O Ubuntu 16.10 foi lançado em 13 de outubro e está usando o Kernel versão 4.8.0, eu acredito.

Não é meu plano continuar atualizando esta resposta, mas eu gostaria de colocar para descansar a inferência de que 4.8 candidatos a lançamento podem ter problemas. A versão real não.

Editar - 2 de fevereiro de 2017

Agora executando a versão principal do Kernel versão 4.9.5, que neste momento o Ubuntu 16.04 atualizou seu kernel para o 4.4.0-59. A Intel mudou seu link para drivers Intel Graphics para Linux e atualizei o novo link acima.

Ainda restam dúvidas sobre as mensagens de aviso geradas por sudo update-initramfs -u quando a versão do kernel & gt; 4.8 (Ubuntu 16.10 e 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

Como indicado no relatório de erros ( bugs.launchpad.net - erro de firmware do linux ) os drivers simplesmente não existem e não irão até que um futuro chip chamado "kaby lake" seja lançado.

Faça as mensagens de aviso desaparecerem

Para fazer a mensagem de aviso desaparecer, fiz o seguinte:

$ 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! Não há mais mensagens de aviso.

O programa "hello" é um programa assembler de 504 bytes que diz "Hello World!". Você pode copiar qualquer executável pequeno para os binários de firmware fornecidos nas mensagens de erro. Quando a Intel eventualmente os liberar, o atualizador de software os substituirá pelas versões reais.

Como navegar no site da Intel Graphics for Linux

Foi perguntado por meio de comentários como navegar no novo site da Intel ( 01.org - Linux Graphics Downloads ) que apresenta esta tela:

Digite Ubuntu 16.04 no campo de pesquisa e clique no botão Filter .

Para o Ubuntu 16.10, selecione o primeiro resultado. No nosso caso, o Ubuntu 16.04 seleciona o segundo resultado INTEL GRAPHICS UPDATE TOOL FOR LINUX* OS V2.0.2 e esta tela aparece:

No meu caso eu selecionei o Ubuntu 16.04 64-bit que baixou o arquivo intel-graphics-update-tool_2.0.2_amd64.deb para o meu diretório ~/Downloads .

O próximo passo é abrir o terminal e usar:

cd Downloads
sudo dpkg -i intel*.deb

OBSERVAÇÃO: A Intel usa a fonte ttf ancients e sua instalação falhará se não estiver em seu sistema. Neste ponto, você precisa usar:

sudo apt -f install
sudo apt update
sudo apt upgrade

Agora você pode executar a ferramenta Intel Graphics for Linux Updater como esta tela mostra:

Adicione assinaturas Intel para o Ubuntu

Durante apt-get update você pode ver mensagens de aviso / erro como esta:

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.

Você precisará adicionar as assinaturas da Intel usando:

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

Em seguida, atualize no Ubuntu:

sudo apt update
sudo apt upgrade
    
por WinEunuuchs2Unix 03.10.2016 / 12:57
3

Você pode baixar o Firmware de Kernel que está faltando no site da Intel link

  1. Faça o download dos arquivos necessários
  2. Expanda os arquivos usando tar -xvf
  3. Instale os drivers usando sudo bash ./install --install

Repita para todos os firmwares mencionados e reinicie

    
por Sarvex 12.02.2017 / 02:49
0

A Intel mudou o site novamente, agora redirecionando para git.kernel.org.

Observe os seus avisos usando uma janela de terminal (terminal, PuTTY, etc. ou na máquina local) e, para cada um, clique no link na página git da Intel usando um navegador da Web (que exibe um dump hexadecimal do arquivo) , copie a localização do link do botão plain acima do dump, volte para o terminal e wget este link.

Depois de obter os arquivos correspondentes a cada aviso, cp ou sudo cp deles para /lib/firmware/i915 .

    
por Martin Pritchard 06.05.2018 / 10:35