blob: b6a07921001f7c01ee577cb85a422392014c8931 [file] [log] [blame]
Uwe Hermann2dc5f422006-11-20 20:32:35 +00001-------------------------------------------------------------------------------
Peter Stuge44dd3042009-04-20 12:34:30 +00002flashrom README
Uwe Hermann2dc5f422006-11-20 20:32:35 +00003-------------------------------------------------------------------------------
Ronald G. Minnich1e5003f2002-04-10 18:02:07 +00004
Carl-Daniel Hailfinger1ebf8452009-08-18 23:50:14 +00005flashrom is a utility for detecting, reading, writing, verifying and erasing
6flash chips. It is often used to flash BIOS/EFI/coreboot/firmware images
7in-system using a supported mainboard, but it also supports flashing of network
Uwe Hermannc7e8a0c2009-05-19 14:14:21 +00008cards (NICs), SATA controller cards, and other external devices which can
9program flash chips.
Uwe Hermanne74b9f82009-04-10 14:41:29 +000010
Carl-Daniel Hailfinger1ebf8452009-08-18 23:50:14 +000011It supports a wide range of DIP32, PLCC32, DIP8, SO8/SOIC8, TSOP32, and TSOP40
12chips, which use various protocols such as LPC, FWH, parallel flash, or SPI.
Uwe Hermann42eb17f2008-01-18 17:48:51 +000013
Uwe Hermann2dc5f422006-11-20 20:32:35 +000014
Carl-Daniel Hailfingera23041c2009-06-12 14:49:10 +000015Packaging
16---------
17
18To package flashrom and remove dependencies on subversion, either use
19make export
20or
21make tarball
22
23make export will export all flashrom files from the subversion repository at
24revision BASE into a directory named $EXPORTDIR/flashrom-$VERSION-r$SVNREVISION
25and will additionally modify the Makefile in that directory to contain the svn
26revision of the exported tree.
27
28make tarball will simply tar up the result of make export and gzip compress it.
29
30The snapshot tarballs are the result of make tarball and require no further
31processing.
32
33
Uwe Hermannd1129ac2009-05-28 15:07:42 +000034Build Instructions
Stefan Reinauer06b2c4d2005-12-01 10:51:08 +000035------------------
36
Uwe Hermann87c07932009-05-05 16:15:46 +000037To build flashrom you need to install the following packages or ports:
Stefan Reinauer06b2c4d2005-12-01 10:51:08 +000038
Idwer Vollering5e410de2009-05-03 23:33:05 +000039Linux et al:
Uwe Hermann87c07932009-05-05 16:15:46 +000040
41 * pciutils
42 * pciutils-devel / pciutils-dev / libpci-dev
Carl-Daniel Hailfinger10572fa2009-08-17 16:30:53 +000043 * zlib-devel / zlib1g-dev (only needed if libpci is static)
Stefan Reinauer06b2c4d2005-12-01 10:51:08 +000044
Idwer Vollering5e410de2009-05-03 23:33:05 +000045On FreeBSD, you need the following ports:
Idwer Vollering5e410de2009-05-03 23:33:05 +000046
Uwe Hermann87c07932009-05-05 16:15:46 +000047 * devel/gmake
48 * devel/libpci
Idwer Vollering5e410de2009-05-03 23:33:05 +000049
Uwe Hermann87c07932009-05-05 16:15:46 +000050To compile on Linux, use:
Carl-Daniel Hailfinger9abf5292009-05-01 16:34:32 +000051
Uwe Hermann87c07932009-05-05 16:15:46 +000052 make
53
54To compile on FreeBSD, use:
55
56 gmake
57
Carl-Daniel Hailfinger10572fa2009-08-17 16:30:53 +000058To compile on Nexenta, use:
59
60 make
61
Uwe Hermann87c07932009-05-05 16:15:46 +000062To compile on Solaris, use:
63
Carl-Daniel Hailfinger10572fa2009-08-17 16:30:53 +000064 gmake LDFLAGS="-L$pathtolibpci" CC="gcc -I$pathtopciheaders" CFLAGS=-O2
Uwe Hermann87c07932009-05-05 16:15:46 +000065
66To compile on DragonFly BSD, use:
67
68 ln -s /usr/pkg/include/pciutils pci
Carl-Daniel Hailfinger10572fa2009-08-17 16:30:53 +000069 gmake CFLAGS=-I. LDFLAGS="-L/usr/pkg/lib"
Carl-Daniel Hailfinger9abf5292009-05-01 16:34:32 +000070
71To compile and run on Darwin/Mac OS X:
Uwe Hermann87c07932009-05-05 16:15:46 +000072
73 Install DirectIO from coresystems GmbH.
74 DirectIO is available at http://www.coresystems.de/en/directio.
Carl-Daniel Hailfinger9abf5292009-05-01 16:34:32 +000075
Stefan Reinauer06b2c4d2005-12-01 10:51:08 +000076
Uwe Hermannd1129ac2009-05-28 15:07:42 +000077Installation
78------------
79
80In order to install flashrom and the manpage into /usr/local, type:
81
82 sudo make install
83
84For installation in a different directory use DESTDIR, e.g. like this:
85
86 sudo make DESTDIR=/usr install
87
88
Uwe Hermann3d5f96c2009-04-23 14:57:55 +000089Usage / Options
90---------------
Stefan Reinauer06b2c4d2005-12-01 10:51:08 +000091
Uwe Hermann3d5f96c2009-04-23 14:57:55 +000092Please see the flashrom(8) manpage.
Ronald G. Minnich5e5f75e2002-01-29 18:21:41 +000093
Ronald G. Minnich5e5f75e2002-01-29 18:21:41 +000094
Peter Stuge42688e52009-01-26 02:20:56 +000095Exit status
96-----------
Uwe Hermanne74b9f82009-04-10 14:41:29 +000097
Uwe Hermann87c07932009-05-05 16:15:46 +000098Please see the flashrom(8) manpage.
Peter Stuge42688e52009-01-26 02:20:56 +000099
100
Stefan Reinauere3f3e2e2008-01-18 15:33:10 +0000101coreboot Table and Mainboard Identification
Ollie Lho184a4042005-11-26 21:55:36 +0000102--------------------------------------------
Ronald G. Minnich5e5f75e2002-01-29 18:21:41 +0000103
Uwe Hermann87c07932009-05-05 16:15:46 +0000104Please see the flashrom(8) manpage.
Uwe Hermann67808fe2007-10-18 00:29:05 +0000105
Ollie Lho184a4042005-11-26 21:55:36 +0000106
Uwe Hermann2dc5f422006-11-20 20:32:35 +0000107ROM Layout Support
Ollie Lho184a4042005-11-26 21:55:36 +0000108------------------
109
Uwe Hermann87c07932009-05-05 16:15:46 +0000110Please see the flashrom(8) manpage.
Ollie Lho184a4042005-11-26 21:55:36 +0000111
112
Uwe Hermannf8a49fe2008-06-22 18:50:25 +0000113Supported Flash Chips / Chipsets / Mainboards
114---------------------------------------------
Uwe Hermannb6d28322006-12-04 08:15:47 +0000115
Uwe Hermannf8a49fe2008-06-22 18:50:25 +0000116Please check the output of 'flashrom -L' for the list of supported
Uwe Hermannc7e8a0c2009-05-19 14:14:21 +0000117flash chips, chipsets/southbridges, mainboards, and flash programmers.
Uwe Hermannb6d28322006-12-04 08:15:47 +0000118
Uwe Hermann0ae5acc2009-06-04 18:53:03 +0000119
Joerg Mayer7221d5f2009-08-24 13:24:52 +0000120Contact
Uwe Hermanne94dbf22009-05-22 13:18:38 +0000121-------
122
123The official flashrom website is:
124
Stefan Reinauer22ea8cd2009-07-30 13:32:26 +0000125 http://www.flashrom.org/
Uwe Hermannb6d28322006-12-04 08:15:47 +0000126
Joerg Mayer7221d5f2009-08-24 13:24:52 +0000127The IRC channel is
128
129 #flashrom at irc.freenode.net
130
131The Mailing list addess is
132
133 flashrom@flashrom.org