All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Lunn <andrew@lunn.ch>
To: Ido Schimmel <idosch@idosch.org>
Cc: netdev@vger.kernel.org, davem@davemloft.net, kuba@kernel.org,
	mkubecek@suse.cz, pali@kernel.org, jacob.e.keller@intel.com,
	vadimp@nvidia.com, mlxsw@nvidia.com,
	Ido Schimmel <idosch@nvidia.com>
Subject: Re: [RFC PATCH net-next 3/4] ethtool: Add ability to flash transceiver modules' firmware
Date: Tue, 30 Nov 2021 01:05:08 +0100	[thread overview]
Message-ID: <YaVqtD0pOKdrC9X0@lunn.ch> (raw)
In-Reply-To: <20211127174530.3600237-4-idosch@idosch.org>

On Sat, Nov 27, 2021 at 07:45:29PM +0200, Ido Schimmel wrote:
> From: Ido Schimmel <idosch@nvidia.com>
> 
> CMIS complaint modules such as QSFP-DD might be running a firmware that
> can be updated in a vendor-neutral way by exchanging messages between
> the host and the module as described in section 7.3.1 of revision 5.0 of
> the CMIS standard.
> 
> Add a pair of new ethtool messages that allow:
> 
> * User space to trigger firmware update of transceiver modules
> 
> * The kernel to notify user space about the progress of the process
> 
> The user interface is designed to be asynchronous in order to avoid RTNL
> being held for too long and to allow several modules to be updated
> simultaneously. The interface is designed with CMIS complaint modules in
> mind, but kept generic enough to accommodate future use cases, if these
> arise.

Hi Ido

What i'm missing is some sort of state machine to keep track of the
SFP. Since RTNL is not held other operations could be performed in
parallel. Does CMIS allow this? Can you intermix firmware writes with
reading the temperature sensor for hwmon? Poll the LOS indicator to
see if the link has been lost?

With cable testing, phylib already has a state machine, and i added a
new state for cable test running. If any other operation happened
which would cause a change out of this state, like ifdown, or a
request to restart autoneg, the cable test is aborted first.

    Andrew

  parent reply	other threads:[~2021-11-30  0:05 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-27 17:45 [RFC PATCH net-next 0/4] ethtool: Add ability to flash and query transceiver modules' firmware Ido Schimmel
2021-11-27 17:45 ` [RFC PATCH net-next 1/4] ethtool: Add ability to query transceiver modules' firmware information Ido Schimmel
2021-11-29 17:43   ` Jakub Kicinski
2021-11-27 17:45 ` [RFC PATCH net-next 2/4] netdevsim: Implement support for ethtool_ops::get_module_fw_info Ido Schimmel
2021-11-27 17:45 ` [RFC PATCH net-next 3/4] ethtool: Add ability to flash transceiver modules' firmware Ido Schimmel
2021-11-29 23:41   ` Andrew Lunn
2021-11-30  0:05   ` Andrew Lunn [this message]
2021-11-30  1:04     ` Jakub Kicinski
2021-11-27 17:45 ` [RFC PATCH net-next 4/4] netdevsim: Implement support for ethtool_ops::start_fw_flash_module Ido Schimmel
2021-11-29 17:37 ` [RFC PATCH net-next 0/4] ethtool: Add ability to flash and query transceiver modules' firmware Jakub Kicinski
2021-11-29 18:05   ` Michal Kubecek
2021-11-29 23:50   ` Andrew Lunn
2021-11-30  1:09     ` Jakub Kicinski
2021-11-30  0:47   ` Keller, Jacob E
2021-11-30  8:36   ` Ido Schimmel
2021-11-30  8:54     ` Michal Kubecek
2021-11-30  9:46       ` Ido Schimmel
2021-11-30 16:59         ` Jakub Kicinski

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=YaVqtD0pOKdrC9X0@lunn.ch \
    --to=andrew@lunn.ch \
    --cc=davem@davemloft.net \
    --cc=idosch@idosch.org \
    --cc=idosch@nvidia.com \
    --cc=jacob.e.keller@intel.com \
    --cc=kuba@kernel.org \
    --cc=mkubecek@suse.cz \
    --cc=mlxsw@nvidia.com \
    --cc=netdev@vger.kernel.org \
    --cc=pali@kernel.org \
    --cc=vadimp@nvidia.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.