Stará zaprášená a vyhozená deska. Po vyčištení od prachu jsem se pokusil ji oživit a funguje. Deska má integrovanou Intel grafiku a volný PCIe 3.0 slot. Sem by se dal strčit nějaký NVMe disk a udělat z toho rychlý stroj na testovací servřík. Nakoupil jsem levné komponenty, pokud by se pokus nepovedl, tak aby to moc nebolelo. Cílem je nabootovat z NVNe disku a vyzkoušet, jak bude deska chodit při kompilaci Gentoo Linuxu, případně rozchodit testovací virtualizační platformu Proxmox.

Otestoval jsem desku na práci s pamětí pomocí Memtest86+ (součást USB disku Finnixu 125), nabootoval pomocí Finnixu a Linuxový systém NVMe disk Patriot vidí jako zařízení /dev/nvme0n1. Dobrá zpráva.

Avšak BIOS NVMe disk nevidí a tudíž z něho nemůže nabootovat. Dalo by se to vyřešit bootováním z USB disku, ale to není moc pěkné. Pokusím se upravit AMI BIOS desky tak, aby byl NVMe disk vidět a dalo se z něj nabootovat.

Použité komponenty

  1. vyhozená deska MSI B75A-P45 (MS-7798 ver. 1.1), CPU Intel i5

  2. AXAGON Internal PCIe adapter for NVMe M.2 SSD + cooler (červený rámeček na obrázku)

  3. Patriot P310 M.2 PCIe Gen3 x4 solid state drive 240GB (uvnitř červeného rámečku)

  4. RAM Patriot DDR3 UDIMM PC3-12800 1600Mhz dual channel 4ks (celkem 32GB)

MSI B75A-P45 (MS-7798 ver. 1.1)

motherboard msi b75ma p45

motherboard msi b75ma p45 2

Software

  1. MMtools - software pro modifikaci BIOSu.

  2. Afudos - software pro flashování BIOSu.

  3. Rufus - software pro výrobu bootovacích USB flash disků.

  4. EFI NVME BIOS module NvmExpressDxe_4.ffs nebo NvmExpressDxe_5.ffs NvmExpress_4.ffs - link nefunguje

Postup

Úpravy budeme dělat na počítači s Windows.

Příprava bootovacího USB flash disku

Seženeme si USB flash disk a spustíme Rufus, uděláme si bootovací disk se systémem FreeDOS. V "Zařízení" vybereme náš flash disk, ve "Výběr boot" dáme FreeDOS, "Oddíl a typ cílového systému" MBR, "Cílový systém" BIOS (UEFI-CSM), "Souborový sytém" FAT32 a "Velikost clusteru" 8192. Tlačítkem "Start" spustíme formátování. (Všechna původní data na flash disku budou smazána.)

nvme rufus1

Na připravený disk si zkopírujeme afudos.exe a první část je hotova.

Nabootování a záloha BIOSu

Nabootujeme na desce, jejíž BIOS budeme upravovat, pomocí USB disku systém FreeDOS a na USB disk si zkopírujeme BIOS pomocí příkazu

afudos oldbios.rom /o

Počkáme, až se BIOS nahraje na USB disk a potom desku vypneme.

Úprava BIOSu programem MMTool

Vrátíme se s USB diskem na počítač s Windows a spustíme program MMTool (mmtool_v5.exe). MMTool je program na editaci BIOSu

Tlačítkem "Load Image" načteme z USB disku náš BIOS (soubor oldbios.rom). Po načtení BIOSu hledáme ve sloupci FileName řádek s názvem CSMCORE.

Nahrání starého BIOSu

nvme mmtool1

Teď vybereme Module file (soubor, který do BIOSu přidáme) pomocí tlačítka Browse. Já tam budu dávat soubor NvmExpressDxe_4.ffs.

Vložení modulu do BIOSu

nvme mmtool2

Dále stiskneme tlačítko "Insert" a přidám tento náš modul na konec volumu č. 01 do BIOSu. Na obrázku je vidět, že modul NVmExpressDxe_4 má index 11C.

Vložený modul NvmExpressDxe_4

nvme mmtool3

Uložíme upravený BIOS do souboru newbios.rom pomocí tlačítka "Save Image as" a nakopírujeme si newbios.rom na USB disk.

Nahrání upraveného BIOSu

Nabootujeme opět FreeDOS na naší desce a pokusíme se nahrát upravený BIOS pomocí příkazu

afudos newbios.rom /gan

Během programování BIOSu se nesmí stát, že desku vypneme. Pokud ano, tak máme místo desky cihlu.

Pokud se vše podařilo, tak v upraveném BIOSu vidíme řadič NVMe disků a můžeme z NVMe disku bootovat.

Výsledek

amibios modifikovany

Desku jsem dal do vyřazené skříně, NVMe disk dostal k sobě ventilátor, aby se dobře chladil. Přidal jsem 2 točivé disky 1G a nainstaloval hypervisor ProxMox na testování.

Podle původního autora Vladimíra Maleronoka by tento postup měl fungovat pro libovolný AMI BIOS.

Zdroje