External Flashing
The full procedure for flashing the two bios chips
Last updated
The full procedure for flashing the two bios chips
Last updated
Now that we have installed Libreboot, set up flashprog
, and prepared our Raspberry Pi Pico as an SPI programmer, we are finally ready to flash the BIOS. Before we dive into the steps, I want to emphasize the importance of making a backup copy of your current BIOS. This way, if anything goes wrong during the flashing process, you will have a copy of the original BIOS that you can restore.
X230 - Accessing the BIOS chip is easy—you just need to remove the keyboard and palm rest, so there’s no need to completely take apart the laptop.
T440p - You only need to work on the back of the laptop.
T430 - A full disassembly of the laptop is required.
T480s - You do NOT need to split the rom.
Look closely at both BIOS chip(s) and take a picture of the model(s)
All these listed Thinpads feature a 12MB BIOS, which is partitioned across two chips on the motherboard. Specifically, one chip contains 4MB, while the other chip holds 8MB.
As a result, you'll need to divide your ROM into two distinct portions prior to flashing. This can be accomplished using the dd
command.
Now, you need to detect the chip models using flashprog. To ensure accurate detection, follow these steps for each BIOS chip:
Connect the Raspberry Pico to the Pomona using Dupont cables, as completed in the preceding step.
Clip the Pomona onto the top BIOS chip firmly
Plug the Raspberry Pico into the laptop using a USB cable
Execute the following command to detect the chip
If multiple chips are detected, verify whether the one you previously photographed or one closely resembling it is present. Subsequently, re-run the command, making sure to specify the name of the pertinent chip.
If the Raspberry Pico detects the chip, you may proceed by creating a backup.
To create a reliable backup of the BIOS chip(s), it's advisable to perform a triple dump of them
Next, use sha1sum
to compare the dumped BIOS images
If the hashes match, you should see something like this:
Once you've confirmed that the hashes are the same, you can clean up any temporary dump files:
Next, use sha1sum
to compare the dumped BIOS images
If the hashes match, you should see something like this:
Once you've confirmed that the hashes are the same, you can clean up any temporary dump files:
Before writing the BIOS into the chip(s), ensure to remove the CMOS battery as a security precaution.
To double-check, you can dump the newly flashed BIOS image
Next, use sha1sum
to compare the dumped BIOS image with the original libreboot_top.rom
file
If the hashes match, you should see something like this:
Once you've confirmed that the hashes are the same, you can clean up any temporary dump files:
To double-check, you can dump the newly flashed BIOS image
Next, use sha1sum
to compare the dumped BIOS image with the original libreboot_bottom.rom
file
If the hashes match, you should see something like this:
Once you've confirmed that the hashes are the same, you can clean up any temporary dump files:
If everything went well, simply restart your laptop before putting it back together to ensure that Libreboot starts properly.
Enjoy your new BIOS!