It’s almost exactly one month from the last time Lenovo released (v1.28 of ) the BIOS firmware for ThinkPad P1 Gen 1. Apparently, v1.28 firmware has been marked “Withdrawn” according to this n2eul21w.txt.

The changes in this release v1.29 is:

  Version 1.29

[Important updates]
- Addresses CVE-2019-0154
  Refer to Lenovo's Security Advisory page for additional information about
  LEN-27714 "Multi-vendor BIOS Security Vulnerabilities".

[New functions or enhancements]
- Updated the CPU microcode.

[Problem fixes]
- Nothing

This firmware supports both ThinkPad P1 Gen1 and ThinkPad X1 Extreme 1 listed below:

  • ThinkPad P1 (Type 20MD, 20ME)
  • ThinkPad X1 Extreme (Type 20MF, 20MG)

If you have newer generation of these 2 ThinkPad models, please check Lenovo support site.

As for the updating process, as of today (2020-05-16), this new firmware is yet made available via LVFS (Linux Vendor Firmware Service).

[root@benjo ~]# fwupdmgr refresh --force
Fetching signature
Downloading…             [***************************************]
Fetching metadata
Downloading…             [***************************************]
Successfully downloaded new metadata: 4 local devices supported
[root@benjo ~]# fwupdmgr update
• Thunderbolt Controller has the latest available firmware version
• Embedded Controller has the latest available firmware version
• INTEL SSDPEKKF512G8L has no available firmware updates
• Intel Management Engine has the latest available firmware version
• System Firmware has the latest available firmware version
• UEFI Device Firmware has no available firmware updates
[root@benjo ~]#

So to update it, I have to download the firmware directory from Lenovo website and then install it.

❯❯❯ curl -O
❯❯❯ unzip
  • - UEFI BIOS 1.29
  • - Embedded Controller Program (ECP) 1.13

Since I already have ECP 1.13 installed, it can be skipped. Let’s install the new UEFI BIOS.

❯❯❯ sudo fwupdmgr install
Decompressing…           [***************************************]
Authenticating…          [***************************************]
Installing on System Firmware…                                   ]
Scheduling…              [***************************************]
Successfully installed firmware

An update requires a reboot to complete. Restart now? [y|N]: y

That’s it.