Firmware updates in Cubbli

Last modified by Niko-Ville Koljonen on 2024/02/16 11:26

Modern machines use builtin firmware (BIOS) provided by the machine vendor for many power management and other functions. Sometimes they also contain necessary security fixes.  Missing firmware updates can cause many kinds random problems, so if there are any problems in Cubbli installations related to power management,  updating the firmware to newest version should be the first thing to try. Firmware is automatically updated only during Cubbli installation. In some BIOS configurations this upgrade can fail.  Sometimes installing the updates is disabled by default by the machine vendor: in that case see section Firmware updates disabled in BIOS

Check the version and release date of firmware in Linux

You can check the firmware version and release date with the following command:

jjaakkol@lx8-523-011:~$ cat /sys/devices/virtual/dmi/id/bios_version /sys/devices/virtual/dmi/id/bios_date
N24ET66W (1.41 )
10/20/2021

Installing firmware updates in Cubbli

Cubbli installations have software called fwupd installed (Firmware Updating Daemon), which downloads firmware updates from the Internet (securely) and installs them.  It is up to Cubbli admins ( or sudo users) to do manually install updates. It only works in machines which are using UEFI BIOS (with or without secure boot), but there shouldn't be many legacy BIOS installations left.  Updates can only be installed when a power source is connected!

Check for updates (this time there are none to be installed. 

jjaakkol@lx8-523-011:~$ sudo fwupdmgr get-updates
[sudo] password for jjaakkol: 
Devices with no available firmware updates: 
 • ThinkPad Thunderbolt 3 Dock
 • Thunderbolt host controller
 • UEFI Device Firmware
 • UEFI Device Firmware
 • UEFI dbx
 • USB3.0 Hub
 • USB3.0 Hub
Devices with the latest available firmware version:
 • Intel Management Engine
 • MZVLB1T0HALR-000L7
 • System Firmware
_______________________________________________

Devices that have been updated successfully:

 • Embedded Controller (0.1.11 → 0.1.21)
 • Intel Management Engine (184.60.3561 → 184.90.3987)
 • System Firmware (0.1.19 → 0.1.41)

Uploading firmware reports helps hardware vendors to quickly identify failing and successful updates on real devices.
Upload report now? (Requires internet connection) [Y|n]:

Use command fwupdmgr update to install firmware updates. Here is how the command output looks when actual firmware updates are installed. You might need to run this command multiple times (and reboot each time).

root@lx8-523-011:/# fwupdmgr update\
Devices with no available firmware updates: \
 • Thunderbolt host controller\
 • UEFI Device Firmware\
 • UEFI Device Firmware\
 • UEFI dbx\
 • USB3.0 Hub\
 • USB3.0 Hub\
╔══════════════════════════════════════════════════════════════════════════════╗\
║ Upgrade Embedded Controller from 0.1.11 to 0.1.21?                           ║\
╠══════════════════════════════════════════════════════════════════════════════╣\
║ Lenovo ThinkPad T480 System Firmware                                         ║\
║                                                                              ║\
║ Fixed an issue where ThinkVision T24m-10 monitor might not connected         ║\
║ properly.                                                                    ║\
║                                                                              ║\
║ 20L6SBKX00 must remain plugged into a power source for the duratFirmware updates disabled in BIOSion of the   ║\
║ update to avoid damage.                                                      ║\
╚══════════════════════════════════════════════════════════════════════════════╝\
\
Perform operation? \[Y|n\]: y\
Downloading…             \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Decompressing…           \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Decompressing…           \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Authenticating…          \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Authenticating…          \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Restarting device…       \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Writing…                 \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Scheduling…              \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Decompressing…           \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Restarting device…       \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Waiting…                 \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Successfully installed firmware\
╔══════════════════════════════════════════════════════════════════════════════╗\
║ Upgrade Intel Management Engine from 184.60.3561 to 184.90.3987?             ║\
╠══════════════════════════════════════════════════════════════════════════════╣\
║ • 8 Intel Platform Update 2021.2                                             ║\
║                                                                              ║\
║ Version 11.8.90.3987 Fixes the  IPU 2021.2 security vulnerabilities. please  ║\
║ refer to Issues List.                                                        ║\
║                                                                              ║\
║ 20L6SBKX00 must remain plugged into a power source for the duration of the   ║\
║ update to avoid damage.                                                      ║\
╚══════════════════════════════════════════════════════════════════════════════╝\
\
Perform operation? \[Y|n\]: y\
Downloading…             \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Downloading…             \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Decompressing…           \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Decompressing…           \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Authenticating…          \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Authenticating…          \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Restarting device…       \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Writing…                 \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Scheduling…              \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Decompressing…           \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Restarting device…       \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Waiting…                 \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Successfully installed firmware\
Devices with the latest available firmware version:\
 • MZVLB1T0HALR-000L7\
╔══════════════════════════════════════════════════════════════════════════════╗\
║ Upgrade System Firmware from 0.1.19 to 0.1.41?                               ║\
╠══════════════════════════════════════════════════════════════════════════════╣\
║ Lenovo ThinkPad T480 System Firmware. Update includes a security fix.        ║\
║ Updated the Diagnostics module to version 04.18.000.                         ║\
║                                                                              ║\
║ 20L6SBKX00 must remain plugged into a power source for the duration of the   ║\
║ update to avoid damage.                                                      ║\
╚══════════════════════════════════════════════════════════════════════════════╝\
\
Perform operation? \[Y|n\]: y\
Downloading…             \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Downloading…             \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Decompressing…           \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Decompressing…           \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Authenticating…          \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Authenticating…          \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Restarting device…       \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Writing…                 \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Scheduling…              \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Decompressing…           \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Restarting device…       \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Waiting…                 \[\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\]\
Successfully installed firmware\
The computer will be restarted automatically after updating BIOS completely . Do NOT turn  off your computer or remove the AC adaptor while update is in progress.  \
\
An update requires a reboot to complete. Restart now? \[y|N\]

Installing the firmware update during restart:

IMG_20220419_152031_HDR.jpg

Usual problems with old firmware:

  • Laptop battery runs out faster than it should
  • Laptop is slower than it should be
  • Laptop is stuck in power saving mode with CPU's clocked at 400MHz (very slow!)
  • Docking does not work properly
  • Suspend does not work or laptop never wakes up from suspend
  • Missing security fixes

Firmware updates disabled in BIOS

We have machines where installing Firmware updates from Cubbli is disabled by default in BIOS. When this happens, no errors are shown on installation, and updates aren't installed. This is likely to cause problems. You can check if firmware updates have been disabled from BIOS with this command (look for the UEFI capsule updates not available):

https://github.com/fwupd/fwupd/wiki/PluginFlag:capsules-unsupported

root@lx8-523-011:~# fwupdmgr get-updates
WARNING: UEFI capsule updates not available or enabled in firmware setup
  See https://github.com/fwupd/fwupd/wiki/PluginFlag:capsules-unsupported for more information.
Devices with no available firmware updates: 
 • ThinkPad Thunderbolt 3 Dock
 • Thunderbolt host controller
 • UEFI dbx
 • USB3.0 Hub
 • USB3.0 Hub
Devices with the latest available firmware version:
 • MZVLB1T0HALR-000L7
No updates available for remaining devices

If firmware updates have been disabled, it needs this needs to be enabled in BIOS/Firmware settings. In Lenovo laptops the settings is called Windows UEFI  Firmware Update. Enable it:

IMG_20220419_150649_HDR.jpg