Sommario:

Lenovo T420 Coreboot con Raspberry Pi: 13 passaggi (con immagini)
Lenovo T420 Coreboot con Raspberry Pi: 13 passaggi (con immagini)

Video: Lenovo T420 Coreboot con Raspberry Pi: 13 passaggi (con immagini)

Video: Lenovo T420 Coreboot con Raspberry Pi: 13 passaggi (con immagini)
Video: Установка Libreboot на W500 с четырехъядерным модом 2024, Luglio
Anonim
Lenovo T420 Coreboot con Raspberry Pi
Lenovo T420 Coreboot con Raspberry Pi

Coreboot è un sostituto del bios open source. Questa guida descriverà i passaggi necessari per installarlo su un Lenovo T420.

Prima di iniziare dovresti essere a tuo agio nell'usare un terminale Linux e nello smontare il tuo laptop.

C'è la possibilità che questo blocchi il tuo laptop, lo fai a tuo rischio.

Forniture

  • Ponoma 5250 Test Clip - Per il collegamento al chip del bios.
  • Cavi jumper Breadboard da femmina a femmina - Conosciuti anche come cavi Dupont.
  • Cacciavite a stella
  • Pinze piccole o punta esagonale da 5,0 mm.
  • Composto termico
  • Alcool isopropilico
  • Tamponi di cotone
  • Lenovo T420
  • Computer con Linux. "PC principale"
  • Raspberry Pi (3 o 4) - con l'ultima versione o sistema operativo Raspberry Pi - Le istruzioni per l'installazione sono disponibili qui.
  • Manuale di manutenzione hardware T420

Passaggio 1: aggiorna il controller integrato sul T420

È una buona idea aggiornare il controller integrato alla versione più recente. Il modo più semplice per farlo è installare l'ultima versione del BIOS di fabbrica. Coreboot non è in grado di toccare l'EC. Non sarai in grado di aggiornarlo dopo aver lampeggiato a meno che non torni al BIOS di fabbrica.

Passaggio 2: prepara il Raspberry Pi per il lampeggio. (SU RPI)

Prepara il Raspberry Pi per il lampeggio. (SU RPI)
Prepara il Raspberry Pi per il lampeggio. (SU RPI)
Prepara il Raspberry Pi per il lampeggio. (SU RPI)
Prepara il Raspberry Pi per il lampeggio. (SU RPI)

Per leggere/scrivere nel chip del bios è necessario abilitare alcuni moduli del kernel.

Accedi all'utilità di configurazione di Raspberry Pi.

sudo raspi-config

Sotto le opzioni dell'interfaccia abilita:

  • P2 SSH - se eseguirai il pi senza testa
  • P4 SPI
  • P5 I2C
  • P8 Remote GPIO - Se si utilizza ssh per connettersi al pi

Passaggio 3: preparare il computer "principale" per la creazione di Coreboot (sul PC principale)

La prima cosa da fare è installare le dipendenze necessarie per compilare coreboot.

Per un sistema basato su Debian

sudo apt install git build-essential gnat flex bison libncurses5-dev wget zlib1g-dev

Per un sistema basato su Arch

sudo pacman -S base-devel gcc-ada flex bison ncurses wget zlib git

Crea una directory nella directory home in cui lavorare. Per questo esempio la chiamerò "lavoro". Avrai anche bisogno di una directory per memorizzare le immagini di fabbrica. Chiamerò quella directory "roms" Puoi farlo in una riga per risparmiare tempo

mkdir -p ~/lavoro/roms

Spostati nella directory di lavoro

cd ~/lavoro

Scarica l'ultima versione di ME_Cleaner da github

git clone

Scarica l'ultima versione di Coreboot

git clone

Spostati nella directory coreboot

cd ~/lavoro/coreboot

Scarica i sottomoduli richiesti

aggiornamento del sottomodulo git --init --checkout

Crea una directory per contenere alcuni file specifici per il tuo T420 che saranno necessari in seguito.

mkdir -p ~/work/coreboot/3rdparty/blobs/mainboard/lenovo/t420

Costruisci lo strumento ifd. Questo sarà usato per dividere il bios di fabbrica nelle sue diverse regioni.

cd ~/work/coreboot/utils/ifdtool

fare

Passaggio 4: collegare la clip

Collega la clip
Collega la clip

Usa il cavo 6 da femmina a femmina per collegare la clip al Pi

Bios 1 > Pi 24

Bios 2 > Pi 21

Bios 4 > Pi 25

Bios 5 > Pi 19

Bios 7 > Pi 23

Bios 8 > Pi 17

I pin 3 e 7 del BIOS non vengono utilizzati.

Passaggio 5: accedere al chip del BIOS

Accedi al Chip Bios
Accedi al Chip Bios
Accedi al Chip Bios
Accedi al Chip Bios
Accedi al Chip Bios
Accedi al Chip Bios
Accedi al Chip Bios
Accedi al Chip Bios

Il chip del bios si trova sotto il roll-bar. Per accedervi sarà necessario rimuovere la scheda madre.

Il Manuale di manutenzione hardware può fornire istruzioni se hai problemi a capirlo.

Ho incluso le mie immagini di smontaggio. Non sono mai destinate alla visualizzazione pubblica (la mia calligrafia è orribile scusa) ma che diamine possono aiutare.

Passaggio 6: collegare la clip al chip bios

Collega la clip al chip bios
Collega la clip al chip bios
Collega la clip al chip bios
Collega la clip al chip bios
Collega la clip al chip bios
Collega la clip al chip bios

Con il Pi spento collegare la clip al chip del bios.

Passaggio 7: leggere il chip flash (su RPI)

Leggi il chip flash (su RPI)
Leggi il chip flash (su RPI)
Leggi il chip flash (su RPI)
Leggi il chip flash (su RPI)

Accendi il Pi

Crea una directory roms e spostati in essa.

mkdir -p ~/lavoro/roms

cd ~/lavoro/rom

Per leggere e scrivere il chip dovrai usare un programma chiamato Flashrom. Prima assicurati che sia installato

sudo apt install flashrom

Usa la flashrom per sondare il chip e assicurati che sia collegato

flashrom -p linux_spi:dev=/dev/spidev0.0, spispeed=128

Leggi il BIOS di fabbrica dal chip 3 volte e salvali come factory1.rom factory2.rom factory3.rom

Usa l'opzione -c per specificare il tuo chip flash. Assicurati di inserire tutto tra le virgolette

Ogni lettura richiederà del tempo a seconda del chip, potrebbe essere tra 30-45 minuti ogni lettura. Non preoccuparti se sembra che il pi greco sia bloccato.

flashrom -p linux_spi:dev=/dev/spidev0.0, spispeed=128 -c -r factory1.rom

flashrom -p linux_spi:dev=/dev/spidev0.0, spispeed=128 -c -r factory2.rom

flashrom -p linux_spi:dev=/dev/spidev0.0, spispeed=128 -c -r factory3.rom

Passaggio 8: confrontare i 3 file (su RPI)

Confronta i 3 file (su RPI)
Confronta i 3 file (su RPI)

Quindi vuoi confrontare i 3 file per assicurarti di avere una buona lettura / connessioni

sha512sum fabbrica*.rom

Se corrispondono, copiali sul computer principale nella directory ~/work/roms.

Spegni il Pi. Puoi lasciare la clip collegata.

Passaggio 9: pulire il ME (sul PC principale)

Pulisci il ME (sul PC principale)
Pulisci il ME (sul PC principale)

Sposta in ~/lavoro/roms

cd ~/lavoro/rom

Le rom di fabbrica non devono essere modificate. Fai una copia di uno di loro da pulire.

cp factory1.rom clean.rom

Pulisci l'IME su clean.rom

~/work/me_cleaner/me_cleaner.py -S clean.rom

Passaggio 10: dividere l'immagine Rom. (Sul PC principale)

Dividi l'immagine Rom. (Sul PC principale)
Dividi l'immagine Rom. (Sul PC principale)

Il chip del bios è diviso in 4 regioni. È necessario dividere l'immagine clean.rom nelle sue diverse regioni con lo strumento ifd fornito da coreboot

~/work/coreboot/utils/ifdtool/ifdtool -x clean.rom

Questo produrrà 4 file. Dobbiamo rinominarne 3 e possiamo eliminarne 1

Rinominare il descrittore regione

mv flashregion_0_flashdescriptor.bin descriptor.bin

Elimina la regione del BIOS: verrà sostituita con coreboot.

rm flashregion_1_bios.bin

Rinomina la regione GBE

mv flashregion_2_gbe.bin gbe.bin

Rinominare la regione ME

mv flashregion_3_me.bin me.bin

Copia i file nella directory coreboot

cp descriptor.bin gbe.bin me.bin ~/work/coreboot/3rdparty/blobs/mainboard/lenovo/t420/

Passaggio 11: configurare l'immagine Coreboot. (Sul PC principale)

Configura l'immagine di Coreboot. (Sul PC principale)
Configura l'immagine di Coreboot. (Sul PC principale)
Configura l'immagine di Coreboot. (Sul PC principale)
Configura l'immagine di Coreboot. (Sul PC principale)
Configura l'immagine di Coreboot. (Sul PC principale)
Configura l'immagine di Coreboot. (Sul PC principale)
Configura l'immagine di Coreboot. (Sul PC principale)
Configura l'immagine di Coreboot. (Sul PC principale)

Sposta nella directory di coreboot

cd ~/lavoro/coreboot

Configura coreboot.

make nconfig

Questo farà apparire l'editor di configurazione Coreboot. La maggior parte delle impostazioni predefinite va bene, ma ce ne sono alcune che possono essere aggiunte. Questa è una configurazione molto semplice. Sono disponibili opzioni più avanzate come schermate iniziali, rom vga, payload alternativi. Queste opzioni esulano dallo scopo di questa guida.

Impostazioni generali

Usa CMOS per i valori di configurazione

Scheda principale

  • Fornitore della scheda madre >>> Seleziona >> Lenovo
  • Modello scheda madre >>> Seleziona >>> T420

Chipset

  • Aggiungi il file descrittore.bin di Intel
  • Aggiungi il firmware Intel ME/TXE
  • Aggiungi la configurazione Gigabit Ethernet

Dispositivi

  • Abilita la gestione dell'alimentazione dell'orologio PCIe
  • Abilita il sottostato PCIe ASPM L1

Driver generico

Inizializzazione della tastiera PS/2

Passaggio 12: crea Coreboot (sul PC principale)

È ora di compilare!

Per prima cosa ho creato la toolchain gcc

make crossgcc-i386 CPUS=X

X = il numero di thread della tua CPU.

Crea coreboot

fare iasl

fare

Questo produrrà un file ~/work/coreboot/build/coreboot.rom.

Accendi il Pi e copia quel file nella tua directory ~/work/roms.

Passaggio 13: scrivere Coreboot su T420 (su RPI)

Scrivi Coreboot su T420 (su RPI)
Scrivi Coreboot su T420 (su RPI)
Scrivi Coreboot su T420 (su RPI)
Scrivi Coreboot su T420 (su RPI)
Scrivi Coreboot su T420 (su RPI)
Scrivi Coreboot su T420 (su RPI)

Sposta nella directory delle rom

cd ~/lavoro/rom

Sonda il chip per assicurarti che venga rilevato

flashrom -p linux_spi:dev=/dev/spidev0.0, spispeed=128

Scrivi l'immagine di coreboot. Questo richiederà più tempo della lettura dell'immagine.

flashrom -p linux_spi:dev=/dev/spidev0.0, spispeed=128 -c -w coreboot.rom

Dopo che la scrittura è stata verificata, spegni il pi. Rimuovere la clip e rimontare il T420.

Congratulazioni, hai appena flashato Coreboot.

Consigliato: