blob: 4e60f850e72cb4c8a076b175e1a155273da4ee88 [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 Hermann42eb17f2008-01-18 17:48:51 +00003flashrom \- a universal BIOS/ROM/flash programming utility
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 Hermann67808fe2007-10-18 00:29:05 +00009is a universal flash programming utility for DIP, PLCC, or SPI flash ROM
Stefan Reinauere3f3e2e2008-01-18 15:33:10 +000010chips. It can be used to flash BIOS/coreboot/firmware images, for example.
Uwe Hermanne5ac1642008-03-12 11:54:51 +000011.sp
Uwe Hermann42eb17f2008-01-18 17:48:51 +000012(see
13.B http://coreboot.org
14for details on coreboot)
Stefan Reinauer261144c2006-07-27 23:29:02 +000015.SH OPTIONS
16If no file is specified, then all that happens
17is that flash info is dumped and the flash chip is set to writable.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000018.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000019.B "\-r, \-\-read"
Uwe Hermann42eb17f2008-01-18 17:48:51 +000020Read flash ROM contents and save them into the given file.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000021.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000022.B "\-w, \-\-write"
Uwe Hermann42eb17f2008-01-18 17:48:51 +000023Write file into flash ROM (default when file is specified).
Stefan Reinauerde063bf2006-09-21 13:09:22 +000024.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000025.B "\-v, \-\-verify"
Uwe Hermann67808fe2007-10-18 00:29:05 +000026Verify the flash ROM contents against the given file.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000027.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000028.B "\-E, \-\-erase"
Uwe Hermann42eb17f2008-01-18 17:48:51 +000029Erase the flash ROM device.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000030.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000031.B "\-V, \-\-verbose"
32More verbose output.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000033.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000034.B "\-c, \-\-chip" <chipname>
Uwe Hermann42eb17f2008-01-18 17:48:51 +000035Probe only for specified flash ROM chip.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000036.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000037.B "\-s, \-\-estart" <addr>
Uwe Hermann42eb17f2008-01-18 17:48:51 +000038Exclude start position (obsolete).
Stefan Reinauerde063bf2006-09-21 13:09:22 +000039.TP
Stefan Reinauerf8337dd2006-08-03 10:49:09 +000040.B "\-e, \-\-eend" <addr>
Uwe Hermann42eb17f2008-01-18 17:48:51 +000041Exclude end postion (obsolete).
Stefan Reinauerde063bf2006-09-21 13:09:22 +000042.TP
Peter Stuge6b53fed2008-01-27 16:21:21 +000043.B "\-m, \-\-mainboard" <[vendor:]part>
Uwe Hermann67808fe2007-10-18 00:29:05 +000044Override mainboard settings. This option is needed for some mainboards,
45see the
Uwe Hermannf8a49fe2008-06-22 18:50:25 +000046.B "flashrom \-\-list\-supported"
47output for a list. The vendor is not required when the board name is unique.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000048.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000049.B "\-f, \-\-force"
Uwe Hermann67808fe2007-10-18 00:29:05 +000050Force write without checking whether the ROM image file is really meant
51to be used on this board.
52.sp
Stefan Reinauere3f3e2e2008-01-18 15:33:10 +000053Note: This check only works while coreboot is running, and only for those
54boards where the coreboot code supports it.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000055.TP
Stefan Reinauerf8337dd2006-08-03 10:49:09 +000056.B "\-l, \-\-layout" <layout.file>
Stefan Reinauer261144c2006-07-27 23:29:02 +000057Read ROM layout from file.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000058.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000059.B "\-i, \-\-image" <name>
Uwe Hermann67808fe2007-10-18 00:29:05 +000060Only flash image
61.B <name>
62from flash layout.
Stefan Reinauerde063bf2006-09-21 13:09:22 +000063.TP
Uwe Hermanne5ac1642008-03-12 11:54:51 +000064.B "\-L, \-\-list\-supported"
65List the ROM chips, chipsets, and mainboards supported by flashrom.
66The list of mainboards consists of those boards which need a special
67ROM write-enable function for flashrom to work.
68.sp
69There are many other boards which will work out of the box, without such
70special support in flashrom. Some of the known-good/known-bad and tested ones
71are listed at
72.BR http://coreboot.org/Flashrom#Supported_mainboards ,
73but the list is not exhaustive, of course.
74.TP
Stefan Reinauer261144c2006-07-27 23:29:02 +000075.B "\-h, \-\-help"
76Show a help text and exit.
Bernhard Walle201bde32008-01-21 15:24:22 +000077.TP
78.B "\-R, \-\-version"
79Show version information and exit.
Peter Stuge42688e52009-01-26 02:20:56 +000080.SH EXIT STATUS
81flashrom exits with 0 on success, 1 on most failures but with 2 if /dev/mem
82(/dev/xsvc on Solaris) can not be opened and with 3 if a call to mmap() fails.
Stefan Reinauer261144c2006-07-27 23:29:02 +000083.SH BUGS
Uwe Hermann42eb17f2008-01-18 17:48:51 +000084Please report any bugs at
85.BR http://tracker.coreboot.org/trac/coreboot/newticket ","
86or on the coreboot mailing list
87.RB "(" http://coreboot.org/Mailinglist ")."
Stefan Reinauer261144c2006-07-27 23:29:02 +000088.SH LICENCE
89.B flashrom
Carl-Daniel Hailfinger851ecf22009-01-08 04:56:59 +000090is covered by the GNU General Public License (GPL), version 2. Some files are
91additionally available under the GPL (version 2, or any later version).
Stefan Reinauer261144c2006-07-27 23:29:02 +000092.SH COPYRIGHT
Stefan Reinauer261144c2006-07-27 23:29:02 +000093.br
Carl-Daniel Hailfinger851ecf22009-01-08 04:56:59 +000094Please see the individual files.
Stefan Reinauer261144c2006-07-27 23:29:02 +000095.SH AUTHORS
Carl-Daniel Hailfinger851ecf22009-01-08 04:56:59 +000096Carl-Daniel Hailfinger
97.br
98Claus Gindhart <claus.gindhart@kontron.com>
99.br
100Dominik Geyer <dominik.geyer@kontron.com>
101.br
102Eric Biederman <ebiederman@lnxi.com>
103.br
104Giampiero Giancipoli <gianci@email.it>
105.br
106Joe Bao <Zheng.Bao@amd.com>
107.br
108Luc Verhaegen <libv@skynet.be>
109.br
110Markus Boas <ryven@ryven.de>
111.br
112Nikolay Petukhov <nikolay.petukhov@gmail.com>
113.br
114Peter Stuge <peter@stuge.se>
115.br
116Reinder E.N. de Haan <lb_reha@mveas.com>
117.br
118Ronald G. Minnich <rminnich@gmail.com>
119.br
120Ronald Hoogenboom <ronald@zonnet.nl>
Stefan Reinauer261144c2006-07-27 23:29:02 +0000121.br
122Stefan Reinauer <stepan@coresystems.de>
123.br
Carl-Daniel Hailfinger851ecf22009-01-08 04:56:59 +0000124Stefan Wildemann <stefan.wildemann@kontron.com>
125.br
126Steven James <pyro@linuxlabs.com>
127.br
128Uwe Hermann <uwe@hermann-uwe.de>
129.br
130Wang Qingpei <Qingpei.Wang@amd.com>
131.br
132Yinghai Lu <yinghai.lu@amd.com>
Stefan Reinauerf8337dd2006-08-03 10:49:09 +0000133.br
134some others
Stefan Reinauer261144c2006-07-27 23:29:02 +0000135.PP
Stefan Reinauerde063bf2006-09-21 13:09:22 +0000136This manual page was written by Uwe Hermann <uwe@hermann-uwe.de>.
Uwe Hermann42eb17f2008-01-18 17:48:51 +0000137It is licensed under the terms of the GNU GPL (version 2 or later).