1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-04-26 22:52:34 +02:00
Carl-Daniel Hailfinger 3f8f9b65e2 Flashrom 0.9.0
Corresponding to flashrom svn r454.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Peter Stuge <peter@stuge.se>
2009-05-04 12:18:10 +00:00
2007-09-08 14:36:01 +00:00
2009-05-01 16:34:32 +00:00
2009-05-04 12:18:10 +00:00
2009-01-12 21:28:03 +00:00
2009-05-04 12:18:10 +00:00
2009-04-13 21:35:49 +00:00
2009-04-15 10:52:49 +00:00

-------------------------------------------------------------------------------
flashrom README
-------------------------------------------------------------------------------

flashrom is a utility for reading, writing, verifying and erasing flash ROM
chips.  It's often used to flash BIOS/coreboot/firmware images.

It supports a wide range of DIP32, PLCC32, DIP8, SO8/SOIC8, TSOP32, and
TSOP40 chips, which use various protocols such as LPC, FWH, parallel flash,
or SPI.

(see http://coreboot.org for details on coreboot)


Build Requirements
------------------

To build the flashrom utility you need to install the following packages or
ports:

Linux et al:
* pciutils
* pciutils-devel / pciutils-dev / libpci-dev
* zlib-devel / zlib1g-dev

On FreeBSD, you need the following ports:
* devel/gmake
* devel/libpci

To compile on FreeBSD, use the command below:
gmake

To compile on Solaris, use the commands below:
gmake LDFLAGS="-L$pathtolibpci -lpci -lz" CC="gcc -I$pathtopciheaders" CFLAGS=-O2

To compile on DragonFly BSD, use the commands below:
ln -s /usr/pkg/include/pciutils pci
gmake CFLAGS=-I. LDFLAGS="-L/usr/pkg/lib -lpci -lz"

To compile and run on Darwin/Mac OS X:
Install DirectIO from coresystems GmbH.
DirectIO is available at http://www.coresystems.de/en/directio


Usage / Options
---------------

Please see the flashrom(8) manpage.


Exit status
-----------

flashrom exits with 0 on success, 1 on most failures but with 2 if /dev/mem
(/dev/xsvc on Solaris) can not be opened and with 3 if a call to mmap() fails.


coreboot Table and Mainboard Identification
--------------------------------------------

flashrom reads the coreboot table to determine the current mainboard. If no
coreboot table could be read or if you want to override these values, you can
specify -m, e.g.:

 $ flashrom -w --mainboard AGAMI:ARUMA agami_aruma.rom

See the 'Supported mainboards' section in the output of 'flashrom -L' for
a list of boards which require the specification of the board name, if no
coreboot table is found.


ROM Layout Support
------------------

flashrom supports ROM layouts. This allows you to flash certain parts of
the flash chip only. A ROM layout file looks like follows:

  00000000:00008fff gfxrom
  00009000:0003ffff normal
  00040000:0007ffff fallback

  i.e.:
  startaddr:endaddr name

  All addresses are offsets within the file, not absolute addresses!
  
If you only want to update the normal image in a ROM you can say:

  flashrom -w --layout rom.layout --image normal agami_aruma.rom
     
To update normal and fallback but leave the VGA BIOS alone, say:

  flashrom -w -l rom.layout -i normal -i fallback agami_aruma.rom
 
Currently overlapping sections are not supported.

ROM layouts should replace the -s and -e option since they are more 
flexible and they should lead to a ROM update file format with the 
ROM layout and the ROM image in one file (cpio, zip or something?).


Supported Flash Chips / Chipsets / Mainboards
---------------------------------------------

Please check the output of 'flashrom -L' for the list of supported
flash chips, chipsets/southbridges, and mainboards.

See also http://coreboot.org/Flashrom for more details.

Description
No description provided
Readme 75 MiB
Languages
C 90.2%
Rust 5%
Shell 2%
Makefile 1.6%
Meson 1.2%