====== ASUS Zenbook UX362-FA: bootování jádra a vypnutí načítání mikrokódu ======
//Vytvořeno: **28.5.2019**//
> **Poznámka k aktuálnosti:** Tento článek vychází z konkrétní dobové chyby při bootování Linuxu na notebooku ASUS Zenbook UX362-FA. Postup může být už překonaný a parametr nemusí být potřeba na novějších verzích BIOSu, mikrokódu nebo jádra.
Na [[hardware:notebooky:asus-zenbook-ux362-fa:uvod|ASUS Zenbooku UX362-FA]] jsem tehdy narazil na nepříjemný problém: po restartu přestalo bootovat jádro, na kterém notebook předtím normálně běžel. Jako dočasné řešení pomohlo zakázat načítání novějšího Intel mikrokódu při startu jádra.
===== Jak se problém projevoval =====
Po měsíci běžných aktualizací došlo k restartu notebooku a systém přestal bootovat. Nedařilo se spustit ani původně funkční jádro ani recovery mode. Většinou se boot zastavil na poslední hlášce:
Loading initial ramdisk ...
Podezření nakonec padlo na mikrokód procesoru Intel. Linux umí při startu načíst novější mikrokód než ten, který dodává BIOS, a právě tato fáze se tehdy ukázala jako problematická.
===== Dočasné řešení přes parametr dis_ucode_ldr =====
Jádro má parametr ''dis_ucode_ldr'', kterým se zakáže načítání novějšího mikrokódu při bootu. Pak se použije původní mikrokód z BIOSu.
Dočasný postup při bootování byl tento:
* v nabídce GRUBu stisknout klávesu ''e''
* najít řádek se zaváděním jádra
* na jeho konec přidat parametr ''dis_ucode_ldr''
* potvrdit boot klávesou ''F10''
Původní řádek například vypadal takto:
linux /vmlinuz-5.0.0-15-generic root=/dev/mapper/zenbook-ubuntu_crypt ro quiet splash $vt_handoff
Upravený řádek:
linux /vmlinuz-5.0.0-15-generic root=/dev/mapper/zenbook-ubuntu_crypt ro quiet splash $vt_handoff dis_ucode_ldr
===== Trvalejší nastavení v GRUBu =====
Pokud bylo potřeba parametr používat při každém startu, šel doplnit do konfigurace GRUBu v souboru ''/etc/default/grub''.
Do řádku ''GRUB_CMDLINE_LINUX_DEFAULT'' se doplnil parametr:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash dis_ucode_ldr"
Pak už zbývalo přegenerovat konfiguraci zavaděče:
update-grub
===== Poznámka =====
Tohle řešení jsem tehdy bral jako workaround do doby, než bude chyba v mikrokódu nebo v navazujícím řetězci startu opravena. Není to obecné doporučení vypínat mikrokód trvale na všech strojích.
===== Zdroje =====
* [[https://www.asus.com/2-in-1-PCs/ASUS-ZenBook-Flip-13-UX362FA/|ASUS ZenBook Flip 13 UX362FA]]
* [[https://www.root.cz/clanky/aktualizujeme-mikrokod-procesoru-intel-a-amd-z-linuxu/|Aktualizujeme mikrokód procesoru Intel a AMD z Linuxu]]