blob: 60dca9838b4b78b9b3a21e33eeba315209b49d17 [file] [log] [blame]
Carl-Daniel Hailfinger851ecf22009-01-08 04:56:59 +00001.TH FLASHROM 8 "January 5, 2009"
Stefan Reinauer261144c2006-07-27 23:29:02 +00002.SH NAME
Uwe Hermanne74b9f82009-04-10 14:41:29 +00003flashrom \- utility for reading, writing, and erasong 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
12It supports a wide range of DIP32, PLCC32, DIP8, and TSOP chips, which use
13various protocols such as LPC, FWH, parallel flash, or SPI.
14.PP
Uwe Hermann42eb17f2008-01-18 17:48:51 +000015(see
16.B http://coreboot.org
17for details on coreboot)
Stefan Reinauer261144c2006-07-27 23:29:02 +000018.SH OPTIONS
19If no file is specified, then all that happens
20is that flash info is dumped and the flash chip is set to writable.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000021.TP
Uwe Hermanne74b9f82009-04-10 14:41:29 +000022.B "\-r, \-\-read <file>"
23Read flash ROM contents and save them into the given
24.BR <file> .
Stefan Reinauerde063bf2006-09-21 13:09:22 +000025.TP
Uwe Hermanne74b9f82009-04-10 14:41:29 +000026.B "\-w, \-\-write <file>"
27Write file into flash ROM (default when
28.B <file>
29is specified).
Stefan Reinauerde063bf2006-09-21 13:09:22 +000030.TP
Uwe Hermanne74b9f82009-04-10 14:41:29 +000031.B "\-v, \-\-verify <file>"
32Verify the flash ROM contents against the given
33.BR <file> .
Stefan Reinauerde063bf2006-09-21 13:09:22 +000034.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000035.B "\-E, \-\-erase"
Uwe Hermanne74b9f82009-04-10 14:41:29 +000036Erase the flash ROM chip.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000037.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000038.B "\-V, \-\-verbose"
39More verbose output.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000040.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000041.B "\-c, \-\-chip" <chipname>
Uwe Hermann42eb17f2008-01-18 17:48:51 +000042Probe only for specified flash ROM chip.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000043.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000044.B "\-s, \-\-estart" <addr>
Uwe Hermann42eb17f2008-01-18 17:48:51 +000045Exclude start position (obsolete).
Stefan Reinauerde063bf2006-09-21 13:09:22 +000046.TP
Stefan Reinauerf8337dd2006-08-03 10:49:09 +000047.B "\-e, \-\-eend" <addr>
Uwe Hermann42eb17f2008-01-18 17:48:51 +000048Exclude end postion (obsolete).
Stefan Reinauerde063bf2006-09-21 13:09:22 +000049.TP
Peter Stuge6b53fed2008-01-27 16:21:21 +000050.B "\-m, \-\-mainboard" <[vendor:]part>
Uwe Hermann67808fe2007-10-18 00:29:05 +000051Override mainboard settings. This option is needed for some mainboards,
52see the
Uwe Hermannf8a49fe2008-06-22 18:50:25 +000053.B "flashrom \-\-list\-supported"
54output for a list. The vendor is not required when the board name is unique.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000055.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000056.B "\-f, \-\-force"
Uwe Hermann67808fe2007-10-18 00:29:05 +000057Force write without checking whether the ROM image file is really meant
58to be used on this board.
59.sp
Stefan Reinauere3f3e2e2008-01-18 15:33:10 +000060Note: This check only works while coreboot is running, and only for those
61boards where the coreboot code supports it.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000062.TP
Uwe Hermanne74b9f82009-04-10 14:41:29 +000063.B "\-l, \-\-layout <file>"
64Read ROM layout from
65.BR <file> .
Stefan Reinauerde063bf2006-09-21 13:09:22 +000066.TP
Uwe Hermanne74b9f82009-04-10 14:41:29 +000067.B "\-i, \-\-image <name>"
Uwe Hermann67808fe2007-10-18 00:29:05 +000068Only flash image
69.B <name>
70from flash layout.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000071.TP
Uwe Hermanne5ac1642008-03-12 11:54:51 +000072.B "\-L, \-\-list\-supported"
73List the ROM chips, chipsets, and mainboards supported by flashrom.
74The list of mainboards consists of those boards which need a special
75ROM write-enable function for flashrom to work.
76.sp
77There are many other boards which will work out of the box, without such
78special support in flashrom. Some of the known-good/known-bad and tested ones
79are listed at
80.BR http://coreboot.org/Flashrom#Supported_mainboards ,
81but the list is not exhaustive, of course.
Uwe Hermanne74b9f82009-04-10 14:41:29 +000082.sp
83Please let us know if you can verify other boards to work or not work out
84of the box.
Uwe Hermanne5ac1642008-03-12 11:54:51 +000085.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000086.B "\-h, \-\-help"
87Show a help text and exit.
Bernhard Walle201bde32008-01-21 15:24:22 +000088.TP
89.B "\-R, \-\-version"
90Show version information and exit.
Peter Stuge42688e52009-01-26 02:20:56 +000091.SH EXIT STATUS
92flashrom exits with 0 on success, 1 on most failures but with 2 if /dev/mem
93(/dev/xsvc on Solaris) can not be opened and with 3 if a call to mmap() fails.
Stefan Reinauer261144c2006-07-27 23:29:02 +000094.SH BUGS
Uwe Hermann42eb17f2008-01-18 17:48:51 +000095Please report any bugs at
96.BR http://tracker.coreboot.org/trac/coreboot/newticket ","
97or on the coreboot mailing list
98.RB "(" http://coreboot.org/Mailinglist ")."
Stefan Reinauer261144c2006-07-27 23:29:02 +000099.SH LICENCE
100.B flashrom
Carl-Daniel Hailfinger851ecf22009-01-08 04:56:59 +0000101is covered by the GNU General Public License (GPL), version 2. Some files are
102additionally available under the GPL (version 2, or any later version).
Stefan Reinauer261144c2006-07-27 23:29:02 +0000103.SH COPYRIGHT
Stefan Reinauer261144c2006-07-27 23:29:02 +0000104.br
Carl-Daniel Hailfinger851ecf22009-01-08 04:56:59 +0000105Please see the individual files.
Stefan Reinauer261144c2006-07-27 23:29:02 +0000106.SH AUTHORS
Carl-Daniel Hailfinger851ecf22009-01-08 04:56:59 +0000107Carl-Daniel Hailfinger
108.br
109Claus Gindhart <claus.gindhart@kontron.com>
110.br
111Dominik Geyer <dominik.geyer@kontron.com>
112.br
113Eric Biederman <ebiederman@lnxi.com>
114.br
115Giampiero Giancipoli <gianci@email.it>
116.br
117Joe Bao <Zheng.Bao@amd.com>
118.br
119Luc Verhaegen <libv@skynet.be>
120.br
121Markus Boas <ryven@ryven.de>
122.br
123Nikolay Petukhov <nikolay.petukhov@gmail.com>
124.br
125Peter Stuge <peter@stuge.se>
126.br
127Reinder E.N. de Haan <lb_reha@mveas.com>
128.br
129Ronald G. Minnich <rminnich@gmail.com>
130.br
131Ronald Hoogenboom <ronald@zonnet.nl>
Stefan Reinauer261144c2006-07-27 23:29:02 +0000132.br
133Stefan Reinauer <stepan@coresystems.de>
134.br
Carl-Daniel Hailfinger851ecf22009-01-08 04:56:59 +0000135Stefan Wildemann <stefan.wildemann@kontron.com>
136.br
137Steven James <pyro@linuxlabs.com>
138.br
139Uwe Hermann <uwe@hermann-uwe.de>
140.br
141Wang Qingpei <Qingpei.Wang@amd.com>
142.br
143Yinghai Lu <yinghai.lu@amd.com>
Stefan Reinauerf8337dd2006-08-03 10:49:09 +0000144.br
145some others
Stefan Reinauer261144c2006-07-27 23:29:02 +0000146.PP
Stefan Reinauerde063bf2006-09-21 13:09:22 +0000147This manual page was written by Uwe Hermann <uwe@hermann-uwe.de>.
Uwe Hermann42eb17f2008-01-18 17:48:51 +0000148It is licensed under the terms of the GNU GPL (version 2 or later).