1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-04-27 23:22:37 +02:00
Anastasia Klimchuk e2df58a379 libflashrom: Update the API for progress callback
The initial version of API for progress callback would require the
callback function to make a second call to get the needed data about
progress state (current, total etc).

This patch changes the callback API, so that callback function gets
all needed data straight away as parameters, and with this,
callback has all the data to do its job.

Since the initial version was submitted and it was in the tree for a
while, the change needs to add a _v2 suffix for new thing and
deprecated attribute for old thing.

Testing: both unit tests and cli are libflashrom clients.
All unit tests run successfully, for the cli all scenarios from
commit 75dc0655b95dde91f1426a7e5aecfc04d7b8d631 run successfully.

Change-Id: Ia8cc0461c449b7e65888a64cdc594c55b81eae7a
Signed-off-by: Anastasia Klimchuk <aklm@flashrom.org>
Reviewed-on: https://review.coreboot.org/c/flashrom/+/86031
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
Reviewed-by: Peter Marheine <pmarheine@chromium.org>
2025-03-09 07:34:06 +00:00

67 lines
2.7 KiB
ReStructuredText

===============================
Recent development (unreleased)
===============================
This document describes the major changes that are expected to be included in
the next release of flashrom and which are currently only available by source
code checkout (see :doc:`../dev_guide/building_from_source`). These changes
may be further revised before the next release.
Known issues
============
AMD-based PCs with FCH are unable to read flash contents for internal (BIOS
flash) chips larger than 16 MB, and attempting to do so may crash the system.
Systems with AMD "Promontory" IO extenders (mostly "Zen" desktop platforms) are
not currently supported.
https://ticket.coreboot.org/issues/370
flashchips.c split into separate files by vendor
================================================
``flashchips.c`` file was split into separate files per vendor. flashchips.c still exists in the source
code but it is much smaller and only contain "generic" chip entries.
With this, instead of one file ``flashchips.c`` we now have a ``flashchips/`` directory which contains
all the files.
There are no changes to the usage, and everything that's supported stays the same.
New features
============
-r/-w/-v argument is optional when using -i
-------------------------------------------
See :doc:`/classic_cli_manpage` for details.
Hall of Fame added to documentation
-----------------------------------
The flashrom HTML documentation (and web site) now includes an
automatically-generated list of historical contributors, to acknowledge
everybody who has made flashrom into what it is:
:doc:`../about_flashrom/hall_of_fame`.
When building the documentation, the ``generate_authors_list`` Meson option will
cause the lists to be generated, requiring a runnable copy of Git on the system
and that the source tree being built is a Git working copy. If those
requirements are not satisfied or the option is disabled, the authors lists will
be replaced with placeholders unless the ``generate_authors_list`` option is set
to ``enabled`` in which case the build will fail if the requirements are not
satisfied.
New libflashrom API for progress reporting
------------------------------------------
The old ``flashrom_set_progress_callback`` function for requesting progress updates
during library operations is now deprecated. Users should call
``flashrom_set_progress_callback_v2`` instead, which also changes the signature
of the callback function. Specifically, new function type ``flashrom_progress_callback_v2``
should be used from now on.
This new API fixes limitations with the old one where most users would need to
define their own global state to track progress, and it was impossible to fix that
issue while maintaining binary compatibility without adding a new API.