How to update firmware under Linux

The Dell Edge Gateway 5000 we will be introducing support to natively flash UEFI firmware under Linux. To achieve this we’re supporting the standards based UEFI capsule functionality from UEFI version 2.5. Furthermore, the entire tool chain used to do this is open source.

Red Hat has developed the tools that enable this functionality: fwupd, fwupdate, & ESRT support in the Linux kernel. For the past year we have been working closely with Red Hat, Intel, & Canonical to jointly troubleshoot issues related to the architecture, tools, process, and metadata on real hardware.

Dell will be publishing BIOS updates to the Red Hat created Linux Vendor Firmware Service (LVFS). Red Hat provides LVFS as a central OS agnostic repository for OEMs to distribute firmware to all Linux customers.

Dell will be shipping the Dell Edge Gateway 5000 with Ubuntu Snappy and Intel Wind River IDP. Both will include the tools natively in our preloaded factory image. The best part of choosing a standards based solution however is that the tools will work on any modern Linux distribution. If you choose not to use our preloaded OS, you will still be able to install these tools and take advantage of this functionality. They’re already available in Fedora 23, Debian Unstable, and Ubuntu 15.04+.

This work is a continuation of Dell’s continued commitment to work in the EFI tools in Debian for over 2 years. From this effort, the Debian EFI team (blog) was formed to ensure that the entire Debian/Ubuntu UEFI flashing toolchain is rock-solid and can support firmware updates out of the box on Dell hardware.

The Dell Edge Gateway 5000 is just the first system we’ll be supporting this technology with. We are looking forward to expanding it to other Dell hardware.

If you would like to learn more about this technology, here are the relevant pieces of the toolchain and a high level overview of what they do: