[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240208-feature_poe-v3-10-531d2674469e@bootlin.com>
Date: Thu, 08 Feb 2024 14:08:47 +0100
From: Kory Maincent <kory.maincent@...tlin.com>
To: "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>, Jonathan Corbet <corbet@....net>,
Luis Chamberlain <mcgrof@...nel.org>, Russ Weight <russ.weight@...ux.dev>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
"Rafael J. Wysocki" <rafael@...nel.org>, Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>,
Oleksij Rempel <o.rempel@...gutronix.de>, Mark Brown <broonie@...nel.org>,
Frank Rowand <frowand.list@...il.com>, Andrew Lunn <andrew@...n.ch>,
Heiner Kallweit <hkallweit1@...il.com>,
Russell King <linux@...linux.org.uk>
Cc: Thomas Petazzoni <thomas.petazzoni@...tlin.com>, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-doc@...r.kernel.org,
devicetree@...r.kernel.org, Dent Project <dentproject@...uxfoundation.org>,
Kory Maincent <kory.maincent@...tlin.com>
Subject: [PATCH net-next v3 10/17] dt-bindings: net: pse-pd: Add another
way of describing several PSE PIs
Before hand we set "#pse-cell" to 1 to define a PSE controller with
several PIs (Power Interface). The drawback of this was that we could not
have any information on the PI except its number.
Add support for pse_pis and pse_pi node to be able to have more information
on the PI like the number of pairset used and the pairset pinout.
Sponsored-by: Dent Project <dentproject@...uxfoundation.org>
Signed-off-by: Kory Maincent <kory.maincent@...tlin.com>
---
Changes in v3:
- New patch
---
.../bindings/net/pse-pd/pse-controller.yaml | 101 ++++++++++++++++++++-
1 file changed, 98 insertions(+), 3 deletions(-)
diff --git a/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml b/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml
index 2d382faca0e6..dd5fb53e527a 100644
--- a/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml
+++ b/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml
@@ -13,6 +13,7 @@ description: Binding for the Power Sourcing Equipment (PSE) as defined in the
maintainers:
- Oleksij Rempel <o.rempel@...gutronix.de>
+ - Kory Maincent <kory.maincent@...tlin.com>
properties:
$nodename:
@@ -22,11 +23,105 @@ properties:
description:
Used to uniquely identify a PSE instance within an IC. Will be
0 on PSE nodes with only a single output and at least 1 on nodes
- controlling several outputs.
+ controlling several outputs which are not described in the pse_pis
+ subnode. This property is deprecated, please use pse_pis instead.
enum: [0, 1]
-required:
- - "#pse-cells"
+ pse_pis:
+ $ref: "#/$defs/pse_pis"
+
+$defs:
+ pse_pis:
+ type: object
+ description:
+ Kind of a matrix to identify the concordance between a PSE Power
+ Interface and one or two (PoE4) physical ports.
+
+ properties:
+ "#address-cells":
+ const: 1
+
+ "#size-cells":
+ const: 0
+
+ patternProperties:
+ "^pse_pi@[0-9]+$":
+ $ref: "#/$defs/pse_pi"
+
+ required:
+ - "#address-cells"
+ - "#size-cells"
+
+ pse_pi:
+ description:
+ PSE PI device for power delivery via pairsets, compliant with IEEE
+ 802.3-2022, Section 145.2.4. Each pairset comprises a positive and a
+ negative VPSE pair, adhering to the pinout configurations detailed in
+ the standard.
+ type: object
+ properties:
+ reg:
+ maxItems: 1
+
+ "#pse-cells":
+ const: 0
+
+ pairset-names:
+ 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 should
+ correspond to a phandle in the 'pairset' property pointing to the
+ power supply for that pairset.
+ $ref: /schemas/types.yaml#/definitions/string-array
+ minItems: 1
+ maxItems: 2
+ items:
+ - enum:
+ - "alternative-a"
+ - "alternative-b"
+
+ pairsets:
+ 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–3)
+ | Conductor | Alternative A (MDI-X) | Alternative A (MDI) | Alternative B(X) | Alternative B(S) |
+ |-----------|-----------------------|---------------------|------------------|------------------|
+ | 1 | Negative VPSE | Positive VPSE | — | — |
+ | 2 | Negative VPSE | Positive VPSE | — | — |
+ | 3 | Positive VPSE | Negative VPSE | — | — |
+ | 4 | — | — | Negative VPSE | Positive VPSE |
+ | 5 | — | — | Negative VPSE | Positive VPSE |
+ | 6 | Positive VPSE | Negative VPSE | — | — |
+ | 7 | — | — | Positive VPSE | Negative VPSE |
+ | 8 | — | — | Positive VPSE | Negative VPSE |
+ $ref: /schemas/types.yaml#/definitions/phandle-array
+ minItems: 1
+ maxItems: 2
+
+ required:
+ - reg
+ - "#pse-cells"
+ - pairset-names
+ - pairsets
+
+allOf:
+ - if:
+ required:
+ - "#pse-cells"
+ then:
+ not:
+ required:
+ - pse-pis
+
+ - if:
+ required:
+ - pse-pis
+ then:
+ not:
+ required:
+ - "#pse-cells"
additionalProperties: true
--
2.25.1
Powered by blists - more mailing lists