devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: Kory Maincent <kory.maincent@bootlin.com>
Cc: "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>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Conor Dooley <conor+dt@kernel.org>,
	Oleksij Rempel <o.rempel@pengutronix.de>,
	Mark Brown <broonie@kernel.org>,
	Frank Rowand <frowand.list@gmail.com>,
	Andrew Lunn <andrew@lunn.ch>,
	Heiner Kallweit <hkallweit1@gmail.com>,
	Russell King <linux@armlinux.org.uk>,
	Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-doc@vger.kernel.org, devicetree@vger.kernel.org,
	Dent Project <dentproject@linuxfoundation.org>
Subject: Re: [PATCH net-next v6 11/17] dt-bindings: net: pse-pd: Add another way of describing several PSE PIs
Date: Wed, 3 Apr 2024 09:31:42 -0500	[thread overview]
Message-ID: <20240403143142.GA3508225-robh@kernel.org> (raw)
In-Reply-To: <20240403111548.30e780b5@kmaincent-XPS-13-7390>

On Wed, Apr 03, 2024 at 11:15:48AM +0200, Kory Maincent wrote:
> On Tue, 2 Apr 2024 08:26:37 -0500
> Rob Herring <robh@kernel.org> wrote:
> 
> > > +          pairset-names:
> > > +            $ref: /schemas/types.yaml#/definitions/string-array
> > > +            description:
> > > +              Names of the pairsets as per IEEE 802.3-2022, Section
> > > 145.2.4.
> > > +              Valid values are "alternative-a" and "alternative-b". Each
> > > name  
> > 
> > Don't state constraints in prose which are defined as schema 
> > constraints.
> 
> Ok, I will remove the line.
> 
> > > +          pairsets:
> > > +            $ref: /schemas/types.yaml#/definitions/phandle-array
> > > +            description:
> > > +              List of phandles, each pointing to the power supply for the
> > > +              corresponding pairset named in 'pairset-names'. This property
> > > +              aligns with IEEE 802.3-2022, Section 33.2.3 and 145.2.4.
> > > +              PSE Pinout Alternatives (as per IEEE 802.3-2022 Table
> > > 145\u20133)
> > > +
> > > |-----------|---------------|---------------|---------------|---------------|
> > > +              | Conductor | Alternative A | Alternative A | Alternative B
> > > | Alternative B |
> > > +              |           |    (MDI-X)    |     (MDI)     |      (X)
> > > |      (S)      |
> > > +
> > > |-----------|---------------|---------------|---------------|---------------|
> > > +              | 1         | Negative VPSE | Positive VPSE | \u2014
> > >     | \u2014             |
> > > +              | 2         | Negative VPSE | Positive VPSE | \u2014
> > >     | \u2014             |
> > > +              | 3         | Positive VPSE | Negative VPSE | \u2014
> > >     | \u2014             |
> > > +              | 4         | \u2014             | \u2014             |
> > > Negative VPSE | Positive VPSE |
> > > +              | 5         | \u2014             | \u2014             |
> > > Negative VPSE | Positive VPSE |
> > > +              | 6         | Positive VPSE | Negative VPSE | \u2014
> > >     | \u2014             |
> > > +              | 7         | \u2014             | \u2014             |
> > > Positive VPSE | Negative VPSE |
> > > +              | 8         | \u2014             | \u2014             |
> > > Positive VPSE | Negative VPSE |
> > > +            minItems: 1
> > > +            maxItems: 2  
> > 
> > "pairsets" does not follow the normal design pattern of foos, foo-names, 
> > and #foo-cells. You could add #foo-cells I suppose, but what would cells 
> > convey? I don't think it's a good fit for what you need.
> > 
> > The other oddity is the number of entries and the names are fixed. That 
> > is usually defined per consumer. 
> 
> Theoretically if the RJ45 port binding was supported it would make more sense,
> but in reality it's not feasible as the PSE controller need this information
> in its init process.
> The PSE controller reset all its port to apply a configuration so we can't do
> it when the consumer (RJ45) probe. It would reset the other ports if one
> consumer is probed later in the process.

There is no reason other than convenience that all information some 
driver needs has to be in one node or one hierarchy of nodes. You can 
fetch anything from anywhere in the DT. It does feel like some of this 
belongs in a connector node. We often haven't described connectors in DT 
and stick connector properties in the controller node associated with 
the connector. Then as things get more complicated, it becomes a mess. 


> > As each entry is just a power rail, why can't the regulator binding be 
> > used here?
> 
> Olekisj already answered about it.
> PSE PI is like a regulator but with few different features and more information
> like the pinout and the polarity, so we could not really fully rely on the
> regulator binding style.
> 
> > > +
> > > +          polarity-supported:
> > > +            $ref: /schemas/types.yaml#/definitions/string-array
> > > +            description:
> > > +              Polarity configuration supported by the PSE PI pairsets.
> > > +            minItems: 1
> > > +            maxItems: 4
> > > +            items:
> > > +              enum:
> > > +                - MDI-X
> > > +                - MDI
> > > +                - X
> > > +                - S
> > > +
> > > +          vpwr-supply:
> > > +            description: Regulator power supply for the PSE PI.  
> > 
> > I don't see this being used anywhere.
> 
> Right, I forgot to add it to the PD692x0 and TPS23881 binding example!

But is this really common/generic? I would think input power rails would 
be chip specific.

Rob

  reply	other threads:[~2024-04-03 14:31 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-26 14:04 [PATCH net-next v6 00/17] net: Add support for Power over Ethernet (PoE) Kory Maincent
2024-03-26 14:04 ` [PATCH net-next v6 01/17] MAINTAINERS: net: Add Oleksij to pse-pd maintainers Kory Maincent
2024-03-28 11:55   ` Andrew Lunn
2024-03-26 14:04 ` [PATCH net-next v6 02/17] of: property: Add fw_devlink support for pse parent Kory Maincent
2024-03-26 14:04 ` [PATCH net-next v6 03/17] net: pse-pd: Rectify and adapt the naming of admin_cotrol member of struct pse_control_config Kory Maincent
2024-03-26 14:04 ` [PATCH net-next v6 04/17] ethtool: Expand Ethernet Power Equipment with c33 (PoE) alongside PoDL Kory Maincent
2024-03-26 14:04 ` [PATCH net-next v6 05/17] net: pse-pd: Introduce PSE types enumeration Kory Maincent
2024-03-26 14:04 ` [PATCH net-next v6 06/17] net: ethtool: pse-pd: Expand pse commands with the PSE PoE interface Kory Maincent
2024-03-26 14:04 ` [PATCH net-next v6 07/17] netlink: specs: Modify pse attribute prefix Kory Maincent
2024-03-26 14:04 ` [PATCH net-next v6 08/17] netlink: specs: Expand the pse netlink command with PoE interface Kory Maincent
2024-03-26 14:04 ` [PATCH net-next v6 09/17] MAINTAINERS: Add myself to pse networking maintainer Kory Maincent
2024-03-26 14:04 ` [PATCH net-next v6 10/17] net: pse-pd: Add support for PSE PIs Kory Maincent
2024-03-28 10:33   ` Simon Horman
2024-03-28 10:40     ` Simon Horman
2024-03-28 14:12       ` Kory Maincent
2024-03-28 12:24   ` Andrew Lunn
2024-03-28 13:43     ` Kory Maincent
2024-03-26 14:04 ` [PATCH net-next v6 11/17] dt-bindings: net: pse-pd: Add another way of describing several " Kory Maincent
2024-03-26 15:39   ` Rob Herring
2024-03-28 12:32     ` Andrew Lunn
2024-03-28 14:20       ` Kory Maincent
2024-03-28 12:31   ` Andrew Lunn
2024-03-28 14:23     ` Kory Maincent
2024-04-02 13:26   ` Rob Herring
2024-04-02 15:47     ` Oleksij Rempel
2024-04-03 14:44       ` Rob Herring
2024-04-03 15:27         ` Oleksij Rempel
2024-04-03  9:15     ` Kory Maincent
2024-04-03 14:31       ` Rob Herring [this message]
2024-04-04  8:38         ` Kory Maincent
2024-04-06 19:37           ` Kory Maincent
2024-04-04  9:25         ` Kory Maincent
2024-04-05  7:43           ` Oleksij Rempel
2024-03-26 14:04 ` [PATCH net-next v6 12/17] net: pse-pd: Add support for setup_pi_matrix callback Kory Maincent
2024-03-28 15:14   ` Andrew Lunn
2024-03-26 14:04 ` [PATCH net-next v6 13/17] net: pse-pd: Use regulator framework within PSE framework Kory Maincent
2024-03-28 15:22   ` Andrew Lunn
2024-03-29 15:04   ` Kory Maincent
2024-03-26 14:04 ` [PATCH net-next v6 14/17] dt-bindings: net: pse-pd: Add bindings for PD692x0 PSE controller Kory Maincent
2024-03-28 15:27   ` Andrew Lunn
2024-04-02 13:28   ` Rob Herring
2024-04-09 13:43     ` Kory Maincent
2024-03-26 14:04 ` [PATCH net-next v6 15/17] net: pse-pd: Add PD692x0 PSE controller driver Kory Maincent
2024-03-28 15:57   ` Andrew Lunn
2024-03-26 14:04 ` [PATCH net-next v6 16/17] dt-bindings: net: pse-pd: Add bindings for TPS23881 PSE controller Kory Maincent
2024-03-28 15:58   ` Andrew Lunn
2024-03-26 14:04 ` [PATCH net-next v6 17/17] net: pse-pd: Add TI TPS23881 PSE controller driver Kory Maincent
2024-03-28 16:17   ` Andrew Lunn
2024-03-29 14:55     ` Kory Maincent
2024-03-28 16:24   ` Andrew Lunn
2024-03-29 14:56     ` Kory Maincent
2024-03-30 14:52       ` Andrew Lunn
2024-03-30 14:52         ` Andrew Lunn
2024-04-03  9:45         ` Kory 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=20240403143142.GA3508225-robh@kernel.org \
    --to=robh@kernel.org \
    --cc=andrew@lunn.ch \
    --cc=broonie@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=corbet@lwn.net \
    --cc=davem@davemloft.net \
    --cc=dentproject@linuxfoundation.org \
    --cc=devicetree@vger.kernel.org \
    --cc=edumazet@google.com \
    --cc=frowand.list@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=hkallweit1@gmail.com \
    --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=linux@armlinux.org.uk \
    --cc=mcgrof@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=o.rempel@pengutronix.de \
    --cc=pabeni@redhat.com \
    --cc=rafael@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).