diff options
-rw-r--r-- | README | 83 | ||||
-rw-r--r-- | flashrom.8 | 42 |
2 files changed, 68 insertions, 57 deletions
@@ -3,7 +3,7 @@ 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. +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, @@ -15,31 +15,41 @@ or SPI. Build Requirements ------------------ -To build the flashrom utility you need to install the following packages or -ports: +To build flashrom you need to install the following packages or ports: Linux et al: -* pciutils -* pciutils-devel / pciutils-dev / libpci-dev -* zlib-devel / zlib1g-dev + + * 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 + * devel/gmake + * devel/libpci + +To compile on Linux, use: + + make + +To compile on FreeBSD, use: + + gmake -To compile on Solaris, use the commands below: -gmake LDFLAGS="-L$pathtolibpci -lpci -lz" CC="gcc -I$pathtopciheaders" CFLAGS=-O2 +To compile on Solaris, use: -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" + gmake LDFLAGS="-L$pathtolibpci -lpci -lz" CC="gcc -I$pathtopciheaders" \ + CFLAGS=-O2 + +To compile on DragonFly BSD, use: + + 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 + + Install DirectIO from coresystems GmbH. + DirectIO is available at http://www.coresystems.de/en/directio. Usage / Options @@ -51,52 +61,19 @@ 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. +Please see the flashrom(8) manpage. 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. +Please see the flashrom(8) manpage. 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?). +Please see the flashrom(8) manpage. Supported Flash Chips / Chipsets / Mainboards @@ -49,15 +49,49 @@ Probe only for specified flash ROM chip. .TP .B "\-s, \-\-estart" <addr> Exclude start position (obsolete). +.sp +flashrom supports ROM layouts. This allows you to flash certain parts of +the flash chip only. A ROM layout file looks like follows: +.sp + 00000000:00008fff gfxrom + 00009000:0003ffff normal + 00040000:0007ffff fallback +.sp + i.e.: + startaddr:endaddr name +.sp +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: +.sp +.B " flashrom -w --layout rom.layout --image normal agami_aruma.rom" +.sp +To update normal and fallback but leave the VGA BIOS alone, say: +.sp +.B " flashrom -w -l rom.layout -i normal \" +.br +.B " -i fallback agami_aruma.rom" +.sp +Currently overlapping sections are not supported. +.sp +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?). .TP .B "\-e, \-\-eend" <addr> Exclude end postion (obsolete). .TP .B "\-m, \-\-mainboard" <[vendor:]part> -Override mainboard settings. This option is needed for some mainboards, -see the -.B "flashrom \-\-list\-supported" -output for a list. The vendor is not required when the board name is unique. +Override mainboard settings. +.sp +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.: +.sp +.B " flashrom -w --mainboard AGAMI:ARUMA agami_aruma.rom" +.sp +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. .TP .B "\-f, \-\-force" Force write without checking whether the ROM image file is really meant |