Flashrom (utility)

{{short description|Universal flash programming utility}}

{{Infobox software

| name = Flashrom

| logo = File:Flashrom logo.svg

| logo_size = 100px

| screenshot =

| caption =

| collapsible =

| developer = flashrom team

| released =

| latest release version = {{wikidata|property|reference|P348}}

| latest release date = {{start date and age|{{wikidata|qualifier|P348|P577}}}}

| latest preview version =

| latest preview date =

| programming language = C

| operating system = DragonFly BSD, DOS, FreeBSD, kFreeBSD, Linux, macOS, NetBSD, OpenBSD, Solaris, Windows (partial)

| platform =

| size =

| language = English

| genre = Firmware utility

| license = GNU General Public License

}}

Flashrom is a software utility published under an open source license that can detect, read, verify, erase, or write EEPROMs using interfaces such as the Low Pin Count (LPC), FWH, parallel, and Serial Peripheral Interface (SPI). It can be used to flash firmware images such as BIOS or coreboot, or to backup existing firmware.

Details

It is free software released under the terms of the GNU General Public License version 2. It has pciutils and zlib as dependencies, and for some programmers also libftdi and libusb. It is run from user space and usually requires superuser privileges (except when using supported USB devices as programmer).

The flashrom project is lead and maintained by Anastasia Klimchuk.{{cite web

|url=https://www.phoronix.com/news/Flashrom-Splits-Into-Two

|title=Flashrom Splits Into Two For This Firmware/ROM Flashing Utility

|date=23 April 2023

}}

Supported hardware

File:Pomona 5250 SOIC-8 clip.jpg chips for flashing]]

Support for programmers include the Bus Pirate{{Cite book |last1=Chantzis |first1=Fotios |url=https://books.google.com/books?id=GbYEEAAAQBAJ |title=Practical IoT Hacking: The Definitive Guide to Attacking the Internet of Things |last2=Stais |first2=Ioannis |last3=Calderon |first3=Paulino |last4=Deirmentzoglou |first4=Evangelos |last5=Woods |first5=Beau |date=2021-03-23 |publisher=No Starch Press |isbn=978-1-7185-0091-4 |language=en}} and the Raspberry Pi.{{Cite web |last=Rankin |first=Kyle |date=March 6, 2017 |title=Flash ROMs with a Raspberry Pi |url=https://www.linuxjournal.com/content/flash-roms-raspberry-pi |access-date=2022-06-24 |website=Linux Journal}}

It supports over 480 flash chip families, 291 chipsets, 524 mainboards, 71 PCI devices, 19 USB devices and various parallel/serial port-based devices which can be used as programmers. It supports cross-flashing and hot-flashing.{{cite web |title=List of supported hardware |url=https://www.flashrom.org/Supported_hardware |publisher=flashrom.org}}

Supported packaging types include dual in-line package (DIP), plastic leaded chip carrier (PLCC), small-outline integrated circuit (SOIC), thin small-outline package (TSOP), or ball grid array (BGA) packages.

See also

References

{{Portal|Free and open-source software}}

{{Reflist}}