Dezactivare Intel ME și înlocuire BIOS cu Coreboot (SeaBIOS) pe Thinkpad X230

Pentru ca Thinkpad X230-ul să fie laptopul perfect, acesta ar fi trebuit să vină cu tastatura lui X220 (dar iluminată), Intel ME dezactivat și Coreboot preinstalat. În privința tastaturii lucrurile sunt clare, dar îl poți aduce aproape de perfecțiune cu un programator de memorie!

thinkpad x230

Am încercat dezactivarea Intel ME prin metoda utilizată la T440p, dar n-aș fi reușit nici în ruptul capului, iar după câteva ore pierdute m-am dat bătut și-am mers la sigur: Skulls.

Și în cazul X230 avem două cipuri, așadar acestea vor trebui tratate individual, în funcție de tipul fiecăruia. Cel care găzduiește BIOS-ul este cel aflat spre interiorul plăcii de bază (top), iar celălalt (bottom) se ocupă de Intel ME și firmware-ul GBE, printre altele.

Mai mult, acestea pot fi diferite de la un X230 la altul, așadar nu există comenzi „standard” pentru a le face backup sau rescrie datele originale dacă procesul dă greș. Cu alte cuvinte, nici de această dată nu avem comenzi pentru copy&paste.

Backup!

După cum spuneam și mai devreme, în primele încercări de a neutraliza Intel ME și instala Coreboot am eșuat lamentabil. Deși laptopul pornea și funcționa fără probleme, nu aveam acces la BIOS și nici Intel ME nu părea afectat. De fiecare dată m-au salvat backup-urile! Cu acestea lăsam cipurile ca din fabrică și o luam de la capăt, fără stres, mai târziu.

La fel ca în cazul T440p, totul se face de pe alt laptop, unul cu bateria în stare foarte bună și încărcată. Eu am folosit un Thinkpad X240 cu Pop_OS!, dar n-ar trebui să fie probleme din nicio distribuție bazată pe Debian. Necesar este și un programator de memorie, ce va trebui conectat și manipulat după cum am explicat în celălalt ghid pe subiect.

backup firmware x230

Probabil nu e necesar să vă reamintesc asta, dar…

Atenție! Punând în practică informațiile facilitate în continuare, vă asumați responsabilitatea pentru daunele pe care i le puteți produce PC-ului!

După ce ați deconectat toate sursele de alimentare ale laptopului, conectați programatorul de memorie la primul chip (cel cu BIOS, aflat spre interiorul plăcii de bază).

În celălalt laptop cu Debian, instalați flashrom:

sudo apt install flashrom

Apoi conectați la un port USB al acestuia programatorul de memorie:

Programator de memorie X240 la x230

Din Terminal, cu ajutorul comenzii

sudo flashrom -p ch341a_spi -r top1.bin

Dacă cipul nu este identificat corect, flashrom va răspunde cu:

flashrom multiple chips

„Problema” se rezolvă cu un telefon mobil. Faceți o fotografie cu flash cipurilor și veți afla precis modelul fiecăruia:

cipuri x230

Apoi repetați comanda, însă de această dată indicând modelul cipului citit:

sudo flashrom -p ch341a_spi -r top1.bin XXXXXXX/YYYYYY -c

Nici măcar nu trebuie să vă stresați foarte tare, pur și simplu copiați numele celui real dintre cele identificate de flashrom, și-l lipiți la sfârșitul comenzii urmat de un „-c”:

citire cip x230 pentru backup

Apoi repetați acțiunea cel puțin încă o dată:

alte doua backup-uri x230

Se procedează la fel și în cazul celuilalt cip. Firește, dacă mai aveți nevoie de laptop, deconectați programatorul de memorie de la USB înainte de a muta cleștele de la un cip la celălalt. Abia după ce ați așezat bine cleștele conectați programatorul de memorie.

Și de această dată repetați operația de 2-3 ori, apoi comparați fișierele între ele pentru a vă asigura că acestea coincid, deci valide pentru recuperare.

Prima dată comparați fișierele .bin generate la descărcarea datelor de pe primul cip:

Apoi pe cele de pe al doilea:

comparare fisiere bin bottom cip

Dacă fișierele sunt identice, puteți continua. Altfel va trebui să reluați procesul.

Coreboot

Vorbim de cipuri diferite, așadar puteți instala Coreboot imediat după ce v-ați asigurat că fișierele .bin ce conțin informațiile de pe primul cip sunt identice. Astfel veți muta cleștele doar o singură dată. Pentru asta, urmați indicațiile de aici.

Dacă nu apar probleme:

Iar aici se poate încheia aventura dacă nu sunteți interesați de neutralizarea Intel ME.

Intel ME

Pentru neutralizarea Intel ME urmați indicațiile de aici. Treaba e cât se poate de simplă, atât doar că va trebui să executați comanda adăugându-i un „-m” la sfârșit:

sudo ./external_install_bottom.sh -m

Înainte de a executa comanda asigurați-vă că aveți Python instalat, altfel:

Dar nu e nicio problemă dacă v-ați dat seama prea târziu că nu-l aveți instalat. Îl instalați, scrieți unul dintre backup-uri pe cip, apoi reluați:

Câteva minute mai târziu:

Mă rog, a fost ceva bătaie de cap ce mi-a luat per total cam 2 ore între una și alta, dar a meritat deranjul. Acum am un X230 așa cum mi-am dorit, pe care orice distribuție Linux funcționează impecabil și care pornește în doar 4-5 secunde.

Despre Coreboot

Comparat cu BIOS-ul tradițional, e destul de chel. Nu poți să-i setez ordinea de BOOT, mereu va porni de pe SATA0, iar pentru mine asta e o problemă de când i-am înlocuit modemul 3G cu un mSATA și-am instalat sistemul de operare pe acesta.

E destul de enervant să trebuiască să aleg manual, de fiecare dată când pornesc laptopul, discul de pe care vreau să pornească, dacă nu vreau să-l folosesc cu Arcolinux, pe care l-am instalat pe un SSD montat în SATA0. Și nici la Arcolinux nu vreau să renunț, că mi s-a pus rău pata pe tiling window managers și chiar vreau să mă obișnuiesc să folosesc așa ceva.

Nu înțelege discurile GPT, pentru asta trebuie să-l ajuți cu un payload… însă acesta și toate celelalte minusuri sunt compensate de viteza cu care ai laptopul gata de atac, și e atât de rapid încât pare că nu l-ai pornit, ci l-ai trezit din standby!

4 Comentarii

  1. Felicitari ….fain articol…. o intrebare idioata poate… ssd-ul din msata functiona si inainte de a schimba bios-ul? …. sau e o facilitate aparuta dupa coreboot…. am un dell latitude e5250… am incercat sa-i schimb 3g-ul cu un ssd dar nu-l recunoaste. Multumesc

    1. Vali, m.sata-ul folosit trebuie să fie sata, nu nvme. Și da, funcționa și înainte, doar că pe X230 e sata1, deci strict pentru stocare.

  2. pai da….l-am testat pe o placa de baza… si-l vedea ca sata3… testat in socket m2 … e vorba de un no-name …foresee 2242 ca sa se potriveasca in locas de 64gb… tot pt vreo forma de linux…nu conta ca nu ar fi boot-at … pe alte dell-uri cu acelasi chipset au mers unele de la tosiba …de aia am tras concluzia ca smecheria este din bios…iar acele ssd-uri sunt eol deci doar pe la sh-uri sa le caut… pana atunci probabil o sa schimb laptopul 🙂 … cred ca mai mult conteaza cum e construit ce port-uri sunt legate la bus-ul de date etc…

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Acest sit folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.