xref: /linux/Documentation/devicetree/bindings/net/pse-pd/pse-controller.yaml (revision 001821b0e79716c4e17c71d8e053a23599a7a508)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/net/pse-pd/pse-controller.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Power Sourcing Equipment (PSE).
8
9description: Binding for the Power Sourcing Equipment (PSE) as defined in the
10  IEEE 802.3 specification. It is designed for hardware which is delivering
11  power over twisted pair/ethernet cable. The ethernet-pse nodes should be
12  used to describe PSE controller and referenced by the ethernet-phy node.
13
14maintainers:
15  - Oleksij Rempel <o.rempel@pengutronix.de>
16  - Kory Maincent <kory.maincent@bootlin.com>
17
18properties:
19  $nodename:
20    pattern: "^ethernet-pse(@.*|-([0-9]|[1-9][0-9]+))?$"
21
22  "#pse-cells":
23    description:
24      Used to uniquely identify a PSE instance within an IC. Will be
25      0 on PSE nodes with only a single output and at least 1 on nodes
26      controlling several outputs which are not described in the pse-pis
27      subnode. This property is deprecated, please use pse-pis instead.
28    enum: [0, 1]
29
30  pse-pis:
31    type: object
32    description:
33      Overview of the PSE PIs provided by the controller.
34
35    properties:
36      "#address-cells":
37        const: 1
38
39      "#size-cells":
40        const: 0
41
42    required:
43      - "#address-cells"
44      - "#size-cells"
45
46    patternProperties:
47      "^pse-pi@[0-9a-f]+$":
48        type: object
49        description:
50          PSE PI for power delivery via pairsets, compliant with IEEE
51          802.3-2022, Section 145.2.4. Each pairset comprises a positive and
52          a negative VPSE pair, adhering to the pinout configurations
53          detailed in the standard.
54          See Documentation/networking/pse-pd/pse-pi.rst for details.
55
56        properties:
57          reg:
58            description:
59              Address describing the PSE PI index.
60            maxItems: 1
61
62          "#pse-cells":
63            const: 0
64
65          pairset-names:
66            $ref: /schemas/types.yaml#/definitions/string-array
67            description:
68              Names of the pairsets as per IEEE 802.3-2022, Section 145.2.4.
69              Each name should correspond to a phandle in the 'pairset'
70              property pointing to the power supply for that pairset.
71            minItems: 1
72            maxItems: 2
73            items:
74              enum:
75                - alternative-a
76                - alternative-b
77
78          pairsets:
79            $ref: /schemas/types.yaml#/definitions/phandle-array
80            description:
81              List of phandles, each pointing to the power supply for the
82              corresponding pairset named in 'pairset-names'. This property
83              aligns with IEEE 802.3-2022, Section 33.2.3 and 145.2.4.
84              PSE Pinout Alternatives (as per IEEE 802.3-2022 Table 145\u20133)
85              |-----------|---------------|---------------|---------------|---------------|
86              | Conductor | Alternative A | Alternative A | Alternative B | Alternative B |
87              |           |    (MDI-X)    |     (MDI)     |      (X)      |      (S)      |
88              |-----------|---------------|---------------|---------------|---------------|
89              | 1         | Negative VPSE | Positive VPSE | -             | -             |
90              | 2         | Negative VPSE | Positive VPSE | -             | -             |
91              | 3         | Positive VPSE | Negative VPSE | -             | -             |
92              | 4         | -             | -             | Negative VPSE | Positive VPSE |
93              | 5         | -             | -             | Negative VPSE | Positive VPSE |
94              | 6         | Positive VPSE | Negative VPSE | -             | -             |
95              | 7         | -             | -             | Positive VPSE | Negative VPSE |
96              | 8         | -             | -             | Positive VPSE | Negative VPSE |
97            minItems: 1
98            maxItems: 2
99
100          polarity-supported:
101            $ref: /schemas/types.yaml#/definitions/string-array
102            description:
103              Polarity configuration supported by the PSE PI pairsets.
104            minItems: 1
105            maxItems: 4
106            items:
107              enum:
108                - MDI-X
109                - MDI
110                - X
111                - S
112
113          vpwr-supply:
114            description: Regulator power supply for the PSE PI.
115
116        required:
117          - reg
118          - "#pse-cells"
119
120oneOf:
121  - required:
122      - "#pse-cells"
123  - required:
124      - pse-pis
125
126additionalProperties: true
127
128...
129