heads/blobs/x220
Manuel Mendez d396236a83
Remove hard coded paths in shebang lines
Remove hard coded paths from shebangs and other references because they
do not play well in nix-land. Either use /usr/bin/env to do runtime PATH
based lookup or avoid absolute paths so PATH look up happens instead.

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
Signed-off-by: Manuel Mendez <github@i.m.mmlb.dev>
Signed-off-by: Thierry Laurion <insurgo@riseup.net>
2024-05-02 13:00:22 -04:00
..
.gitignore Update X220 to do generic image instead of qubes. 2017-08-04 22:48:27 +02:00
extract.sh Remove hard coded paths in shebang lines 2024-05-02 13:00:22 -04:00
layout.txt Added blob directory for non-free blobs Also basic documentation for the binaries needed for the X220 and how the get to them 2017-05-01 10:49:45 -04:00
readme.md modules/flashrom: update to v1.2 release 2020-04-20 17:34:08 -05:00

To build for X220 we need to have the following files in this folder:

  • me.bin - ME binary that has been stripped and truncated with me_cleaner
  • gbe.bin - Network card blob from the original firmware
  • ifd.bin - Flash layout file has been provided as text

To get the binaries, start with a copy of the original Lenovo firmware image. If you do not have one already, you can read one out from the laptops SPI flash.

flashrom --programmer internal -r original.bin

Once you have the image, the provided extraction script will extract the files needed.

./extract.sh -f <romdump>

Use the options '-m' and '-i' to provide me_cleaner and ifdtool if they can not be located automatically.

The flash layout will be automatically adjusted and the ME image cleaned and truncated.

You can now compile the image with:

make BOARD=x220