From flashprog
Jump to navigation Jump to search

flashprog is a utility for identifying, reading, writing, verifying and erasing flash chips. It is designed to flash BIOS/EFI/coreboot/firmware/optionROM images on mainboards, network/graphics/storage controller cards, and various other programmer devices.

  • Supports more than 570 flash chips, 410 chipsets, 520 tested mainboards, 79 PCI devices, 30 USB devices and various parallel/serial port-based programmers.
  • Supports parallel, LPC, FWH and SPI flash interfaces and various chip packages (DIP32, PLCC32, DIP8, SO8/SOIC8, TSOP32, TSOP40, TSOP48, BGA and more)
  • No physical access needed, root access is sufficient (not needed for some programmers).
  • No bootable floppy disk, bootable CD-ROM or other media needed.
  • No keyboard or monitor needed. Simply reflash remotely via SSH.
  • No instant reboot needed. Reflash your chip in a running system, verify it, be happy. The new firmware will be present next time you boot.
  • Crossflashing and hotflashing is possible as long as the flash chips are electrically and logically compatible (same protocol). Great for recovery.
  • Scriptability. Reflash a whole pool of identical machines at the same time from the command line. It is recommended to check flashprog output and error codes.
  • Speed. flashprog is often much faster than most vendor flash tools.
  • Portability. Supports DOS, Linux, FreeBSD (including Debian/kFreeBSD), NetBSD, OpenBSD, DragonFlyBSD, anything Solaris-like, Mac OS X, and other Unix-like OSes as well as GNU Hurd. Partial Windows support is available (no internal programmer support at the moment, hence no "BIOS flashing").

Emergency help

IMPORTANT: If something went wrong during flashing, do NOT turn off/reboot your computer. Instead, let us help you recover. We can be contacted via IRC (#flashprog on libera.chat, webchat) or email. Please allow for a few hours until someone responds on IRC, we're all volunteers.


Find out more about flashprog.
News | History | Friendliness


Get involved! Help us make flashprog better.
Development Guidelines | Browse Source | Pending patches | Technology | Project Ideas | Board Testing HOWTO | libflashprog


Getting Started
Download flashprog and get started.
Latest release | Supported Hardware | Downloads | Documentation


Learn how to contact us and find help and support.
FAQ | Contact | Donations

  • 2024-05-03: flashprog v1.1 is ready!
  • 2024-04-27: flashprog v1.0.2 ready for download!
  • 2024-04-26: flashprog v1.1‑rc1 tagged!
  • 2024-04-06: flashprog 1.1.x is branched!
  • 2024-04-06: flashprog v1.0.2‑rc2 tagged!
  • 2024-03-10: flashprog v1.0.2‑rc1 tagged!
  • 2024-01-21: flashprog v1.0.1 ready for download!
  • 2024-01-17: flashprog v1.0.1‑rc1 tagged!
  • 2023-12-16: flashprog v1.0 is ready and tagged!
  • 2023-12-08: flashprog v1.0‑rc1 tagged!
  • 2023-12-03: Importing contents from old flashrom wiki
  • 2023-10-03: flashprog wiki taking shape

This file is licensed under the Creative Commons Attribution 4.0 License.