mbox series

[net-next,v5,0/2] ethtool: Add support for writing firmware

Message ID 20241009105347.2863905-1-danieller@nvidia.com (mailing list archive)
Headers show
Series ethtool: Add support for writing firmware | expand

Message

Danielle Ratson Oct. 9, 2024, 10:53 a.m. UTC
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.

Danielle Ratson (2):
  net: ethtool: Add new parameters and a function to support EPL
  net: ethtool: Add support for writing firmware blocks using EPL
    payload

 net/ethtool/cmis.h           |  16 ++++--
 net/ethtool/cmis_cdb.c       |  94 +++++++++++++++++++++++++-----
 net/ethtool/cmis_fw_update.c | 108 +++++++++++++++++++++++++++++------
 3 files changed, 184 insertions(+), 34 deletions(-)

Comments

patchwork-bot+netdevbpf@kernel.org Oct. 14, 2024, 2:40 a.m. UTC | #1
Hello:

This series was applied to netdev/net-next.git (main)
by David S. Miller <davem@davemloft.net>:

On Wed, 9 Oct 2024 13:53:45 +0300 you wrote:
> 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.
> 
> [...]

Here is the summary with links:
  - [net-next,v5,1/2] net: ethtool: Add new parameters and a function to support EPL
    https://git.kernel.org/netdev/net-next/c/edc344568922
  - [net-next,v5,2/2] net: ethtool: Add support for writing firmware blocks using EPL payload
    https://git.kernel.org/netdev/net-next/c/9a3b0d078bd8

You are awesome, thank you!