Flashrom/0.9.6: Difference between revisions

From flashrom
Jump to navigation Jump to search
No edit summary
 
(10 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{DISPLAYTITLE:flashrom/0.9.6}}
{{DISPLAYTITLE:flashrom/0.9.6}}
{{Template:Latest_box}}


<div style="margin-top:0.5em; padding:0.5em 0.5em 0.5em 0.5em; background-color:#ff6666; align:right; border:1px solid #000000;">
'''IMPORTANT:''' This is work in progress. Its purpose is to track improvements as they are pushed to our repository. Some of the stuff mentioned below may even be removed later.
</div>


= Release announcement =


=TODO list for this release=
The flashrom developers are happy to announce the release of the flashrom 0.9.6 series.
* programmers
** [http://patchwork.coreboot.org/patch/3460/ buspirate buffer management]
*** [http://patchwork.coreboot.org/patch/2033/ buspirate speedup]
** [http://patchwork.coreboot.org/patch/3572/ FT2232 programmer frequency divider]
** [http://patchwork.coreboot.org/patch/3517/ serprog spi frequency]
** [http://patchwork.coreboot.org/patch/3465/ serprog map_flash_region]
** ✔ [http://patchwork.coreboot.org/patch/2791/ trivial nicintel_spi]
* chips
** [http://patchwork.coreboot.org/patch/3338/ AT49F040]
** ✔ [http://patchwork.coreboot.org/patch/3520/ en29lv640b]
** [http://patchwork.coreboot.org/patch/3329/ EN29LV800(A/B/C)]
** [http://patchwork.coreboot.org/patch/3231/ MX25L6445E et al]
** [http://patchwork.coreboot.org/patch/3186/ AT26F040]
** [http://patchwork.coreboot.org/patch/3177/ Remove sharplhf00l04.c]
** ✔ [http://patchwork.coreboot.org/patch/3597/ Numonyx N25Q064]
** ✔ [http://patchwork.coreboot.org/patch/3593/ GigaDevice GD25QXX]
* boards
* platform/arch/os
** [http://patchwork.coreboot.org/patch/3439/ powerpc]
** [http://patchwork.coreboot.org/patch/3418/ macosx universal binaries]
* ui
** ✔ [http://patchwork.coreboot.org/patch/3569/ Check for duplicate -i arguments.]
** [http://patchwork.coreboot.org/patch/3524/ logfile]
* infrastructure
** [http://patchwork.coreboot.org/patch/3571/ make struct flashchip a field in struct flashctx]
** [http://patchwork.coreboot.org/patch/3533/ spi25 cleanups and AT25f]
*** [http://patchwork.coreboot.org/patch/3515/ spi25 refactoring too when steve's EWSR tagging patch is available in time]


flashrom is a utility for reading, writing, erasing and verifying flash ROM chips.
flashrom is designed to flash BIOS/[U]EFI/coreboot/firmware/optionROM images on mainboards, network/graphics/storage controller cards, and various programmer devices. It can do so without any special boot procedures and from your normal working environment.
==Highlights of flashrom==
* Parallel, LPC, FWH and SPI flash interfaces.
* Support for onboard programming and external programmers.
* 300 (+12 since 0.9.5) flash chip types/models some with a number of variants each.
* 220 (+44 since 0.9.5) different chipsets, some with multiple flash controllers.
* 401 (+27 since 0.9.5) mainboards verified to be working.
* Flash chip package agnostic. DIP32, PLCC32, DIP8, SO8/SOIC8, TSOP32/40/48, BGA and more have all been verified to work.
* 50 PCI devices, various USB and parallel port devices, and all external programmers compatible with serprog or SI Prog can be used for flashing.
* No physical access needed. root access is sufficient.
* No bootable floppy disk, bootable CD-ROM or other media needed.
* No keyboard or monitor needed. Simply reflash remotely via SSH.
* No instant reboot needed. Reflash your ROM in a running system, verify it, be happy. The new firmware will be present next time you boot.
* Crossflashing and hotflashing is possible as long as the flash chips are electrically and logically compatible (same protocol). Great for recovery.
* Scriptability. Reflash a whole pool of identical machines at the same time from the command line. It is recommended to check flashrom output and error codes.
* Speed. flashrom is much faster than vendor flash tools.
* Supports Linux, FreeBSD, NetBSD, DragonFly BSD, OpenBSD, Nexenta, Solaris, Mac OS X and DOS fully, Windows partially (no flashing of mainboards). Please refer to the README for build instructions.
Thanks go to everyone who contributed to flashrom over the years.
Please note that rewriting your flash chip can be dangerous and flashrom developers make no guarantees whatsoever. That said, many users have successfully replaced proprietary tools such as awdflash, amiflash and afudos with flashrom.
==User interface changes==
* The -p/--programmer parameter is now mandatory for all operations that access the programmer/chip.
*: Previously there was a default programmer selected at build time. This was convenient for most users, but created a danger for others that increased with the number of platforms and programmers supported, namely that they get used to a default programmer that later changes when they use another binary. It is very easy to brick a mainboard in case you do not notice you are writing its firmware instead of a device attached to an external programmer. The disadvantage is of course that many users have now to add '''-p internal''' to the command line when they want to do ''the obvious'' and flash their mainboards.
* It is now possible to let flashrom create log files directly (by using the new -o/--output option).
* flashrom now checks for duplicate -i/--image arguments (which are used together with layout files).


==New major user-visible features==
==New major user-visible features==
* Programmer support:
** new driver ''ponyprog'' for hardware similar to SI Prog
** native SPI AAI write support to the Dediprog SF100 driver
* Support for new chips:
** Atmel AT49F040
** Eon EN25QH32
** Eon EN29LV640B
** GigaDevice GD25QXX
** Numonyx N25Q064
** PMC Pm39LV512


==Infrastructural improvements and fixes==
==Infrastructural improvements and fixes==
* The dummy programmer got support for SFDP and now has a dedicated status register.
* Various minor refactorings of SPI-related code.
* The code generating the list of supported hardware for the wiki has been improved.
* Many exit() calls have been replaced by proper error handling.
* I/O permissions are now released automatically on shutdown.
* Preliminary work on Winbond W836xx and ITE IT8707F/IT8710F detection.
= Minor versions =
flashrom 0.9.6 had a small bug regarding the version string, which has been fixed in 0.9.6.1.


= Download =
= Download =


flashrom 0.9.6 can be downloaded in various ways:
flashrom 0.9.6.1 can be downloaded in various ways:


Anonymous checkout from the subversion repository at svn://flashrom.org/flashrom/tags/flashrom-0.9.6
Anonymous checkout from the subversion repository at svn://flashrom.org/flashrom/tags/flashrom-0.9.6.1


A tarball is available for download at
A tarball is available for download at


http://download.flashrom.org/releases/flashrom-0.9.6.tar.bz2 [http://download.flashrom.org/releases/flashrom-0.9.6.tar.bz2.asc (GPG signature)].
http://download.flashrom.org/releases/flashrom-0.9.6.1.tar.bz2 [http://download.flashrom.org/releases/flashrom-0.9.6.1.tar.bz2.asc (GPG signature)].


= Supported hardware =
= Supported hardware =


Please see the [[Flashrom/0.9.6/Supported_Hardware|archived status page]] for the hardware supported by this release.
Please see the [[Flashrom/0.9.6/Supported_Hardware|archived status page]] for the hardware supported by this release.

Latest revision as of 21:08, 1 March 2015

This is an archived release notes page. For the release notes of the latest stable release please see here.


Release announcement

The flashrom developers are happy to announce the release of the flashrom 0.9.6 series.

flashrom is a utility for reading, writing, erasing and verifying flash ROM chips.

flashrom is designed to flash BIOS/[U]EFI/coreboot/firmware/optionROM images on mainboards, network/graphics/storage controller cards, and various programmer devices. It can do so without any special boot procedures and from your normal working environment.

Highlights of flashrom

  • Parallel, LPC, FWH and SPI flash interfaces.
  • Support for onboard programming and external programmers.
  • 300 (+12 since 0.9.5) flash chip types/models some with a number of variants each.
  • 220 (+44 since 0.9.5) different chipsets, some with multiple flash controllers.
  • 401 (+27 since 0.9.5) mainboards verified to be working.
  • Flash chip package agnostic. DIP32, PLCC32, DIP8, SO8/SOIC8, TSOP32/40/48, BGA and more have all been verified to work.
  • 50 PCI devices, various USB and parallel port devices, and all external programmers compatible with serprog or SI Prog can be used for flashing.
  • No physical access needed. root access is sufficient.
  • No bootable floppy disk, bootable CD-ROM or other media needed.
  • No keyboard or monitor needed. Simply reflash remotely via SSH.
  • No instant reboot needed. Reflash your ROM in a running system, verify it, be happy. The new firmware will be present next time you boot.
  • Crossflashing and hotflashing is possible as long as the flash chips are electrically and logically compatible (same protocol). Great for recovery.
  • Scriptability. Reflash a whole pool of identical machines at the same time from the command line. It is recommended to check flashrom output and error codes.
  • Speed. flashrom is much faster than vendor flash tools.
  • Supports Linux, FreeBSD, NetBSD, DragonFly BSD, OpenBSD, Nexenta, Solaris, Mac OS X and DOS fully, Windows partially (no flashing of mainboards). Please refer to the README for build instructions.

Thanks go to everyone who contributed to flashrom over the years.

Please note that rewriting your flash chip can be dangerous and flashrom developers make no guarantees whatsoever. That said, many users have successfully replaced proprietary tools such as awdflash, amiflash and afudos with flashrom.

User interface changes

  • The -p/--programmer parameter is now mandatory for all operations that access the programmer/chip.
    Previously there was a default programmer selected at build time. This was convenient for most users, but created a danger for others that increased with the number of platforms and programmers supported, namely that they get used to a default programmer that later changes when they use another binary. It is very easy to brick a mainboard in case you do not notice you are writing its firmware instead of a device attached to an external programmer. The disadvantage is of course that many users have now to add -p internal to the command line when they want to do the obvious and flash their mainboards.
  • It is now possible to let flashrom create log files directly (by using the new -o/--output option).
  • flashrom now checks for duplicate -i/--image arguments (which are used together with layout files).

New major user-visible features

  • Programmer support:
    • new driver ponyprog for hardware similar to SI Prog
    • native SPI AAI write support to the Dediprog SF100 driver
  • Support for new chips:
    • Atmel AT49F040
    • Eon EN25QH32
    • Eon EN29LV640B
    • GigaDevice GD25QXX
    • Numonyx N25Q064
    • PMC Pm39LV512

Infrastructural improvements and fixes

  • The dummy programmer got support for SFDP and now has a dedicated status register.
  • Various minor refactorings of SPI-related code.
  • The code generating the list of supported hardware for the wiki has been improved.
  • Many exit() calls have been replaced by proper error handling.
  • I/O permissions are now released automatically on shutdown.
  • Preliminary work on Winbond W836xx and ITE IT8707F/IT8710F detection.

Minor versions

flashrom 0.9.6 had a small bug regarding the version string, which has been fixed in 0.9.6.1.

Download

flashrom 0.9.6.1 can be downloaded in various ways:

Anonymous checkout from the subversion repository at svn://flashrom.org/flashrom/tags/flashrom-0.9.6.1

A tarball is available for download at

http://download.flashrom.org/releases/flashrom-0.9.6.1.tar.bz2 (GPG signature).

Supported hardware

Please see the archived status page for the hardware supported by this release.