flashprog/v1.3
So 51 commits later, flashprog has an updated CLI interface with additional
commands. The first two new commands are config & write-protect.
Also, the Intel chipset support got a major update and should support all
current platforms now.
What's new?
Command-Mode CLI
The CLI code has been refactored to support multiple command modes. For each command, flashprog offers different operations to control the flash chip. The first two command modes are config and write-protect.
config allows to read and set status-register bits, for instance to set the quad-enable bit:
$ flashprog config set -p ch347_spi qe 1
write-protect controls the block-protection features of SPI flash chips, e.g. to query the write-protection status:
$ flashprog write-protect -p ch347_spi status
All the new commands can also be called with special shortcuts, as a symlink to the flashprog binary. The shortcuts follow a prefix convention, namely should start either with flashprog-, flash or just f. config and write-protect can also be abbreviated as cfg and wp respectively. For instance, all of the following combinations are possible for the config mode:
$ ln -s /usr/bin/flashprog flashprog-config $ ln -s /usr/bin/flashprog flashconfig $ ln -s /usr/bin/flashprog fconfig $ ln -s /usr/bin/flashprog flashprog-cfg $ ln -s /usr/bin/flashprog flashcfg $ ln -s /usr/bin/flashprog fcfg
Full documentation is available in the flashprog-config(8) and flashprog-write-protect(8) manual pages.
Chipset Support
The Intel chipset support was updated to include all currently available platforms: Snow Ridge (2022), Meteor Lake (2023), Lunar Lake & Arrow Lake (2024). Tested was only Meteor Lake so far, however the hardware seems identical with only minor differences in the flash descriptors.
Other Changes
- Flashprog prefers to write volatile status registers now, when automatically trying to disable write protection. This can potentially reduce wear of status registers.
- Support for SPI95 EEPROMs has been fixed after a regression.
- A seemingly long obsolete 1s delay has been removed from automatic verification.
- The ch347_spi driver has a spimode parameter now to switch between SPI modes 0, 1, 2, 3 (0 is the default).
- Some small fixes, flash chip additions, and build system changes.
Build Notes
Clang can complain about shadowing the global variable optarg in cli_common.c. This is harmless and the build should succeed with -Werror disabled as follows:
$ make WARNERROR=no ...
or
$ meson setup -D werror=false ...
Download
flashprog v1.3 can be downloaded in various ways:
Anonymous checkout of the tag v1.3 from git repositories at
A tarball is available for download at
https://flashprog.org/releases/flashprog-v1.3.tar.bz2 (GPG signature) (see GPG_Signatures)
Supported hardware
Please see the archived status page for the hardware supported by this release.