Tabla de contenido:

Lenovo T420 Coreboot W / Raspberry Pi: 13 pasos (con imágenes)
Lenovo T420 Coreboot W / Raspberry Pi: 13 pasos (con imágenes)

Video: Lenovo T420 Coreboot W / Raspberry Pi: 13 pasos (con imágenes)

Video: Lenovo T420 Coreboot W / Raspberry Pi: 13 pasos (con imágenes)
Video: How to coreboot a T420 ! Runs IVYBRIDGE CPUs 2024, Mes de julio
Anonim
Lenovo T420 Coreboot con Raspberry Pi
Lenovo T420 Coreboot con Raspberry Pi

Coreboot es un reemplazo de BIOS de código abierto. Esta guía describirá los pasos necesarios para instalarlo en un Lenovo T420.

Antes de comenzar, debe sentirse cómodo usando un terminal Linux y desmontando su computadora portátil.

Existe la posibilidad de que esto bloquee su computadora portátil, haga esto bajo su propio riesgo.

Suministros

  • Clip de prueba Ponoma 5250: para conectar al chip bios.
  • Cables de puente de placa de pruebas de hembra a hembra: también conocidos como cables Dupont.
  • Destornillador Phillips
  • Alicates pequeños o broca hexagonal de 5,0 mm.
  • Compuesto térmico
  • Alcohol isopropílico
  • Cotonetes
  • Lenovo T420
  • Computadora con Linux. "PC principal"
  • Raspberry Pi (3 o 4): ejecutando la última versión o el sistema operativo Raspberry Pi: las instrucciones sobre la instalación se pueden encontrar aquí.
  • Manual de mantenimiento de hardware T420

Paso 1: actualice el controlador integrado en el T420

Es una buena idea actualizar el controlador integrado a la última versión. La forma más sencilla de hacerlo es instalar la última versión de la BIOS de fábrica. Coreboot no puede tocar el EC. No podrá actualizarlo después de flashear a menos que vuelva a la BIOS de fábrica.

Paso 2: prepara la Raspberry Pi para flashear. (EN RPI)

Prepara la Raspberry Pi para flashear. (EN RPI)
Prepara la Raspberry Pi para flashear. (EN RPI)
Prepara la Raspberry Pi para flashear. (EN RPI)
Prepara la Raspberry Pi para flashear. (EN RPI)

Para leer / escribir en el chip de la BIOS, debe habilitar algunos módulos del kernel.

Accede a la utilidad de configuración de raspberry pi.

sudo raspi-config

En las opciones de interfaz, habilite:

  • P2 SSH: si va a ejecutar pi sin cabeza
  • P4 SPI
  • P5 I2C
  • P8 Remote GPIO: si usa ssh para conectarse al pi

Paso 3: Prepare la computadora 'principal' para compilar Coreboot (en la PC principal)

Lo primero que debe hacer es instalar las dependencias necesarias para construir coreboot.

Para un sistema basado en Debian

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

Para un sistema basado en Arch

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

Cree un directorio en su directorio personal para trabajar. Para este ejemplo, lo llamaré "trabajo". También querrá un directorio para almacenar las imágenes de fábrica. Llamaré a ese directorio 'roms'. Puede hacer esto en una línea para ahorrar tiempo

mkdir -p ~ / trabajo / roms

Moverse al directorio de trabajo

cd ~ / trabajo

Descargue la última versión de ME_Cleaner de github

clon de git

Descargue la última versión de Coreboot

clon de git

Mover al directorio coreboot

cd ~ / trabajo / coreboot

Descarga los submódulos requeridos

actualización del submódulo git --init --checkout

Cree un directorio para contener algunos archivos específicos de su T420; lo necesitará más adelante.

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

Construye la herramienta ifd. Esto se utilizará para dividir la BIOS de fábrica en sus diferentes regiones.

cd ~ / trabajo / coreboot / utils / ifdtool

hacer

Paso 4: Conecte el clip

Conecte el clip
Conecte el clip

Utilice el cable 6 hembra a hembra para conectar el 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

Los pines 3 y 7 de la BIOS no se utilizan.

Paso 5: acceda al chip Bios

Accede al Chip Bios
Accede al Chip Bios
Accede al Chip Bios
Accede al Chip Bios
Accede al Chip Bios
Accede al Chip Bios
Accede al Chip Bios
Accede al Chip Bios

El chip bios se encuentra debajo de la jaula antivuelco. Para acceder a él, deberá quitar la placa base.

El Manual de mantenimiento de hardware puede proporcionar instrucciones si tiene problemas para descifrarlo.

He incluido mis imágenes desmontables. Nunca estamos destinados a ser vistos por el público (mi letra es horrible, lo siento), pero qué diablos pueden ayudar.

Paso 6: conecte el clip al chip Bios

Conecte el clip al chip Bios
Conecte el clip al chip Bios
Conecte el clip al chip Bios
Conecte el clip al chip Bios
Conecte el clip al chip Bios
Conecte el clip al chip Bios

Con el Pi apagado, conecte el clip al chip bios.

Paso 7: lea el chip flash (en RPI)

Leer el chip flash (en RPI)
Leer el chip flash (en RPI)
Leer el chip flash (en RPI)
Leer el chip flash (en RPI)

Enciende el Pi

Cree un directorio roms y muévase a él.

mkdir -p ~ / trabajo / roms

cd ~ / trabajo / roms

Para leer y escribir el chip, necesitará utilizar un programa llamado Flashrom. Primero asegúrese de que esté instalado

sudo apt instalar flashrom

Utilice flashrom para sondear el chip y asegúrese de que esté conectado

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

Lea la BIOS de fábrica del chip 3 veces y guárdelas como factory1.rom factory2.rom factory3.rom

Utilice la opción -c para especificar su chip flash. Asegúrate de ingresar todo entre las comillas.

Cada lectura tomará algún tiempo dependiendo del chip, podría ser entre 30 y 45 minutos cada lectura. No se preocupe si parece que el pi está colgado.

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

Paso 8: Compare los 3 archivos (en RPI)

Compare los 3 archivos (en RPI)
Compare los 3 archivos (en RPI)

A continuación, desea comparar los 3 archivos para asegurarse de que tuvo una buena lectura / conexiones

fábrica sha512sum *.rom

Si todos coinciden, cópielos a la computadora principal en el directorio ~ / work / roms.

Apague el Pi. Puede dejar el clip conectado.

Paso 9: Limpiar el ME (en la PC principal)

Limpiar el ME (en la PC principal)
Limpiar el ME (en la PC principal)

Mover a ~ / work / roms

cd ~ / trabajo / roms

Las roms de fábrica no deben editarse. Haz una copia de uno de ellos para limpiarlo.

cp factory1.rom clean.rom

Limpiar el IME en.rom limpiado

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

Paso 10: divide la imagen de la ROM. (En la PC principal)

Divide la imagen Rom. (En la PC principal)
Divide la imagen Rom. (En la PC principal)

El chip de BIOS se divide en 4 regiones. Debe dividir la imagen clean.rom en sus diferentes regiones con la herramienta ifd proporcionada por coreboot

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

Esto producirá 4 archivos. Necesitamos cambiar el nombre de 3 de ellos y podemos eliminar 1

Cambiar el nombre de la región del descriptor

mv flashregion_0_flashdescriptor.bin descriptor.bin

Eliminar la región del BIOS: se reemplazará con coreboot.

rm flashregion_1_bios.bin

Cambiar el nombre de la región GBE

mv flashregion_2_gbe.bin gbe.bin

Cambiar el nombre de la región ME

mv flashregion_3_me.bin me.bin

Copie los archivos al directorio coreboot

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

Paso 11: Configure la imagen de Coreboot. (En la PC principal)

Configure la imagen de Coreboot. (En la PC principal)
Configure la imagen de Coreboot. (En la PC principal)
Configure la imagen de Coreboot. (En la PC principal)
Configure la imagen de Coreboot. (En la PC principal)
Configure la imagen de Coreboot. (En la PC principal)
Configure la imagen de Coreboot. (En la PC principal)
Configure la imagen de Coreboot. (En la PC principal)
Configure la imagen de Coreboot. (En la PC principal)

Mover al directorio coreboot

cd ~ / trabajo / coreboot

Configure coreboot.

hacer nconfig

Esto abrirá el editor de configuración de Coreboot. La mayoría de las configuraciones predeterminadas están bien, pero hay algunas que se pueden agregar. Esta es una configuración muy básica. Hay disponibles opciones más avanzadas, como pantallas de presentación, roms vga y cargas útiles alternativas. Estas opciones están más allá del alcance de esta guía.

Configuración general

Utilice CMOS para los valores de configuración

Placa base

  • Proveedor de placa base >>> Seleccione >> Lenovo
  • Modelo de placa base >>> Seleccione >>> T420

Chipset

  • Agregue el archivo descriptor.bin de Intel
  • Agregar firmware Intel ME / TXE
  • Agregar configuración gigabit ethernet

Dispositivos

  • Habilitar la administración de energía del reloj PCIe
  • Habilitar subestado PCIe ASPM L1

Controlador genérico

Inicialización del teclado PS / 2

Paso 12: compile Coreboot (en la PC principal)

¡Es hora de compilar!

Primero construyó la cadena de herramientas gcc

hacer crossgcc-i386 CPUS = X

X = la cantidad de subprocesos que tiene su CPU.

Construir coreboot

hacer iasl

hacer

Esto producirá un archivo ~ / work / coreboot / build / coreboot.rom.

Encienda la Pi y copie ese archivo en su directorio ~ / work / roms.

Paso 13: escriba Coreboot en T420 (en RPI)

Escribir Coreboot en T420 (en RPI)
Escribir Coreboot en T420 (en RPI)
Escribir Coreboot en T420 (en RPI)
Escribir Coreboot en T420 (en RPI)
Escribir Coreboot en T420 (en RPI)
Escribir Coreboot en T420 (en RPI)

Mover al directorio roms

cd ~ / trabajo / roms

Sondear el chip para asegurarse de que se detecte

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

Escribe la imagen de coreboot. Esto llevará más tiempo que leer la imagen.

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

Después de verificar la escritura, apague el pi. Retire el clip y vuelva a montar el T420.

Felicidades, acaba de actualizar Coreboot.

Recomendado: