Revision as of 20:38, 6 June 2007
Flashrom is a utility written for LinuxBIOS and maintained in the LinuxBIOS Subversion repository. It can be used to detect BIOS chips (DIP, PLCC), read their contents and write new contents on the chips ("flashing").
Supported devices
Note: The LinuxBIOSv1 version of Flashrom ("flash_and_burn") only supported a very small number of devices. Always use the latest Flashrom version from LinuxBIOSv2! There are some compatible chips out to the below list.
Flash chips
Vendor
|
Flash part
|
Status
|
AMD
|
AM-29F040B
|
OK
|
AMD
|
AM-29F016D
|
OK
|
ASD
|
AE49F2008
|
OK
|
Atmel
|
AT-29C040A
|
OK
|
Atmel
|
AT-29C020
|
OK
|
EMST
|
F49B002UA
|
OK
|
Intel®(Firmware Hub)
|
82802AB
|
OK
|
Intel®(Firmware Hub)
|
82802AC
|
OK
|
M-Systems
|
MD-2802
|
OK1
|
MX
|
MX-29F002
|
OK
|
PMC
|
PMC-49FL002
|
OK
|
PMC
|
PMC-49FL004
|
OK
|
Sharp
|
LHF-00L04
|
OK
|
SST
|
SST-29EE020A
|
OK
|
SST
|
SST-28SF040A
|
OK
|
SST
|
SST-39SF010A
|
OK
|
SST
|
SST-39SF020A
|
OK
|
SST
|
SST-39SF040
|
OK
|
SST
|
SST-39VF020
|
OK
|
SST
|
SST-49LF040B
|
OK
|
SST
|
SST-49LF040
|
OK
|
SST
|
SST-49LF020A
|
OK
|
SST
|
SST-49LF080A
|
OK
|
SST
|
SST-49LF002A/B
|
OK
|
SST
|
SST-49LF003A/B
|
OK
|
SST
|
SST-49LF004A/B
|
OK
|
SST
|
SST-49LF008A
|
OK
|
SST
|
SST-49LF004C
|
OK
|
SST
|
SST-49LF008C
|
OK
|
SST
|
SST-49LF016C
|
OK
|
SST
|
SST-49LF160C
|
OK
|
ST
|
ST-M29F002B
|
OK
|
ST
|
ST-M29F002T
|
OK
|
ST
|
ST-M29F002NT
|
OK
|
ST
|
ST-M29F400BT
|
OK
|
ST
|
ST-M29F040B
|
OK
|
SyncMOS
|
S29C51001T/B
|
OK4
|
SyncMOS
|
S29C51002T/B
|
OK
|
SyncMOS
|
S29C51004T/B
|
OK4
|
SyncMOS
|
S29C31004T
|
OK4
|
Winbond™
|
W29C011
|
OK
|
Winbond™
|
W29C020C
|
OK
|
Winbond™
|
W49F002U
|
OK
|
Winbond™
|
W49V002A
|
OK
|
Winbond™
|
W49V002FA
|
OK
|
Winbond™
|
W39V040FA
|
OK
|
Winbond™
|
W39V040A
|
OK
|
Winbond™
|
W39V040B
|
OK
|
Winbond™
|
W39V080A
|
OK
|
|
Southbridges
Vendor
|
Southbridge
|
Status
|
ALi
|
M1533
|
OK
|
AMD
|
Geode™ CS5530/CS5530A
|
OK
|
AMD
|
Geode™ SC1100
|
?
|
AMD
|
AMD-8111
|
OK
|
ATI
|
SB400
|
?
|
Broadcom
|
HT-1000
|
OK
|
Intel®
|
ICH2
|
OK3
|
Intel®
|
PIIX4/PIIX4E/PIIX4M
|
OK
|
NVIDIA
|
CK804
|
OK
|
NVIDIA
|
MCP51
|
?
|
NVIDIA
|
MCP55
|
OK
|
SiS
|
630
|
?
|
SiS
|
5595
|
?
|
VIA
|
CX700
|
OK
|
VIA
|
VT8231
|
?
|
VIA
|
VT8235
|
?
|
VIA
|
VT8237
|
?
|
VIA
|
VT82C686
|
?
|
|
Mainboards which need special setup
Vendor
|
Mainboard
|
Required option
|
Status
|
agámi
|
Aruma/AIS6000
|
-m AGAMI:ARUMA
|
OK
|
ASUS
|
A7V400-MX
|
—
|
OK
|
ASUS
|
A7V8X-MX
|
—
|
OK
|
ASUS
|
P5A
|
-m asus:p5a
|
OK
|
IBM
|
x3455
|
-m ibm:x3455
|
OK
|
IWILL
|
DK8-HTX
|
-m iwill:dk8_htx
|
OK
|
VIA
|
EPIA-M
|
—
|
OK5
|
VIA
|
EPIA-MII
|
—
|
OK5
|
|
1 Unsupported, disabled by default.
2 This includes the ICH, ICH0, ICH2, ICH2-M, ICH3-S, ICH3-M, ICH4/ICH4-L, ICH4-M, ICH5/ICH5R, ICH6/ICH6R, ICH6-M, ICH7DH, ICH7/ICH7R, ICH7M, ICH7MDH, ICH8/ICH8R, ICH8DH, and ICH8DO chipsets.
3 Identifying and reading chips seems to work, but there are reports that writing may not work on some mainboards.
4 Untested, but should work.
5 Might also work for other CLE266 based EPIAs.
Installation
Requirements
Flashrom requires the pciutils and zlib development packages in order to be built.
In Debian unstable the respective packages are called pciutils-dev and zlib1g-dev.
Manual Installation
$ svn co svn://linuxbios.org/repos/trunk/LinuxBIOSv2
$ cd LinuxBIOSv2/util/flashrom
$ make
$ sudo make install
OR
then get root and
# make install
Debian
$ sudo apt-get install flashrom