mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Sean Anderson <seanga2@gmail.com>
To: Maxime Chevallier <maxime.chevallier@bootlin.com>, davem@davemloft.net
Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-arm-msm@vger.kernel.org, thomas.petazzoni@bootlin.com,
	"Andrew Lunn" <andrew@lunn.ch>,
	"Jakub Kicinski" <kuba@kernel.org>,
	"Eric Dumazet" <edumazet@google.com>,
	"Paolo Abeni" <pabeni@redhat.com>,
	"Russell King" <linux@armlinux.org.uk>,
	linux-arm-kernel@lists.infradead.org,
	"Christophe Leroy" <christophe.leroy@csgroup.eu>,
	"Herve Codina" <herve.codina@bootlin.com>,
	"Florian Fainelli" <f.fainelli@gmail.com>,
	"Heiner Kallweit" <hkallweit1@gmail.com>,
	"Vladimir Oltean" <vladimir.oltean@nxp.com>,
	"Köry Maincent" <kory.maincent@bootlin.com>,
	"Marek Behún" <kabel@kernel.org>,
	"Oleksij Rempel" <o.rempel@pengutronix.de>,
	"Nicolò Veronese" <nicveronese@gmail.com>,
	"Simon Horman" <horms@kernel.org>,
	mwojtas@chromium.org, "Antoine Tenart" <atenart@kernel.org>,
	devicetree@vger.kernel.org, "Conor Dooley" <conor+dt@kernel.org>,
	"Krzysztof Kozlowski" <krzk+dt@kernel.org>,
	"Rob Herring" <robh@kernel.org>,
	"Romain Gantois" <romain.gantois@bootlin.com>
Subject: Re: [PATCH net-next 00/13] Introduce an ethernet port representation
Date: Fri, 7 Feb 2025 21:14:32 -0500	[thread overview]
Message-ID: <8349c217-f0ef-3629-6a70-f35d36636635@gmail.com> (raw)
In-Reply-To: <20250207223634.600218-1-maxime.chevallier@bootlin.com>

Hi Maxime,

On 2/7/25 17:36, Maxime Chevallier wrote:
> Hello everyone,
> 
> This series follows the 2 RFC that were sent a few weeks ago :
> RFC V2: https://lore.kernel.org/netdev/20250122174252.82730-1-maxime.chevallier@bootlin.com/
> RFC V1: https://lore.kernel.org/netdev/20241220201506.2791940-1-maxime.chevallier@bootlin.com/
> 
> The goal of this series is to introduce an internal way of representing
> the "outputs" of ethernet devices, for now only focusing on PHYs.
> 
> This allows laying the groundwork for multi-port devices support (both 1
> PHY 2 ports, or more exotic setups with 2 PHYs in parallel, or MII
> multiplexers).
> 
> Compared to the RFCs, this series tries to properly support SFP,
> especially PHY-driven SFPs through special phy_ports named "serdes"
> ports. They have the particularity of outputing a generic interface,
> that feeds into another component (usually, an SFP cage and therefore an
> SFP module).
> 
> This allows getting a fairly generic PHY-driven SFP support (MAC-driven
> SFP is handled by phylink).
> 
> This series doesn't address PHY-less interfaces (bare MAC devices, MACs
> with embedded PHYs not driven by phylink, or MAC connected to optical
> SFPs) to stay within the 15 patches limit, nor does it include the uAPI
> part that exposes these ports to userspace.
> 
> I've kept the cover short, much more details can be found in the RFC
> covers.
> 
> Thanks everyone,
> 
> Maxime

Forgive me for my ignorance, but why have a new ethtool interface instead of
extending ethtool_link_settings.port? It's a rather ancient interface, but it
seems to be tackling the exact same problem as you are trying to address. Older
NICs used to have several physical connectors (e.g. BNC, MII, twisted-pair) but
only one could be used at once. This seems directly analogous to a PHY that
supports multiple "port"s but not all at once. In fact, the only missing
connector type seems to be PORT_BACKPLANE.

I can think of a few reasons why you wouldn't use PORT_*:

- It describes the NIC and not the PHY, and perhaps there is too much impedance
   mismatch?
- There is too much legacy in userspace (or in the kernel) to use that API in
   this way?
- You need more flexibility?

At the very least, I think some discussion in one of the commits would be
warranted. Perhaps there was some on the RFC that I missed?

--Sean

  parent reply	other threads:[~2025-02-08  2:14 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-07 22:36 Maxime Chevallier
2025-02-07 22:36 ` [PATCH net-next 01/13] net: ethtool: Introduce ETHTOOL_LINK_MEDIUM_* values Maxime Chevallier
2025-02-07 22:36 ` [PATCH net-next 02/13] net: ethtool: Export the link_mode_params definitions Maxime Chevallier
2025-02-07 22:36 ` [PATCH net-next 03/13] net: phy: Introduce PHY ports representation Maxime Chevallier
2025-02-11 13:32   ` Kory Maincent
2025-02-11 13:42     ` Maxime Chevallier
2025-02-11 13:52       ` Kory Maincent
2025-02-11 14:04     ` Andrew Lunn
2025-02-11 14:17       ` Maxime Chevallier
2025-02-07 22:36 ` [PATCH net-next 04/13] net: phy: dp83822: Add support for phy_port representation Maxime Chevallier
2025-02-07 22:36 ` [PATCH net-next 05/13] net: phy: Create a phy_port for PHY-driven SFPs Maxime Chevallier
2025-02-12 15:59   ` Maxime Chevallier
2025-02-07 22:36 ` [PATCH net-next 06/13] net: phy: Intrduce generic SFP handling for PHY drivers Maxime Chevallier
2025-02-08 15:32   ` kernel test robot
2025-02-07 22:36 ` [PATCH net-next 07/13] net: phy: marvell-88x2222: Support SFP through phy_port interface Maxime Chevallier
2025-02-07 22:36 ` [PATCH net-next 08/13] net: phy: marvell: " Maxime Chevallier
2025-02-07 22:36 ` [PATCH net-next 09/13] net: phy: marvell10g: Support SFP through phy_port Maxime Chevallier
2025-02-07 22:36 ` [PATCH net-next 10/13] net: phy: at803x: Support SFP through phy_port interface Maxime Chevallier
2025-02-07 22:36 ` [PATCH net-next 11/13] net: phy: Only rely on phy_port for PHY-driven SFP Maxime Chevallier
2025-02-08 16:04   ` kernel test robot
2025-02-11  9:17     ` Maxime Chevallier
2025-02-07 22:36 ` [PATCH net-next 12/13] net: phy: dp83822: Add SFP support through the phy_port interface Maxime Chevallier
2025-02-08 16:15   ` kernel test robot
2025-02-07 22:36 ` [PATCH net-next 13/13] dt-bindings: net: Introduce the phy-port description Maxime Chevallier
2025-02-08  2:14 ` Sean Anderson [this message]
2025-02-10  8:55   ` [PATCH net-next 00/13] Introduce an ethernet port representation Maxime Chevallier
2025-02-12 15:39     ` Sean Anderson
2025-02-12 15:44       ` Maxime Chevallier
2025-02-12 19:48 ` Rob Herring
2025-02-13  9:57   ` Maxime Chevallier

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=8349c217-f0ef-3629-6a70-f35d36636635@gmail.com \
    --to=seanga2@gmail.com \
    --cc=andrew@lunn.ch \
    --cc=atenart@kernel.org \
    --cc=christophe.leroy@csgroup.eu \
    --cc=conor+dt@kernel.org \
    --cc=davem@davemloft.net \
    --cc=devicetree@vger.kernel.org \
    --cc=edumazet@google.com \
    --cc=f.fainelli@gmail.com \
    --cc=herve.codina@bootlin.com \
    --cc=hkallweit1@gmail.com \
    --cc=horms@kernel.org \
    --cc=kabel@kernel.org \
    --cc=kory.maincent@bootlin.com \
    --cc=krzk+dt@kernel.org \
    --cc=kuba@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=maxime.chevallier@bootlin.com \
    --cc=mwojtas@chromium.org \
    --cc=netdev@vger.kernel.org \
    --cc=nicveronese@gmail.com \
    --cc=o.rempel@pengutronix.de \
    --cc=pabeni@redhat.com \
    --cc=robh@kernel.org \
    --cc=romain.gantois@bootlin.com \
    --cc=thomas.petazzoni@bootlin.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®