Flashrom/0.9.7: Difference between revisions

From flashrom
Jump to navigation Jump to search
mNo edit summary
No edit summary
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{DISPLAYTITLE:flashrom/0.9.7}}
{{DISPLAYTITLE:flashrom/0.9.7}}
{{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 organize code review and track improvements as they are pushed to our repository. Some of the stuff mentioned below may not get included or even be removed later again.
</div>


About 1 year and almost 150 commits after the release of flashrom 0.9.6 we have released version 0.9.7 on 2013-08-14.
There have been numerous additions of programmers as well as flash chips.
General infrastructure changes and cross-platform improvements will make adding new features and the creation of [[libflashrom]] easier.
Most importantly, the development process will change starting with this release to accelerate the integration of patches, see [[Development_Guidelines#Acked-by|for details]].


=TODO list for this release=
Below you find a summary of the most important changes in the previous development cycle.
* programmers
** [http://patchwork.coreboot.org/patch/2033/ buspirate speedup]
** [http://patchwork.coreboot.org/patch/3465/ serprog map_flash_region]
* chips
** [http://patchwork.coreboot.org/patch/3329/ EN29LV800(A/B/C)]
** [http://patchwork.coreboot.org/patch/3231/ MX25L6445E et al]
** [http://patchwork.coreboot.org/patch/3535/ AT25F series 3]
** [http://patchwork.coreboot.org/patch/3186/ AT26F040]
* boards
** [http://patchwork.coreboot.org/patch/3610/ biostar M7VIQ]
* platform/arch/os
** [http://patchwork.coreboot.org/patch/3439/ powerpc]
** [http://patchwork.coreboot.org/patch/3418/ macosx universal binaries]
* ui
* infrastructure
** [http://patchwork.coreboot.org/patch/3646/ Return code for spi_read_status_register]
 


==New major user-visible features==
==New major user-visible features==
* Warn if all blocks were skipped while writing.
* Fix evil twins of Macronix MX25L1605, MX25L3205, MX25L6405.
* Exit if there are unused programmer parameters.
=== Related to programmers ===
* internal:
** AMD Geode on OpenBSD
** Add safe support for the integrated micro controller (IMC) in AMD chipsets.
** Add full support for VX800/VX820, VX855/VX875 and VX900 (both SPI and LPC).
** Various new untested board enables (please don't run away without testing our work).
* serprog
* serprog
** Add support for setting the SPI frequency.
** Add support for setting the SPI frequency.
Line 40: Line 34:
* pony_spi: Add support for AJAWe.
* pony_spi: Add support for AJAWe.
* Add support for Realtek RTL8169.
* Add support for Realtek RTL8169.
* Add Altera USB-Blaster SPI programmer.
* dediprog:
* dediprog:
** Add a "device" parameter to support mutliple devices.
** Add a "device" parameter to support multiple devices.
** Adds a programmer parameter 'spispeed'.
** Adds a programmer parameter 'spispeed'.
* internal:
** Add full support for VX800/VX820, VX855/VX875 and VX900 (both SPI and LPC).
** Varous new untested board enables (please don't run away without testing our work).
* Fix evil twins of Macronix MX25L1605, MX25L3205, MX25L6405.
* Add Altera USB-Blaster SPI programmer.


===New chips===
===New or refined chips===
* AMIC A25L(Q) series
* Atmel AT26DF041
* Atmel AT26DF041
* Atmel AT49(H)F010, AT49F080 and AT49F080T
* Atmel AT49(H)F010, AT49F080 and AT49F080T
* Atmel AT25F series (AT25F512, AT25F512A, AT25F512B, AT25F1024, AT25F1024A, AT25F2048, AT25F4096)
* Atmel AT25F series (AT25F512, AT25F512A, AT25F512B, AT25F1024, AT25F1024A, AT25F2048, AT25F4096)
* Eon EN25F64
* Eon EN25F64
* GigaDevice GD25LQ32
* Eon EN25S series
* More Eon EN25QH chips
* More GigaDevice GD25* devices
* Intel S33 series (QB25FxxxS33x8)
* Intel S33 series (QB25FxxxS33x8)
* Macronix MX25U1635E, MX25U3235E/F and MX25U6435E/F
* Macronix MX25U1635E, MX25U3235E/F and MX25U6435E/F
 
* Micron (Numonyx) N25Q series
* Numonyx N25Q016 and N25Q032
* Micron (ST) M45PE series
* Micron (ST) M25PX80
* Nantronics N25 series
* PMC Pm25LV and Pm25LD series
* Sanyo LE25FW series
* Spansion S25FL2 and S25FL...S series
* SST SST25WF512, SST25WF010, SST25WF020 and SST25WF040
* SST SST25WF512, SST25WF010, SST25WF020 and SST25WF040
* Winbond W39F010/W39L010/W39L020
* Winbond W39F010/W39L010/W39L020
Line 65: Line 63:
* struct flashctx contains a pointer to the detected flash chip instead of a complete copy.
* struct flashctx contains a pointer to the detected flash chip instead of a complete copy.
* Some ISO C(99) changes, fixed memory leaks and removals of exit() calls.
* Some ISO C(99) changes, fixed memory leaks and removals of exit() calls.
* Various cross-platform fixes.
* Improved CFLAGS and CPPFLAGS handling.
* Improved CFLAGS and CPPFLAGS handling.
* Introduce a compile time option to select a default programmer.
* Introduce a compile time option to select a default programmer.

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.


About 1 year and almost 150 commits after the release of flashrom 0.9.6 we have released version 0.9.7 on 2013-08-14. There have been numerous additions of programmers as well as flash chips. General infrastructure changes and cross-platform improvements will make adding new features and the creation of libflashrom easier. Most importantly, the development process will change starting with this release to accelerate the integration of patches, see for details.

Below you find a summary of the most important changes in the previous development cycle.

New major user-visible features

  • Warn if all blocks were skipped while writing.
  • Fix evil twins of Macronix MX25L1605, MX25L3205, MX25L6405.
  • Exit if there are unused programmer parameters.

Related to programmers

  • internal:
    • AMD Geode on OpenBSD
    • Add safe support for the integrated micro controller (IMC) in AMD chipsets.
    • Add full support for VX800/VX820, VX855/VX875 and VX900 (both SPI and LPC).
    • Various new untested board enables (please don't run away without testing our work).
  • serprog
    • Add support for setting the SPI frequency.
    • Add opcode to control the programmer's output drivers.
    • Enable serprog on Windows.
  • buspirate_spi
    • Improvements to support different firmware versions safely.
    • Support the new fast SPI mode present in Bus Pirate firmware v5.5 or newer.
    • Add user interface to activate the Bus Pirate pull-up resistors.
  • ftdi_spi
    • Allow to select FTDI device by serial number.
    • Add support for all 4 possible channels.
    • Add support for FT232H.
  • pony_spi: Add support for AJAWe.
  • Add support for Realtek RTL8169.
  • Add Altera USB-Blaster SPI programmer.
  • dediprog:
    • Add a "device" parameter to support multiple devices.
    • Adds a programmer parameter 'spispeed'.

New or refined chips

  • AMIC A25L(Q) series
  • Atmel AT26DF041
  • Atmel AT49(H)F010, AT49F080 and AT49F080T
  • Atmel AT25F series (AT25F512, AT25F512A, AT25F512B, AT25F1024, AT25F1024A, AT25F2048, AT25F4096)
  • Eon EN25F64
  • Eon EN25S series
  • More Eon EN25QH chips
  • More GigaDevice GD25* devices
  • Intel S33 series (QB25FxxxS33x8)
  • Macronix MX25U1635E, MX25U3235E/F and MX25U6435E/F
  • Micron (Numonyx) N25Q series
  • Micron (ST) M45PE series
  • Micron (ST) M25PX80
  • Nantronics N25 series
  • PMC Pm25LV and Pm25LD series
  • Sanyo LE25FW series
  • Spansion S25FL2 and S25FL...S series
  • SST SST25WF512, SST25WF010, SST25WF020 and SST25WF040
  • Winbond W39F010/W39L010/W39L020

Infrastructural improvements and fixes

  • struct flashctx contains a pointer to the detected flash chip instead of a complete copy.
  • Some ISO C(99) changes, fixed memory leaks and removals of exit() calls.
  • Various cross-platform fixes.
  • Improved CFLAGS and CPPFLAGS handling.
  • Introduce a compile time option to select a default programmer.
  • Do not read the flash chip twice in verification mode.
  • Refactor PCI and USB device status accounting/printing.
  • Unify PCI init and let pcidev clean itself up.
  • Decouple BAR reading from pci device init.
  • Make write granularity a chip attribute.

Download

flashrom 0.9.7 can be downloaded in various ways:

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

A tarball is available for download at

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

Supported hardware

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