blob: cf6f5fd50eefdde710fa39a48b38ec814523ef3d [file] [log] [blame]
Uwe Hermannd42009c2009-04-11 13:59:00 +00001.TH FLASHROM 8 "April 11, 2009"
Stefan Reinauer261144c2006-07-27 23:29:02 +00002.SH NAME
Uwe Hermannd42009c2009-04-11 13:59:00 +00003flashrom \- read, write, and erase BIOS/ROM/flash chips
Stefan Reinauer261144c2006-07-27 23:29:02 +00004.SH SYNOPSIS
Uwe Hermanne5ac1642008-03-12 11:54:51 +00005.B flashrom \fR[\fB\-rwvEVfLhR\fR] [\fB\-c\fR chipname] [\fB\-s\fR exclude_start] [\fB\-e\fR exclude_end]
Stefan Reinauerf8337dd2006-08-03 10:49:09 +00006 [\fB-m\fR vendor:part] [\fB-l\fR file.layout] [\fB-i\fR image_name] [file]
Stefan Reinauer261144c2006-07-27 23:29:02 +00007.SH DESCRIPTION
8.B flashrom
Uwe Hermanne74b9f82009-04-10 14:41:29 +00009is a utility for reading, writing, and erasing flash ROM chips.
10It's often used to flash BIOS/coreboot/firmware images.
11.PP
Uwe Hermannd42009c2009-04-11 13:59:00 +000012It supports a wide range of DIP32, PLCC32, DIP8, SO8/SOIC8, TSOP32, and
13TSOP40 chips, which use various protocols such as LPC, FWH, parallel flash,
14or SPI.
Uwe Hermanne74b9f82009-04-10 14:41:29 +000015.PP
Uwe Hermann42eb17f2008-01-18 17:48:51 +000016(see
17.B http://coreboot.org
18for details on coreboot)
Stefan Reinauer261144c2006-07-27 23:29:02 +000019.SH OPTIONS
20If no file is specified, then all that happens
21is that flash info is dumped and the flash chip is set to writable.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000022.TP
Uwe Hermanne74b9f82009-04-10 14:41:29 +000023.B "\-r, \-\-read <file>"
24Read flash ROM contents and save them into the given
25.BR <file> .
Stefan Reinauerde063bf2006-09-21 13:09:22 +000026.TP
Uwe Hermanne74b9f82009-04-10 14:41:29 +000027.B "\-w, \-\-write <file>"
28Write file into flash ROM (default when
29.B <file>
30is specified).
Stefan Reinauerde063bf2006-09-21 13:09:22 +000031.TP
Uwe Hermanne74b9f82009-04-10 14:41:29 +000032.B "\-v, \-\-verify <file>"
33Verify the flash ROM contents against the given
34.BR <file> .
Stefan Reinauerde063bf2006-09-21 13:09:22 +000035.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000036.B "\-E, \-\-erase"
Uwe Hermanne74b9f82009-04-10 14:41:29 +000037Erase the flash ROM chip.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000038.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000039.B "\-V, \-\-verbose"
40More verbose output.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000041.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000042.B "\-c, \-\-chip" <chipname>
Uwe Hermann42eb17f2008-01-18 17:48:51 +000043Probe only for specified flash ROM chip.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000044.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000045.B "\-s, \-\-estart" <addr>
Uwe Hermann42eb17f2008-01-18 17:48:51 +000046Exclude start position (obsolete).
Stefan Reinauerde063bf2006-09-21 13:09:22 +000047.TP
Stefan Reinauerf8337dd2006-08-03 10:49:09 +000048.B "\-e, \-\-eend" <addr>
Uwe Hermann42eb17f2008-01-18 17:48:51 +000049Exclude end postion (obsolete).
Stefan Reinauerde063bf2006-09-21 13:09:22 +000050.TP
Peter Stuge6b53fed2008-01-27 16:21:21 +000051.B "\-m, \-\-mainboard" <[vendor:]part>
Uwe Hermann67808fe2007-10-18 00:29:05 +000052Override mainboard settings. This option is needed for some mainboards,
53see the
Uwe Hermannf8a49fe2008-06-22 18:50:25 +000054.B "flashrom \-\-list\-supported"
55output for a list. The vendor is not required when the board name is unique.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000056.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000057.B "\-f, \-\-force"
Uwe Hermann67808fe2007-10-18 00:29:05 +000058Force write without checking whether the ROM image file is really meant
59to be used on this board.
60.sp
Stefan Reinauere3f3e2e2008-01-18 15:33:10 +000061Note: This check only works while coreboot is running, and only for those
62boards where the coreboot code supports it.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000063.TP
Uwe Hermanne74b9f82009-04-10 14:41:29 +000064.B "\-l, \-\-layout <file>"
65Read ROM layout from
66.BR <file> .
Stefan Reinauerde063bf2006-09-21 13:09:22 +000067.TP
Uwe Hermanne74b9f82009-04-10 14:41:29 +000068.B "\-i, \-\-image <name>"
Uwe Hermann67808fe2007-10-18 00:29:05 +000069Only flash image
70.B <name>
71from flash layout.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000072.TP
Uwe Hermanne5ac1642008-03-12 11:54:51 +000073.B "\-L, \-\-list\-supported"
74List the ROM chips, chipsets, and mainboards supported by flashrom.
75The list of mainboards consists of those boards which need a special
76ROM write-enable function for flashrom to work.
77.sp
78There are many other boards which will work out of the box, without such
79special support in flashrom. Some of the known-good/known-bad and tested ones
80are listed at
81.BR http://coreboot.org/Flashrom#Supported_mainboards ,
82but the list is not exhaustive, of course.
Uwe Hermanne74b9f82009-04-10 14:41:29 +000083.sp
84Please let us know if you can verify other boards to work or not work out
85of the box.
Uwe Hermanne5ac1642008-03-12 11:54:51 +000086.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000087.B "\-h, \-\-help"
88Show a help text and exit.
Bernhard Walle201bde32008-01-21 15:24:22 +000089.TP
90.B "\-R, \-\-version"
91Show version information and exit.
Peter Stuge42688e52009-01-26 02:20:56 +000092.SH EXIT STATUS
93flashrom exits with 0 on success, 1 on most failures but with 2 if /dev/mem
94(/dev/xsvc on Solaris) can not be opened and with 3 if a call to mmap() fails.
Stefan Reinauer261144c2006-07-27 23:29:02 +000095.SH BUGS
Uwe Hermann42eb17f2008-01-18 17:48:51 +000096Please report any bugs at
97.BR http://tracker.coreboot.org/trac/coreboot/newticket ","
98or on the coreboot mailing list
99.RB "(" http://coreboot.org/Mailinglist ")."
Stefan Reinauer261144c2006-07-27 23:29:02 +0000100.SH LICENCE
101.B flashrom
Carl-Daniel Hailfinger851ecf22009-01-08 04:56:59 +0000102is covered by the GNU General Public License (GPL), version 2. Some files are
103additionally available under the GPL (version 2, or any later version).
Stefan Reinauer261144c2006-07-27 23:29:02 +0000104.SH COPYRIGHT
Stefan Reinauer261144c2006-07-27 23:29:02 +0000105.br
Carl-Daniel Hailfinger851ecf22009-01-08 04:56:59 +0000106Please see the individual files.
Stefan Reinauer261144c2006-07-27 23:29:02 +0000107.SH AUTHORS
Carl-Daniel Hailfinger851ecf22009-01-08 04:56:59 +0000108Carl-Daniel Hailfinger
109.br
110Claus Gindhart <claus.gindhart@kontron.com>
111.br
112Dominik Geyer <dominik.geyer@kontron.com>
113.br
114Eric Biederman <ebiederman@lnxi.com>
115.br
116Giampiero Giancipoli <gianci@email.it>
117.br
118Joe Bao <Zheng.Bao@amd.com>
119.br
120Luc Verhaegen <libv@skynet.be>
121.br
122Markus Boas <ryven@ryven.de>
123.br
124Nikolay Petukhov <nikolay.petukhov@gmail.com>
125.br
126Peter Stuge <peter@stuge.se>
127.br
128Reinder E.N. de Haan <lb_reha@mveas.com>
129.br
130Ronald G. Minnich <rminnich@gmail.com>
131.br
132Ronald Hoogenboom <ronald@zonnet.nl>
Stefan Reinauer261144c2006-07-27 23:29:02 +0000133.br
134Stefan Reinauer <stepan@coresystems.de>
135.br
Carl-Daniel Hailfinger851ecf22009-01-08 04:56:59 +0000136Stefan Wildemann <stefan.wildemann@kontron.com>
137.br
138Steven James <pyro@linuxlabs.com>
139.br
140Uwe Hermann <uwe@hermann-uwe.de>
141.br
142Wang Qingpei <Qingpei.Wang@amd.com>
143.br
144Yinghai Lu <yinghai.lu@amd.com>
Stefan Reinauerf8337dd2006-08-03 10:49:09 +0000145.br
146some others
Stefan Reinauer261144c2006-07-27 23:29:02 +0000147.PP
Stefan Reinauerde063bf2006-09-21 13:09:22 +0000148This manual page was written by Uwe Hermann <uwe@hermann-uwe.de>.
Uwe Hermann42eb17f2008-01-18 17:48:51 +0000149It is licensed under the terms of the GNU GPL (version 2 or later).