English, Hardware, Linux, Thinkpad

Manually Upgrading or Downgrading the BIOS of a Lenovo Thinkpad P1 Gen 2 with Linux has Pitfalls: A How To

Recently, I had to downgrade my Lenovo Thinkpad P1 Gen 2 BIOS because I recognized some problems recently after a BIOS upgrade. Later it turned out, it was a hardware defect and the recent BIOS update was random. However, I learned something about downgrading the BIOS for recent Lenovo Notebooks an want to share the mistakes I made to save you some time if you have to do so.

Downloading Specific BIOS Versions for your P1: A Challenge

You will quickly find this support page for Drivers & Software for the P1 Gen 2 (Type 20QT, 20QU). Ok, you see the newest BIOS Versions there, currently version 1.34. If we want to have this, simply download BIOS Update Utility (Linux). But how to find any old BIOS versions? You cannot find any here. It turned out that the BIOS versions for the Lenovo X1 Extreme 2nd Gen has exactly the same BIOS, compare the download link of the most recent version for both websites, and surprisingly, the links are the (see here). This makes it very likely that the old BIOS versions match as well and indeed they do! Thus, download the Bios version of your choice for the Lenovo P1 Gen 2 at this page for another laptop.

Why not linking this BIOS versions at the P1 Gen 2 page? I don’t know. Sometime, we cannot understand why Lenovo does things. However, problem solved! Simply download the *.zip file “BIOS Update Utility (Linux)” of your choice.

Old BIOS versions for the Lenovo P1 on the support page of the Lenovo X1

Finding the Right BIOS Version

After downloading the *.zip file, extract it. There are three files, for version 1.34 these are N2OET47P.cab, N2OET47W.cab and N2OHT35W.cab. You only need one, but the readme contains no information about that. What I have found by try and error: you cannot install N2OET47P.cab, meaning something that ends with P, because there is not supported device found (maybe for Lenovo X1?), N2OHT35W.cab seems to be an older version. And finally you go with N2OET47W.cab. In general, the Version N20ETXXW with XX being the higher number seems to be the version you want to have. If I’m wrong here or someone knows more, please contact me and I will update this article.

Make the BIOS Ready to Install

We need the fwupdmgr to install the *.cab files. Therefore install the following meta-package if not already done:

sudo apt install fwupd

Disconnect your Thunderbold Docking Station now (for good reasons, see below).

Upgrade

We can now push a newer BIOS version by the following command (adapt the filename to your needs):

fwupdmgr install N2OET47W.cab

Downgrade

For a downgrade, we have to force the downgrade with the following command (adapt the filename to your needs):

fwupdmgr install --allow-older N2OET42W.cab

Why Disconnecting the Docking Station

Now, you will be asked if you want to restart the PC, but be careful: be sure that your Thunderbold Docking Station is disconnected. Otherwise, you will run in the same problem as I did: The system reboots, the screen becomes black (both, laptop and external display) and nothing happens (even for 15 minutes). You cannot shut down your PC, even by pressing the power button for more than 10 seconds. Simply a black screen, some heat (you hear the fans) and you cannot power off. My solution was to open up the laptop, disconnecting the battery pack while the laptop was still running and therefore force the laptop to immediately shutdown. This is not nice, but fortunately the BIOS has not been broken and I was able to redo the work. With a disconnected docking station, of course.

On the Way to Finish it

Now, do the restart. The laptop will restart several times. All the work will need some times. Congratulations, you have the BIOS version of your choice! If you want to, reboot into the bios and check everything.

Self-Healing BIOS backup progressing…

For the Interested People: Why I did the Downgrade

By the way, in may case, the docking station had a hardware defect. But recently before the problems occurred, a BIOS update has been performed. Therefore, I had to exclude the possibility that the new BIOS is guilty and therefore I did a BIOS downgrade (with no success). I hope a new Docking Station will be on the way to me soon, as it is a case of warranty. At least, this article is an outcome on the needless BIOS downgrade 😉

Misrepresentations on screen by a defect Thunderbot Docking Station

Final Remarks

I hope I could help you with your issue. If you have some feedback or suggestions about this article, let me know by using the contact form or send me an e-mail. Thank you for reading and have a nice day.