Known ways to update firmware on common hardware
This is a collection of known ways to update your built-in firmware (including BIOS, UEFI and other things like Intel ME) on well known common hardware.
Linux Vendor Firmware Service
fwupd utilizes a firmware database to fetch missing updates for your system and peripherals. Currently the vendor and device coverage is not too broad but it is a good starting point before you dive into vendor specific update procedures.
Servers, IoT and other devices usually have management systems which also allow you to apply various updates automatically or after downloading a firmware package from the vendor website.
flashrom knows how to identify, read, write, verify and erase flash chips for BIOS, EFI and other boot firmware, network cards, SATA controller cards, and other external devices. It is often used for installing coreboot.
Bootable ISO image via grub-imageboot
grub-imageboot provides the ability to boot iso images directly from your grub boot menu.
sudo apt install grub-imageboot; sudo cp 7wuj43uc.iso /boot/images; sudo update-grub2;
via Don Armstrong
There is documentation about upgrading SSD firmware of some models.
Many other packages are available for updating the firmware on specific hardware, so please search the Debian archive for your devices.
Many current Dell devices can be updated with fwupd.
Latitude E series
- Download the file "Latitude_E7x70_1.18.5.exe" (or whatever is the current release).
- Move the file to "/boot/efi/".
- Boot into the one time boot menu with F12 during the BIOS/UEFI start.
- Select the "Flash BIOS Update" menu option.
- Use your mouse to select the update file visually and watch the magic.
- Download the BIOS Update bootable CD image from Lenovo "n1eur31w.iso" (Select Windows as OS so it's available for download).
Extract the eltorito boot image from the image geteltorito -o thinkpad.img Downloads/n1eur31w.iso.
Dump it on a USB thumb drive dd if=thinkpad.img of=/dev/sdX.
- Boot from this thumb drive and follow the instructions of the installer.