BXG Blog

Updating an Optiplex 9020 BIOS from Linux

Given all the recent noise about Intel ME vulnerabilities, I decided it was time to finally update my BIOS on my Dell Optiplex 9020. I thought the process would be similar to updating the BIOS on my previous HP desktop, so off I went to the Dell website. I found the new BIOS easily enough. Only an exe file is provided, but that usually just means you have to figure out how to get the actual BIOS image out. No big deal; I downloaded O9020A20.exe and started trying to extract it.

  • unzip: Nope. Not a zip archive.
  • 7z: Nope. Not a 7z archive.
  • Run in wine: Crashes without ever extracting any files.
  • Run in dosemu/dosbox: The app runs and tries to probe the hardware, then quits without ever extracting any files.
  • Run with /writehdrfile or -writehdrfile (these used to work on old Dell updates): Nope, no such option.
  • Burn to a FreeDOS CD: The system boots, but can’t detect the CD because it’s in AHCI mode. Changing SATA to legacy mode in the BIOS might let this work, but I don’t want to try that yet.
  • Write to a FreeDOS USB drive: The system boots from USB, but FreeDOS doesn’t boot with no explanation.

After all this, I finally noticed an option I had been ignoring in the F12 BIOS boot menu: “Flash BIOS Update”. Well, well; it looks like Dell might have built in a BIOS updater. But where do I put the update file? My USB drive from the last FreeDOS attempt was still plugged in, and it had O9020A20.exe on it, so I chose the Flash BIOS Update option. This reboots into a simple GUI where you can choose an update file. It let me browse the USB drive and select the update exe. Then it rebooted and updated the BIOS! After all that trial and error, this turned out to be pretty easy and OS-independent:

  1. Download the appropriate BIOS update from Dell’s website.
  2. Write it to a FAT-formatted USB drive. My drive was FAT16 because I was trying to boot FreeDOS, but I bet FAT32 would work also.
  3. Reboot and hit F12 at the boot screen.
  4. Choose “Flash BIOS Update” from the menu.
  5. Browse your USB drive to the update file.
  6. Watch the BIOS update happen.
  7. Go back to getting useful work done.

Kudos to Dell for making an update mechanism that doesn’t rely on any particular OS setup. It would be even better if their support site mentioned how to do this on the BIOS download pages, but it’s not a big deal now that I’ve figured it out. Hopefully this helps somebody else.