Package: wnpp Severity: wishlist X-Debbugs-Cc: nic...@gmx.de * Package name : flashrom-stable Version : 1.0 Upstream Contact: Nico Huber <nic...@gmx.de> * URL : https://www.flashrom.org/ * License : GPL Programming Lang: C Description : Identify, read, write, erase, and verify BIOS/ROM/flash chips
flashrom is a tool for identifying, reading, writing, verifying and erasing flash chips. It's often used to flash BIOS/EFI/coreboot/firmware/optionROM images in-system using a supported mainboard, but it also supports flashing of network cards (NICs), SATA controller cards, and other external devices which can program flash chips. It supports a wide range of DIP32, PLCC32, DIP8, SO8/SOIC8, TSOP32/40/48, and BGA chips, which use various protocols such as LPC, FWH, parallel flash, or SPI. The tool can be used to flash BIOS/firmware images for example -- be it proprietary BIOS images or coreboot (previously known as LinuxBIOS) images. It can also be used to read the current existing BIOS/firmware from a flash chip. Currently supported programmers include: * internal (for in-system flashing in the mainboard) * dummy (virtual programmer for testing flashrom) * atahpt (for flash ROMs on Highpoint ATA/RAID controllers) * atapromise (for flash ROMs on Promise PDC2026x ATA/RAID controllers) * atavia (for flash ROMs on VIA VT6421A SATA controllers) * buspirate_spi (for SPI flash ROMs attached to a Bus Pirate) * ch341a_spi (for SPI flash ROMs attached to WCH CH341A) * dediprog (for SPI flash ROMs attached to a Dediprog SF100) * developerbox_spi (for SPI flash ROMs on the 96Boards Developerbox) * digilent_spi (for SPI flash ROMs on iCEblink40 development boards) * dirtyjtag_spi (for SPI flash ROMs attached to DirtyJTAG-compatible devices) * drkaiser (for flash ROMs on Dr. Kaiser PC-Waechter PCI cards) * ft2232_spi (for SPI flash ROMs attached to an FT2232/FT4232H/FT232H family based USB SPI programmer), including the DLP Design DLP-USB1232H, FTDI FT2232H Mini-Module, FTDI FT4232H Mini-Module, openbiosprog-spi, Amontec JTAGkey/JTAGkey-tiny/JTAGkey-2, Dangerous Prototypes Bus Blaster, Olimex ARM-USB-TINY/-H, Olimex ARM-USB-OCD/-H, TIAO/DIYGADGET USB Multi-Protocol Adapter (TUMPA), TUMPA Lite, GOEPEL PicoTAP, Google Servo v1/v2, and FIC OpenMoko Neo1973 Debug board. * gfxnvidia (for flash ROMs on NVIDIA graphics cards) * it8212 (for flash ROMs on ITE IT8212F ATA/RAID controller) * jlink_spi (for SPI flash ROMs attached to SEGGER J-Link and compatible devices) * linux_mtd (for SPI flash ROMs accessible via /dev/mtdX on Linux) * linux_spi (for SPI flash ROMs accessible via /dev/spidevX.Y on Linux) * mstarddc_spi (for SPI flash ROMs accessible through DDC in MSTAR-equipped displays) * nic3com (for flash ROMs on 3COM network cards) * nicintel (for parallel flash ROMs on Intel 10/100Mbit network cards) * nicintel_eeprom (for SPI EEPROMs on Intel Gigabit network cards) * nicintel_spi (for SPI flash ROMs on Intel Gigabit network cards) * nicnatsemi (for flash ROMs on National Semiconductor DP838* network cards) * nicrealtek (for flash ROMs on Realtek and SMC 1211 network cards) * ogp_spi (for SPI flash ROMs on Open Graphics Project graphics card) * pickit2_spi (for SPI flash ROMs accessible via Microchip PICkit2) * pony_spi (for SPI flash ROMs attached to a SI-Prog serial port bitbanging adapter) * rayer_spi (for SPI flash ROMs attached to a RayeR parport based programmer) * satamv (for flash ROMs on Marvell SATA controllers) * satasii (for flash ROMs on Silicon Image SATA/IDE controllers) * serprog (for flash ROMs attached to a programmer speaking serprog), including AVR flasher by Urja Rannikko, AVR flasher by eightdot, Arduino Mega flasher by fritz, InSystemFlasher by Juhana Helovuo, and atmegaXXu2-flasher by Stefan Tauner. * stlinkv3_spi (for SPI flash ROMs attached to STMicroelectronics STLINK V3 devices) * usbblaster_spi (for SPI flash ROMs attached to an Altera USB-Blaster) -- flashrom-stable is a fork of flashrom. Hence the copied description (with sorted and updated device list). A flashrom-stable package will naturally conflict the flashrom package. flashrom-stable strives towards a regular release process, so up-to-date chipset support can hopefully make it into stable distributions in time. A note on building: `make` is still the official build process. The J-Link support (requires libjaylink) has to be enabled explicitly: `make CONFIG_JLINK_SPI=yes`. `meson` might work as well (it did for Debian somewhat before), but there is no guarantee that we are beyond all the growing pains that hit the flashrom-1.2 package.