Merge branch 'ethtool-write-firmware'
authorDavid S. Miller <davem@davemloft.net>
Sun, 13 Oct 2024 17:02:50 +0000 (18:02 +0100)
committerDavid S. Miller <davem@davemloft.net>
Sun, 13 Oct 2024 17:02:50 +0000 (18:02 +0100)
commit6aac56631831e1386b6edd3c583c8afb2abfd267
treeea2bb79da10eb5a41b33074641bda484194bc659
parenteae38f09cc0eef6e5d5ff0217a1867431edde09b
parent9a3b0d078bd825613c0821bf7bf5a2e1d8d60057
Merge branch 'ethtool-write-firmware'

Danielle Ratson says:

====================
ethtool: Add support for writing firmware

In the CMIS specification for pluggable modules, LPL (Local Payload) and
EPL (Extended Payload) are two types of data payloads used for managing
various functions and features of the module.

EPL payloads are used for more complex and extensive management functions
that require a larger amount of data, so writing firmware blocks using EPL
is much more efficient.

Currently, only LPL payload is supported for writing firmware blocks to
the module.

Add support for writing firmware block using EPL payload, both to support
modules that support only EPL write mechanism, and to optimize the flashing
process of modules that support LPL and EPL.

Running the flashing command on the same sample module using EPL vs. LPL
showed an improvement of 84%.

Patchset overview:
Patch #1: preparations
Patch #2: Add EPL support

v5: Resending- no changes.

v4: Resending the right version after wrong v3.
    No changes from v2.

v2:
* Fix the commit meassges to align the cover letter about the
  right meaning of LPL and EPL.
Patch #2:
* Initialize the variable 'bytes_written' before the first
  iteration.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>