"W: возможно отсутствие прошивки для модуля i915_bpo" при обновлении initramfs

69

Когда я запускаю обновление драйвера ядра или NVIDIA на своем 16.04, это запускает initramfs rebuild, который выводит предупреждение ниже:

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

У меня есть ноутбук с двумя графическими чипами, NVIDIA GeForce 940M и интегрированной графикой Intel i5-6200U.

Используемое устройство - это моя карта 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

Вот результат lshw -c video , соответствующий моему графическому чипу Intel, который должен использовать этот драйвер:

    *-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)

Файл в предупреждении не существует, только те:

$ 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

Последний пакет драйверов кажется установленным:

$ 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

Что означает это предупреждение, и как я могу его исправить?

    
задан Byte Commander 12.08.2016 в 15:29
источник

3 ответа

57

Пакет драйверов несколько отстает от ядра. В моем случае отсутствующая прошивка не имеет значения, потому что у меня нет процессора SkyLake, но в вашем случае это может иметь значение. Вы можете получить новую прошивку от здесь .

РЕДАКТИРОВАТЬ 1: Обратите внимание, что ссылка изменилась, но читатели все равно должны найти то, что им нужно в новой ссылке, хотя иногда бывает трудно точно узнать, что вы ищете.

РЕДАКТИРОВАТЬ 2: Этот ответ должен быть применим к некоторым другим новым требованиям к прошивке, которые возникли после того, как этот ответ был изначально написан. Например:

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
    
ответ дан Doug Smythies 12.08.2016 в 16:41
источник
13

26 мая 2018 г. Обновление

Недавно Intel перешла на скачивание файлов под названием blobs , что означает B inary L arge OB ject ( двоичные объекты).

Чтобы увидеть новые способы установки драйвера i915, см. этот ответ , обновленный сегодня.

Skylake (skl) Firmware

Появилась новая ссылка для доступа к прошивке Skylake (skl) для тех, у кого есть этот графический движок, найденный здесь ( 01.org - Linux Graphics Загрузка прошивки ). Затем следует примерный снимок экрана.

ЕсливыпопытаетесьвыбратьпрошивкуKabylake(kbl)илиBroxton(bxt),выполучитесообщениеобошибке,таккакэтидрайверыещенебылиопубликованы.

ОтсутствуетпрошивкаKabylake(kbl)иBroxton(bxt)

Стараяссылкатребуетспециальногоsignon.Intelизменилассылкунасвойсайтдляостальныхизнас.

По-прежнемуостаютсясообщенияопредупреждении,генерируемыеsudoupdate-initramfs-u,когдаверсияядра>4.8(Ubuntu16.10иUbuntu17.04):

W:Possiblemissingfirmware/lib/firmware/i915/kbl_dmc_ver1_01.binformodulei915W:Possiblemissingfirmware/lib/firmware/i915/kbl_guc_ver9_14.binformodulei915W:Possiblemissingfirmware/lib/firmware/i915/bxt_guc_ver8_7.binformodulei915

Всвоевремяотчетобошибке( bugs.launchpad.net - ошибка прошивки linux ) сказал, что драйверы просто не существуют и не будут, пока не будет выпущен будущий чип под названием "kaby lake". По состоянию на февраль 2017 года вы можете установить эти драйверы в соответствии с этими инструкциями: Обновлено ядро до 4.8, теперь отсутствуют предупреждения прошивки

Вывести предупреждающие сообщения

По состоянию на февраль 2017 года игнорировать этот раздел и следовать инструкциям в предыдущем абзаце выше.

Чтобы уведомить предупреждение, я сделал следующее:

$ 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! Больше предупреждающих сообщений.

Программа "hello" - это ассемблерная программа размером 504 байта, которая гласит "Hello World!". Вы можете скопировать любой маленький исполняемый файл в файлы прошивки, указанные в сообщениях об ошибках. Когда Intel в конечном итоге выпустит их, программа обновления обновит их с помощью реальных версий.

Как перемещаться по веб-сайту Intel Graphics для Linux

С помощью комментариев можно было проследить, как перемещаться на новом сайте Intel ( 01.org - Загрузка графических файлов Linux ), который представляет этот экран:

ВведитеUbuntu16.04вполепоискаинажмитекнопкуFilter.

ДляUbuntu16.10выберитепервыйрезультат.ВнашемслучаеUbuntu16.04выбираетвторойрезультатINTELGRAPHICSUPDATETOOLFORLINUX*OSV2.0.2,иэтотэкранпоявляется:

Вмоемслучаеявыбрал64-битныйUbuntu16.04,которыйзагрузилфайлintel-graphics-update-tool_2.0.2_amd64.debвмойкаталог~/Downloads.

Следующимшагомявляетсяоткрытиетерминалаииспользование:

cdDownloadssudodpkg-iintel*.deb

ПРИМЕЧАНИЕ.Intelиспользуетшрифтancientsttfивашаустановказавершитсянеудачно,еслиэтоневашасистема.Наэтомэтапевамнеобходимоиспользовать:

sudoapt-finstallsudoaptupdatesudoaptupgrade

ТеперьвыможетезапуститьинструментIntelGraphicsforLinuxUpdater,какпоказанонаэтомэкране:

Добавить подписи Intel для Ubuntu

В течение apt-get update вы можете увидеть сообщения об ошибках / ошибках, например:

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.

Вам нужно будет добавить подписи Intel, используя:

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

Затем обновите в Ubuntu:

sudo apt update
sudo apt upgrade
    
ответ дан WinEunuuchs2Unix 03.02.2017 в 02:12
2

У меня также возникла аналогичная проблема, потому что я обновил ядро из приложения Ubuntu Gnome 16.04 «Программное обеспечение» (собственный менеджер пакетов), и он разбился при обновлении.

Итак, мне было запрещено загружать Ubuntu снова, потому что файл linux был неудачно сгенерирован.

Чтобы решить эту проблему, я сделал следующее:

  1. Перезагрузите Linux и сразу после экрана материнской платы нажмите Shift , чтобы войти в меню grub;
  2. Выберите предыдущую версию Linux из меню. В моем случае *4.4.0-21-generic и нажмите Enter ;
  3. Как только Ubuntu снова встанет, удалите сломанный файл linux. В моем случае *4.4.0-59-generic (я использовал для этого диспетчер пакетов Synaptic);
  4. Загрузите и установите отсутствующую прошивку с страницы Intel (так же, как Doug Smythies) . В моем случае я получил KabyLake kbl DMC - Ver 1.01 ;
  5. И, наконец, снова установите ядро linux *4.4.0-59-generic (в моем случае) или просто linux-generic для последнего полного общего ядра Linux.

Успех! Ядро обновлено, и все прошивки работают нормально!

С уважением!

    
ответ дан Matt Mello 17.01.2017 в 03:50