devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Oleksij Rempel <o.rempel@pengutronix.de>
To: "Köry Maincent" <kory.maincent@bootlin.com>
Cc: Andrew Lunn <andrew@lunn.ch>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	Jonathan Corbet <corbet@lwn.net>,
	Luis Chamberlain <mcgrof@kernel.org>,
	Russ Weight <russ.weight@linux.dev>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-doc@vger.kernel.org, devicetree@vger.kernel.org
Subject: Re: [PATCH net-next 2/9] ethtool: Expand Ethernet Power Equipment with PoE alongside PoDL
Date: Mon, 20 Nov 2023 12:10:08 +0100	[thread overview]
Message-ID: <20231120111008.GC590719@pengutronix.de> (raw)
In-Reply-To: <20231120110944.66938859@kmaincent-XPS-13-7390>

Köry,

On Mon, Nov 20, 2023 at 11:09:44AM +0100, Köry Maincent wrote:
> +Oleksij
> 
> Sorry forgot to CC you the series.
> Maybe you should add yourself to the MAINTAINERS of pse-pd drivers subsystem?

ack, i'll take a look at this.

> On Sat, 18 Nov 2023 18:38:43 +0100
> Andrew Lunn <andrew@lunn.ch> wrote:
> 
> > On Thu, Nov 16, 2023 at 03:01:34PM +0100, Kory Maincent wrote:
> > > In the current PSE interface for Ethernet Power Equipment, support is
> > > limited to PoDL. This patch extends the interface to accommodate the
> > > objects specified in IEEE 802.3-2022 145.2 for Power sourcing
> > > Equipment (PSE).  
> > 
> > Sorry for taking a while getting to these patches. Plumbers and other
> > patches have been keeping me busy.
> 
> Don't worry you are doing a great job as a net maintainer and I won't raise any
> remarks on delay considering how you are doing your job.
> Thanks again for your review!!
> 
> > I'm trying to get my head around naming... Is there some sort of
> > hierarchy? Is PSE the generic concept for putting power down the
> > cable? Then you have the sub-type PoDL, and the sub-type PoE?
> 
> In fact as we discussed with Oleksij I decided to keep the naming as close as
> possible to the IEEE 802.3 standard.
> On the standard the PODL is naming like this aPoDLPSE* (ex: aPoDLPSEAdminState)
> and the PSE is naming like this aPSE* (ex: aPSEAdminState) without any PoE
> prefix. Maybe it is due to PoE being supported before PoDL and they didn't
> expect the PoDL part.

"PoE" (initially Power via MDI?) and PoDL have kind of different technologies.
They use different negotiation and need different physical implementation.
IEEE 802.3 standard is trying to be backwards and kind of forwards compatible
for PoE. But not compatible between PoE and PoDL.

In general, it is not just about enabling or disabling power.
"admin_state" == enable is other way to say - "do the right thing".
And the "right thing" may include some kind of communication between PSE
(Power Source Equipment) and PD (Powered Device).

Since, some variants of  Single Pair Ethernet (SPE) are using same
auto negotiation protocol as not SPE variants. I can imagine, that some
day we will see a hybrid (SPE+nonSPE) devices. Wich will need to
support both: PoE and PoDL. I assume, in that case, we wont to be able
to control both variants separately.

This is why I prefer to have mapping of IEEE 802.3 specification to the
user space as close as possible.

> > >  struct pse_control_config {
> > >  	enum ethtool_podl_pse_admin_state podl_admin_control;
> > > +	enum ethtool_pse_admin_state admin_control;  
> > 
> > When i look at this, it seems to me admin_control should be generic
> > across all schemes which put power down the cable, and
> > podl_admin_control is specific to how PoDL puts power down the cable.
> >
> > Since you appear to be adding support for a second way to put power
> > down the cable, i would expect something like poe_admin_control being
> > added here. But maybe that is in a later patch?
> 
> No as said above admin_control is for PoE and podl_admin_control is for PoDL.
> Maybe you prefer to use poe_admin_control, and add poe prefix in the poe
> variables. It will differ a bit from the IEEE standard naming but I agreed that
> it would be more understandable in the development part.

Official name for "PoE" is "Power via Media Dependent Interface". PoE is
not used in the IEEE 802.3-2018. Using names not used in the specification,
make development even harder :)
Especially since there are even more marketing names (names not used in the
specification) for different PoE variants:
- 802.3af (802.3at Type 1), PoE
- 802.3at Type 2, PoE+
- 802.3bt Type 3, 4PPoE or PoE++
- 802.3bt Type 4, 4PPoE or PoE++

Regards,
Oleksij
-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

  reply	other threads:[~2023-11-20 11:10 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-16 14:01 [PATCH net-next 0/9] net: Add support for Power over Ethernet (PoE) Kory Maincent
2023-11-16 14:01 ` [PATCH net-next 1/9] net: pse-pd: Rectify and adapt the naming of admin_cotrol member of struct pse_control_config Kory Maincent
2023-11-16 14:01 ` [PATCH net-next 2/9] ethtool: Expand Ethernet Power Equipment with PoE alongside PoDL Kory Maincent
2023-11-18 17:38   ` Andrew Lunn
2023-11-20 10:09     ` Köry Maincent
2023-11-20 11:10       ` Oleksij Rempel [this message]
2023-11-20 18:00         ` Andrew Lunn
2023-11-20 20:42           ` Oleksij Rempel
2023-11-20 22:14             ` Andrew Lunn
2023-11-21  5:12               ` Oleksij Rempel
2023-11-21 10:02           ` Köry Maincent
2023-11-21 14:19             ` Andrew Lunn
2023-11-21 14:56               ` Köry Maincent
2023-11-16 14:01 ` [PATCH net-next 3/9] net: pse-pd: Introduce PSE types enumeration Kory Maincent
2023-11-24 16:35   ` Simon Horman
2023-11-16 14:01 ` [PATCH net-next 4/9] net: ethtool: pse-pd: Expand pse commands with the PSE PoE interface Kory Maincent
2023-11-16 14:01 ` [PATCH net-next 5/9] netlink: specs: Modify pse attribute prefix Kory Maincent
2023-11-18 23:57   ` Jakub Kicinski
2023-11-20 10:19     ` Köry Maincent
2023-11-20 16:53       ` Jakub Kicinski
2023-11-16 14:01 ` [PATCH net-next 6/9] netlink: specs: Expand the pse netlink command with PoE interface Kory Maincent
2023-11-19  0:01   ` Jakub Kicinski
2023-11-20 10:13     ` Köry Maincent
2023-11-16 14:01 ` [PATCH net-next 7/9] firmware_loader: Expand Firmware upload error codes Kory Maincent
2023-11-16 16:30   ` Luis Chamberlain
2023-11-16 16:37   ` Greg Kroah-Hartman
2023-11-16 17:44   ` Conor Dooley
2023-11-16 21:56     ` Andrew Lunn
2023-11-17  8:56       ` Köry Maincent
2023-11-16 14:01 ` [PATCH net-next 8/9] dt-bindings: net: pse-pd: Add bindings for PD692x0 PSE controller Kory Maincent
2023-11-16 14:31   ` Krzysztof Kozlowski
2023-11-18 17:47     ` Andrew Lunn
2023-11-16 14:01 ` [PATCH net-next 9/9] net: pse-pd: Add PD692x0 PSE controller driver Kory Maincent
2023-11-16 14:29   ` Krzysztof Kozlowski
2023-11-16 14:59     ` Köry Maincent
2023-11-16 22:38   ` Andrew Lunn
2023-11-17 11:15     ` Köry Maincent
2023-11-16 22:41   ` Andrew Lunn
2023-11-17 11:22     ` Köry Maincent
2023-11-17 14:50       ` Andrew Lunn
2023-11-16 22:54   ` Andrew Lunn
2023-11-22 16:11     ` Köry Maincent
2023-11-22 16:54       ` Andrew Lunn
2023-11-22 17:16         ` Köry Maincent
2023-11-22 17:49           ` Andrew Lunn
2023-11-18 18:54   ` Andrew Lunn
2023-11-22 16:48     ` Köry Maincent
2023-11-22 17:11       ` Andrew Lunn
2023-11-27 17:28         ` Köry Maincent
2023-11-24 16:30   ` Simon Horman
2023-11-18 23:59 ` [PATCH net-next 0/9] net: Add support for Power over Ethernet (PoE) Jakub Kicinski
2023-11-20  9:22   ` Köry Maincent

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=20231120111008.GC590719@pengutronix.de \
    --to=o.rempel@pengutronix.de \
    --cc=andrew@lunn.ch \
    --cc=conor+dt@kernel.org \
    --cc=corbet@lwn.net \
    --cc=davem@davemloft.net \
    --cc=devicetree@vger.kernel.org \
    --cc=edumazet@google.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=kory.maincent@bootlin.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=kuba@kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mcgrof@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=rafael@kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=russ.weight@linux.dev \
    --cc=thomas.petazzoni@bootlin.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;
as well as URLs for NNTP newsgroup(s).