2.6 KiB
x220 Coreboot Setup
Configuration and helper script for easy build, assembly and installation of Coreboot on the Thinkpad X220
This setup keeps the descriptor, gbe config and Intel ME from the stock BIOS, neutralizes the Intel ME by removing most of its partitions with me_cleaner and prepares a flash image with Coreboot using SeaBIOS+GRUB with LUKS+LVM support as the default payload
Usage:
./cb-helper operation [parameters]
Alternatively the auto-run script can be launched to automatically run through all the operations in order, provided a valid BIOS stock image as been placed in "binaries/bios.bin"
Configs
coreboot.config - Coreboot build configuration
grub.config - GRUB build configuration
grub.cfg - GRUB configuration and boot menu
grub_memdisk.cfg - GRUB configuration inside the memdisk
grub_modules.conf - GRUB modules, installed and loaded
Operations
download_code
Download repositories for Coreboot, GRUB and me_cleaner
build_utils
Build useful utilities like cbfstool and idftool
split_bios
Splits the stock bios ("binaries/bios.bin") into descriptor, gbe configuration and Intel ME
neuter_me
Neutralize Intel ME by removing most of its partitions using me_cleaner
pre_build_coreboot
Copy config files and build Coreboot's toolchain
build_coreboot
Build Coreboot
build_grub
Build GRUB
assemble_grub
Assembles configurations and resources in a nice usable GRUB payload
config_seabios
Configure SeaBIOS to boot GRUB directly from the CBFS volume
install_grub
Install the GRUB payload and configuration in the CBFS volume
flash operation programmer
Read or write flash chips with a multitude of programmers
Valid operations: check, read, write
Valid programmers: internal, ftdi, u2, rpi
Attribuition
config/grub.cfg, config/grub_modules.conf and misc/usqwerty.gkb are based on their Libreboot counterparts which are released under the GNU GPLv3
The font DejaVuSans Mono is used in GRUB and is licensed under a free license
Converted to bitmap with the following command
grub/grub-mkfont --size=24 --bold -o "misc/dejavusansmono.pf2" /usr/share/fonts/TTF/DejaVuSansMono.ttf
Licensing
This entire project is licensed under the GNU General Public License Version 3