xref: /linux/Documentation/devicetree/bindings/net/pse-pd/ti,tps23881.yaml (revision 96f30c8f0aa9923aa39b30bcaefeacf88b490231)
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/ti,tps23881.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: TI TPS23881 Power Sourcing Equipment controller
8
9maintainers:
10  - Kory Maincent <kory.maincent@bootlin.com>
11
12allOf:
13  - $ref: pse-controller.yaml#
14
15properties:
16  compatible:
17    enum:
18      - ti,tps23881
19
20  reg:
21    maxItems: 1
22
23  '#pse-cells':
24    const: 1
25
26  channels:
27    description: each set of 8 ports can be assigned to one physical
28      channels or two for PoE4. This parameter describes the configuration
29      of the ports conversion matrix that establishes relationship between
30      the logical ports and the physical channels.
31    type: object
32    additionalProperties: false
33
34    properties:
35      "#address-cells":
36        const: 1
37
38      "#size-cells":
39        const: 0
40
41    patternProperties:
42      '^channel@[0-7]$':
43        type: object
44        additionalProperties: false
45
46        properties:
47          reg:
48            maxItems: 1
49
50        required:
51          - reg
52
53    required:
54      - "#address-cells"
55      - "#size-cells"
56
57unevaluatedProperties: false
58
59required:
60  - compatible
61  - reg
62
63examples:
64  - |
65    i2c {
66      #address-cells = <1>;
67      #size-cells = <0>;
68
69      ethernet-pse@20 {
70        compatible = "ti,tps23881";
71        reg = <0x20>;
72
73        channels {
74          #address-cells = <1>;
75          #size-cells = <0>;
76
77          phys0: channel@0 {
78            reg = <0>;
79          };
80
81          phys1: channel@1 {
82            reg = <1>;
83          };
84
85          phys2: channel@2 {
86            reg = <2>;
87          };
88        };
89
90        pse-pis {
91          #address-cells = <1>;
92          #size-cells = <0>;
93
94          pse_pi0: pse-pi@0 {
95            reg = <0>;
96            #pse-cells = <0>;
97            pairset-names = "alternative-a", "alternative-b";
98            pairsets = <&phys0>, <&phys1>;
99            polarity-supported = "MDI", "S";
100            vpwr-supply = <&vpwr1>;
101          };
102
103          pse_pi1: pse-pi@1 {
104            reg = <1>;
105            #pse-cells = <0>;
106            pairset-names = "alternative-a";
107            pairsets = <&phys2>;
108            polarity-supported = "MDI";
109            vpwr-supply = <&vpwr2>;
110          };
111        };
112      };
113    };
114