Grafikus Intel firmware telepítése

kimarite képe

Egy mindennapos történet, az új kernel telepítése
https://linuxmint.hu/blog/2018/03/a-legujabb-kernel-telepitese-a-dpkg-segitsegevel
hozta azt, hogy hiányzó grafikus Intel firmware-eket telepítgettem.
Talán nem mindenki ismeri a telepítés módszerét, számukra osztom meg ezt a leírást, amely egy általános példa más, grafikus Intel firmware-ek telepítésére is.

Possible missing firmware

Ha az új kernel telepítésekor, frissítésekor, vagy általában a

sudo update-initramfs -uk all

parancssor futtatásakor ehhez hasonló figyelmeztetéseket (W = Warning)

update-initramfs: Generating /boot/initrd.img-4.15.7-041507-generic
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
Warning: No support for locale: hu_HU.utf8
update-initramfs: Generating /boot/initrd.img-4.8.0-53-generic
Warning: No support for locale: hu_HU.utf8

tapasztalsz,...

apt-file (telepítés, adatbázis frissítés)

akkor először telepítsd az apt-file alkalmazást,

sudo apt-get install apt-file

majd frissítsd az adatbázisát (a folyamatot ne szakítsd meg),

sudo apt-file update

... az adatbázis frissítését egy alkalommal szükséges megtenned, a telepítés után. További felhasználói beavatkozás nem szükséges.

Firmware (keresés, telepítés)

majd keress rá a hiányzó firmware-ek egyikére, mondjuk, az elsőre:

apt-file search kbl_guc_ver9_14.bin
firmware-misc-nonfree: /lib/firmware/i915/kbl_guc_ver9_14.bin

Telepítsd a találatban szereplő alkalmazást, amely ez esetben a firmware-misc-nonfree csomag (más is lehet!):

sudo apt-get install firmware-misc-nonfree

A telepítés után ellenőrizd, van-e hiány:

sudo update-initramfs -uk all

Keress rá a hiányzó firmware-re az imént ismertetett módszerrel, és telepítsd az azt tartalmazó csomagot!

Megjegyzem, Linux terjesztésenként egy, legfeljebb két csomag tartalmazza az éppen hiányzó firmware-eket, azaz, nem órákig tartó keresésről van szó sohasem.

A telepítés után ellenőrizd, van-e hiány:

sudo update-initramfs -uk all
  • Ha már nem látható hiányzó firmware a parancssor kimenetében, akkor a továbbiakban semmi dolgod a történettel.
  • Ha még látható hiányzó firmware a parancssor kimenetében, az azt jelenti, hogy a rendszereden, vagyis a használatban lévő tükrökről nem érhető el olyan csomag, ami tartalmazza a hiányzó firmware-t, így azokat le lehet tölteni, és talán érdemes is.

Jegyzet

Az apt-file alkalmazás (a search, azaz a keresés kapcsolóval használva) a keresett kifejezést a csomagok összetevőiben, tartalmában is megnézi. Pontos és nagyon kényelmes, ezért ajánlom jó szívvel a használatát! Bármit megtalálsz, ami elérhető a tükrökről, legyen az firmware, programkönyvtár vagy más összetevő. Igaz, általában nem szokott hiányozni semmi a rendszerből. A hiányzó összetevőt tartalmazó csomagot legtöbbször csak telepíteni kell, tehát az egyéni letöltés ritka, mint a fehér holló. Ha Debiant használsz, akkor a nem szabad összetevők tükrét fel kell venned (non-free) egyes csomagok telepítéséhez. A Debian-alapú LMDE ezt a tükröt tartalmazza!
Lehet online is keresni, habár, nekem az kényelmetlenebb...
Linux Mint (Ubuntu-alapú): http://packages.linuxmint.com/
és https://packages.ubuntu.com/
LMDE (Debian-alapú): https://www.debian.org/distrib/packages
Lehet a Synaptic csomagkezelővel is keresni,
Synaptic csomagkezelő: beállítások, használat (első rész)
de úgyis a terminálban látod a hiányt, tán felesleges megnyitnod még egy alkalmazást.
Az apt-file és a Synaptic figyelembe veszi a használt rendszer verzióját, míg az online keresésnél neked kell kiválasztanod azt.

Firmware (letöltés)

... ha a tükrökről nem érhető el az a csomag, amely a hiányzó firmware-eket tartalmazza!

Mondanám, hogy látogass el ide, de ne tedd!
https://01.org/linuxgraphics/downloads/firmware
A fenti a régi firmware lelőhely, és emez az új:
https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915
Keresd meg a hiányzó firmware-eket!

A leírás akkor készült, amikor az Intel még a saját weboldalán tette elérhetővé a firmware-eket.
Időközben az Intel a nyílt forráskódra váltott (és ez nagyon rendes dolog volt tőlük).
Manapság a firmware-ek a kernel Git oldalán laknak, de az archív tartalomban még a régi oldalra hivatkozok.

A wget letöltéseknél arra figyelj, manapság nem tömörítvényt töltesz le, hanem a firmware fájlt egy az egyben, mégpedig annak pontos neve szerint! Példa a letöltésre a név tekintetében: kbl_guc_ver9_14.bin .

A letöltött fájlt be kell másolod ide, erre az elérési útra, vagyis az i915 könyvtárba:

/lib/firmware/i915/

Példa (ha a wget alkalmazást használod a letöltéshez):

-- a letöltés (wget)

wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915/kbl_guc_ver9_14.bin

-- a megfelelő helyre másolás (cp)

sudo cp kbl_guc_ver9_14.bin /lib/firmware/i915/

A letöltendő firmware nevére - a Firefox böngésző használata esetén -  a Ctrl + F gyorsbillentyű használatával lehet rákeresni.
https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915
A letöltés internetes címe (hivatkozás, URL) a firmware nevénél található, és a böngésző környezeti menüjének (egér jobb gombos menü) Hivatkozás címének másolása elemével a vágólapra másolható.
Az URL terminálba beillesztése - a wget után egy szóközt alkalmazva - a terminál menü, vagy a környezeti menü használatával (az ablakba bárhova kattintva > Beillesztés), vagy a Shift + Ctrl + V gyorsbillentyűvel történhet. A parancssorok futtatása az Enter megnyomásával indítható.

Ellenőrizd, van-e hiány:

sudo update-initramfs -uk all

Enjoy :-)

A leírás további része archív, ne használd!

Jelen esetben, a figyelmeztetésben (Warning) szereplő firmware-ek nevéből
kbl_guc_ver9_14.bin for module i915
bxt_guc_ver8_7.bin for module i915
kikövetkeztethető, hogy például nekem a Kabylake és a Broxton GUC firmware-ek kellenek, és az is látszik, hogy melyik verziószámú szükséges ezekből.

Íme:
Kabylake | kbl | GuC - Ver 9.14
Broxton | bxt | GuC - Ver 8.7

Előkészületek

-- letöltöd a hiányzó firmware-eket
(te nyilván azokat töltsd le, amik neked kellenek)

wget https://01.org/sites/default/files/downloads/intelr-graphics-linux/kblgucver914.tar_1.bz2
wget https://01.org/sites/default/files/downloads/intelr-graphics-linux/bxtgucver87.tar_0.bz2

-- kibontod mindkettőt
(a fájlnév elejét elég begépelned, majd
a TAB billentyű egyszeri megnyomásával a fájlnevet kiegészíted)

tar xfv kblgucver914.tar_1.bz2
tar xfv bxtgucver87.tar_0.bz2

Telepítés

Kezdjük a Kabylake firmware telepítésével

-- belépsz a megfelelő könyvtárba

cd kbl_guc_ver9_14/

-- ellenőrzöd, a letöltött fájl nem sérült, illetve tényleg az a bizonyos firmware, és nem más ...

echo 23366cc1eaa04732c1cec496c619a328 ; md5sum kbl_guc_ver9_14.bin

... a kimenet egyértelmű, jó a firmware

23366cc1eaa04732c1cec496c619a328
23366cc1eaa04732c1cec496c619a328 kbl_guc_ver9_14.bin

MD5SUM ellenőrző összeg innen:
https://01.org/linuxgraphics/downloads/kabylake-guc-9.14

-- megnézed, jó helyre települ majd a script-tel

grep KERNEL_FIRMWARE_DIR= install.sh

... tökéletes, íme

KERNEL_FIRMWARE_DIR="/lib/firmware"

-- telepíted

sudo bash ./install.sh

... saccperkábé ezt fogod látni, vagyis a művelet sikerült

Success: /lib/firmware/i915/kbl_guc_ver9_14.bin installed!
Forcing initrd/initramfs update...
Trying to backup /boot/initrd.img-4.8.0-53-generic
WARNING: Couldn't create a backup of your current initramfs
Trying to update /boot/initrd.img-4.8.0-53-generic
update-initramfs: Generating /boot/initrd.img-4.8.0-53-generic
Warning: No support for locale: hu_HU.utf8
Adding /lib/firmware/i915/kbl_guc_ver9_14.bin
Success: Please reboot your machine!

Jöhet a Broxton firmware telepítése

-- visszalépsz a munkakönyvtárba
(vélhetően a saját könyvtárad alá,
így ez a parancs is megfelelne: cd)

cd ..

... azaz egy könyvtárral feljebb ugrasz.

-- belépsz a megfelelő könyvtárba

cd bxt_guc_ver8_7/

-- ellenőrzöd, a letöltött fájl nem sérült, illetve tényleg az a bizonyos firmware, és nem más ...

echo 3d25e3617ae42c6747edb87ef0793783 ; md5sum bxt_guc_ver8_7.bin

... a kimenet egyértelmű, jó ez a firmware is

3d25e3617ae42c6747edb87ef0793783
3d25e3617ae42c6747edb87ef0793783 bxt_guc_ver8_7.bin

MD5SUM ellenőrző összeg innen:
https://01.org/linuxgraphics/downloads/broxton-guc-8.7

-- megnézed, jó helyre települ majd a script-tel

grep KERNEL_FIRMWARE_DIR= install.sh

... tökéletes, íme

KERNEL_FIRMWARE_DIR="/lib/firmware"

-- telepíted

sudo bash ./install.sh

... saccperkábé ezt fogod látni, vagyis a művelet sikerült

Success: /lib/firmware/i915/bxt_guc_ver8_7.bin installed!
Forcing initrd/initramfs update...
Trying to backup /boot/initrd.img-4.8.0-53-generic
WARNING: Couldn't create a backup of your current initramfs
Trying to update /boot/initrd.img-4.8.0-53-generic
update-initramfs: Generating /boot/initrd.img-4.8.0-53-generic
Warning: No support for locale: hu_HU.utf8
Adding /lib/firmware/i915/kbl_guc_ver9_14.bin
Adding /lib/firmware/i915/bxt_guc_ver8_7.bin
Success: Please reboot your machine!

-- érdemes lehet egy ellenőrzés az újraindítás előtt, nézzük

sudo update-initramfs -uk all

... ez is rendben

update-initramfs: Generating /boot/initrd.img-4.15.7-041507-generic
Warning: No support for locale: hu_HU.utf8
Adding /lib/firmware/i915/kbl_guc_ver9_14.bin
Adding /lib/firmware/i915/bxt_guc_ver8_7.bin
update-initramfs: Generating /boot/initrd.img-4.8.0-53-generic
Warning: No support for locale: hu_HU.utf8
Adding /lib/firmware/i915/kbl_guc_ver9_14.bin
Adding /lib/firmware/i915/bxt_guc_ver8_7.bin

-- újraindíthatod a rendszert.

Kiadási megjegyzések

Kabylake

RELEASE NOTES
This update contains:
1. Sub-feature level control for power management features.
2. Clean-up for power management interface.
3. Bug Fix for multi context scheduler flag.
4. Add per engine preemption support to scheduler.
5. Minor bug fixes.
6. Add support to log media reset count.

install.sh has been updated on 24/Feb/2017.

Broxton

RELEASE NOTES
This update contains:
1. Update parameter name (interface change).
2. Fix for power impact issue.
3. Add per engine preemption support in scheduler.
4. Fix for Sleep Shared Area Pointer Validation.
5. Fix for Golden Context init for Render only for Engine Reset.
6. Fix for Forcewake Render check.

install.sh has been updated on 24/Feb/2017.

Ha kérdésed van, ne tartsd magadban!

Enjoy :)

Hozzászólások

tonsur képe

Grafikus Intel firmware telepítése

Értékelés: 

0
Még nincs értékelve

Köszi a részletes leirást.
A frissitést minden kernel frissités után meg kell csinálni, vagy nem függ a kernel verziótól?
Ezt a firmware frissitést késöbb frissitésként egyébként is megkapják a linux disztrók?

kimarite képe

Grafikus Intel firmware telepítése

Értékelés: 

0
Még nincs értékelve

#1A frissitést minden kernel frissités után meg kell csinálni, vagy nem függ a kernel verziótól?
-- nem, dehogy, az initramfs frissítése a kernel frissülésekor lefut.
Ezt a firmware frissitést késöbb frissitésként egyébként is megkapják a linux disztrók?
-- vélhetően, ez egy alapvető frissítés, bár ellentmond ennek az, hogy egyik számítógép ilyen, a másik amolyan, és mindent nem lehet betenni eleve a kernelbe.

kimarite képe

5.19-es kernel | i915 (Debian 11)

Értékelés: 

0
Még nincs értékelve

Az eljárás így is kivitelezhető:

Figyelj arra, hogy én az i915-ös firmware-eket töltöm le. Ha más firmware hiányzik, járj el annak megfelelően, a letöltés és a másolás tekintetében...

Töltsd le az elérhető legújabb firmware csomagot:

git clone https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/

Lépj be a letöltött könyvtárba (példa: i915):

cd linux-firmware/i915/

Másold be a helyére az összes firmware-t (példa: i915):

sudo cp * /lib/firmware/i915/

Futtasd a frissítő parancssort:

sudo update-initramfs -uk all

Persze, mindezt csak akkor, ha firmware hiányod van, és a leírásban említett apt-file alkalmazással nem találod a firmware csomagot, és például akkor, ha ezt a kernelt használod.

apt-cache policy linux-image-5.19*
linux-image-5.19.0-1.1-liquorix-amd64:
  Telepítve: 5.19-1.1~bullseye
  Jelölt:    5.19-1.1~bullseye
  Verziótáblázat:
 *** 5.19-1.1~bullseye 500
        500 http://liquorix.net/debian bullseye/main amd64 Packages
        100 /var/lib/dpkg/status

A linux-firmware csomag teljes mérete kb. 1.5 GB.