From: Bagas Sanjaya <bagasdotme@gmail.com>
To: Danielle Ratson <danieller@nvidia.com>, netdev@vger.kernel.org
Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org,
pabeni@redhat.com, corbet@lwn.net, linux@armlinux.org.uk,
sdf@google.com, kory.maincent@bootlin.com,
maxime.chevallier@bootlin.com, vladimir.oltean@nxp.com,
przemyslaw.kitszel@intel.com, ahmed.zaki@intel.com,
richardcochran@gmail.com, shayagr@amazon.com,
paul.greenwalt@intel.com, jiri@resnulli.us,
linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
mlxsw@nvidia.com, petrm@nvidia.com, idosch@nvidia.com
Subject: Re: [PATCH net-next v3 03/10] ethtool: Add an interface for flashing transceiver modules' firmware
Date: Thu, 18 Apr 2024 09:38:26 +0700 [thread overview]
Message-ID: <ZiCHotDYOfkPrDUt@archie.me> (raw)
In-Reply-To: <20240417085347.2836385-4-danieller@nvidia.com>
[-- Attachment #1: Type: text/plain, Size: 3173 bytes --]
On Wed, Apr 17, 2024 at 11:53:40AM +0300, Danielle Ratson wrote:
> +MODULE_FW_FLASH_ACT
> +===================
> +
> +Flashes transceiver module firmware.
> +
> +Request contents:
> +
> + ======================================= ====== ===========================
> + ``ETHTOOL_A_MODULE_FW_FLASH_HEADER`` nested request header
> + ``ETHTOOL_A_MODULE_FW_FLASH_FILE_NAME`` string firmware image file name
> + ``ETHTOOL_A_MODULE_FW_FLASH_PASSWORD`` u32 transceiver module password
> + ======================================= ====== ===========================
> +
> +The firmware update process is composed from three logical steps:
"... consists of ..."
> +
> +1. Downloading a firmware image to the transceiver module and validating it.
> +2. Running the firmware image.
> +3. Committing the firmware image so that it is run upon reset.
> +
> +When flash command is given, those three steps are taken in that order.
> +
> +The ``ETHTOOL_A_MODULE_FW_FLASH_FILE_NAME`` attribute encodes the firmware
> +image file name. The firmware image is downloaded to the transceiver module,
> +validated, run and committed.
> +
> +The optional ``ETHTOOL_A_MODULE_FW_FLASH_PASSWORD`` attribute encodes a password
> +that might be required as part of the transceiver module firmware update
> +process.
> +
> +The firmware update process can take several minutes to complete. Therefore,
> +during the update process notifications are emitted from the kernel to user
> +space updating it about the status and progress.
> +
> +Notification contents:
> +
> + +---------------------------------------------------+--------+----------------+
> + | ``ETHTOOL_A_MODULE_FW_FLASH_HEADER`` | nested | reply header |
> + +---------------------------------------------------+--------+----------------+
> + | ``ETHTOOL_A_MODULE_FW_FLASH_STATUS`` | u32 | status |
> + +---------------------------------------------------+--------+----------------+
> + | ``ETHTOOL_A_MODULE_FW_FLASH_STATUS_MSG`` | string | status message |
> + +---------------------------------------------------+--------+----------------+
> + | ``ETHTOOL_A_MODULE_FW_FLASH_DONE`` | u64 | progress |
> + +---------------------------------------------------+--------+----------------+
> + | ``ETHTOOL_A_MODULE_FW_FLASH_TOTAL`` | u64 | total |
> + +---------------------------------------------------+--------+----------------+
> +
> +The ``ETHTOOL_A_MODULE_FW_FLASH_STATUS`` attribute encodes the current status
> +of the firmware update process. Possible values are:
> +
> +.. kernel-doc:: include/uapi/linux/ethtool.h
> + :identifiers: ethtool_module_fw_flash_status
> +
> +The ``ETHTOOL_A_MODULE_FW_FLASH_STATUS_MSG`` attribute encodes a status message
> +string.
> +
> +The ``ETHTOOL_A_MODULE_FW_FLASH_DONE`` and ``ETHTOOL_A_MODULE_FW_FLASH_TOTAL``
> +attributes encode the completed and total amount of work, respectively.
> +
The rest of doc LGTM.
Thanks.
--
An old man doll... just what I always wanted! - Clara
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
next prev parent reply other threads:[~2024-04-18 2:38 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-17 8:53 [PATCH net-next v3 00/10] Add ability to flash modules' firmware Danielle Ratson
2024-04-17 8:53 ` [PATCH net-next v3 01/10] ethtool: Add ethtool operation to write to a transceiver module EEPROM Danielle Ratson
2024-04-17 8:53 ` [PATCH net-next v3 02/10] mlxsw: Implement " Danielle Ratson
2024-04-17 8:53 ` [PATCH net-next v3 03/10] ethtool: Add an interface for flashing transceiver modules' firmware Danielle Ratson
2024-04-18 2:38 ` Bagas Sanjaya [this message]
2024-04-18 7:41 ` Danielle Ratson
2024-04-19 1:59 ` Bagas Sanjaya
2024-04-17 8:53 ` [PATCH net-next v3 04/10] ethtool: Add flashing transceiver modules' firmware notifications ability Danielle Ratson
2024-04-17 8:53 ` [PATCH net-next v3 05/10] include: netdevice: Add module firmware flashing in progress flag to net_device Danielle Ratson
2024-04-17 8:53 ` [PATCH net-next v3 06/10] net: sfp: Add more extended compliance codes Danielle Ratson
2024-04-17 8:53 ` [PATCH net-next v3 07/10] ethtool: cmis_cdb: Add a layer for supporting CDB commands Danielle Ratson
2024-04-18 9:45 ` Simon Horman
2024-04-18 10:31 ` Danielle Ratson
2024-04-17 8:53 ` [PATCH net-next v3 08/10] ethtool: cmis_fw_update: add a layer for supporting firmware update using CDB Danielle Ratson
2024-04-17 8:53 ` [PATCH net-next v3 09/10] ethtool: Add ability to flash transceiver modules' firmware Danielle Ratson
2024-04-17 8:53 ` [PATCH net-next v3 10/10] ethtool: Veto some operations during firmware flashing process Danielle Ratson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZiCHotDYOfkPrDUt@archie.me \
--to=bagasdotme@gmail.com \
--cc=ahmed.zaki@intel.com \
--cc=corbet@lwn.net \
--cc=danieller@nvidia.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=idosch@nvidia.com \
--cc=jiri@resnulli.us \
--cc=kory.maincent@bootlin.com \
--cc=kuba@kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=maxime.chevallier@bootlin.com \
--cc=mlxsw@nvidia.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=paul.greenwalt@intel.com \
--cc=petrm@nvidia.com \
--cc=przemyslaw.kitszel@intel.com \
--cc=richardcochran@gmail.com \
--cc=sdf@google.com \
--cc=shayagr@amazon.com \
--cc=vladimir.oltean@nxp.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.