blob: b62bb790fbc05dbb3c00dc94d58ff6997d6ca959 [file] [log] [blame]
Uwe Hermann2dc5f422006-11-20 20:32:35 +00001-------------------------------------------------------------------------------
2Flashrom README
3-------------------------------------------------------------------------------
Ronald G. Minnich1e5003f2002-04-10 18:02:07 +00004
Uwe Hermann2dc5f422006-11-20 20:32:35 +00005This is the universal (LinuxBIOS) flash utility.
6
7Build Requirements
Stefan Reinauer06b2c4d2005-12-01 10:51:08 +00008------------------
9
10To build the flashrom utility you need to have the following packages
Uwe Hermann2dc5f422006-11-20 20:32:35 +000011installed on your Linux system:
Stefan Reinauer06b2c4d2005-12-01 10:51:08 +000012
13* pciutils
14* pciutils-devel
15
16
Uwe Hermann2dc5f422006-11-20 20:32:35 +000017Usage
Stefan Reinauer06b2c4d2005-12-01 10:51:08 +000018-----
19
Stefan Reinauerf8337dd2006-08-03 10:49:09 +000020usage: ./flashrom [-rwvEVfh] [-c chipname] [-s exclude_start]
21 [-e exclude_end] [-m vendor:part] [-l file.layout] [-i imagename] [file]
22 -r | --read: read flash and save into file
23 -w | --write: write file into flash (default when
24 file is specified)
25 -v | --verify: verify flash against file
26 -E | --erase: erase flash device
27 -V | --verbose: more verbose output
28 -c | --chip <chipname>: probe only for specified flash chip
29 -s | --estart <addr>: exclude start position
30 -e | --eend <addr>: exclude end postion
Ollie Lho184a4042005-11-26 21:55:36 +000031 -m | --mainboard <vendor:part>: override mainboard settings
Stefan Reinauerf8337dd2006-08-03 10:49:09 +000032 -f | --force: force write without checking image
33 -l | --layout <file.layout>: read rom layout from file
34 -i | --image <name>: only flash image name from flash layout
Ronald G. Minnich5e5f75e2002-01-29 18:21:41 +000035
Ollie Lho184a4042005-11-26 21:55:36 +000036 If no file is specified, then all that happens
37 is that flash info is dumped and the flash chip is set to writable.
Ronald G. Minnich5e5f75e2002-01-29 18:21:41 +000038
Ronald G. Minnich5e5f75e2002-01-29 18:21:41 +000039
Uwe Hermann2dc5f422006-11-20 20:32:35 +000040LinuxBIOS Table and Mainboard Identification
Ollie Lho184a4042005-11-26 21:55:36 +000041--------------------------------------------
Ronald G. Minnich5e5f75e2002-01-29 18:21:41 +000042
Uwe Hermann2dc5f422006-11-20 20:32:35 +000043Flashrom reads the LinuxBIOS table to determine the current mainboard.
Ollie Lho184a4042005-11-26 21:55:36 +000044(Parse DMI as well in future?) If no LinuxBIOS table could be read
Uwe Hermann2dc5f422006-11-20 20:32:35 +000045or if you want to override these values, you can specify -m, e.g.:
Ollie Lho184a4042005-11-26 21:55:36 +000046
Uwe Hermann2dc5f422006-11-20 20:32:35 +000047 flashrom -w --mainboard ISLAND:ARUMA island_aruma.rom
Ollie Lho184a4042005-11-26 21:55:36 +000048
49
Uwe Hermann2dc5f422006-11-20 20:32:35 +000050ROM Layout Support
Ollie Lho184a4042005-11-26 21:55:36 +000051------------------
52
Uwe Hermann2dc5f422006-11-20 20:32:35 +000053Flashrom supports ROM layouts. This allows to flash certain parts of
54the flash chip only. A ROM layout file looks like follows:
Ollie Lho184a4042005-11-26 21:55:36 +000055
56 00000000:00008fff gfxrom
57 00009000:0003ffff normal
58 00040000:0007ffff fallback
59
60 i.e.:
61 startaddr:endaddr name
62
63 all addresses are offsets within the file, not absolute addresses!
64
Uwe Hermann2dc5f422006-11-20 20:32:35 +000065If you only want to update the normal image in a ROM you can say:
Ollie Lho184a4042005-11-26 21:55:36 +000066
67 flashrom -w --layout rom.layout --image normal island_aruma.rom
68
Uwe Hermann2dc5f422006-11-20 20:32:35 +000069To update normal and fallback but leave the VGA BIOS alone, say:
Ollie Lho184a4042005-11-26 21:55:36 +000070
71 flashrom -w -l rom.layout -i normal -i fallback island_aruma.rom
72
Uwe Hermann2dc5f422006-11-20 20:32:35 +000073Currently overlapping sections are not supported.
Ollie Lho184a4042005-11-26 21:55:36 +000074
Uwe Hermann2dc5f422006-11-20 20:32:35 +000075ROM layouts should replace the -s and -e option since they are more
76flexible and they should lead to a ROM update file format with the
77ROM layout and the ROM image in one file (cpio, zip or something?)
Ollie Lho184a4042005-11-26 21:55:36 +000078
79
80DOC support
81-----------
82
83DISK on Chip support is currently disabled since it is considered unstable.
Stefan Reinauercbc55d02006-08-25 19:21:42 +000084Change CFLAGS in the Makefile to enable it: Remove -DDISABLE_DOC from CFLAGS.
Ollie Lho184a4042005-11-26 21:55:36 +000085
86