xref: /linux/Documentation/devicetree/bindings/net/pse-pd/microchip,pd692x0.yaml (revision 8be4d31cb8aaeea27bde4b7ddb26e28a89062ebf)
19c1de033SKory Maincent (Dent Project)# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
29c1de033SKory Maincent (Dent Project)%YAML 1.2
39c1de033SKory Maincent (Dent Project)---
49c1de033SKory Maincent (Dent Project)$id: http://devicetree.org/schemas/net/pse-pd/microchip,pd692x0.yaml#
59c1de033SKory Maincent (Dent Project)$schema: http://devicetree.org/meta-schemas/core.yaml#
69c1de033SKory Maincent (Dent Project)
79c1de033SKory Maincent (Dent Project)title: Microchip PD692x0 Power Sourcing Equipment controller
89c1de033SKory Maincent (Dent Project)
99c1de033SKory Maincent (Dent Project)maintainers:
109c1de033SKory Maincent (Dent Project)  - Kory Maincent <kory.maincent@bootlin.com>
119c1de033SKory Maincent (Dent Project)
129c1de033SKory Maincent (Dent Project)allOf:
139c1de033SKory Maincent (Dent Project)  - $ref: pse-controller.yaml#
149c1de033SKory Maincent (Dent Project)
159c1de033SKory Maincent (Dent Project)properties:
169c1de033SKory Maincent (Dent Project)  compatible:
179c1de033SKory Maincent (Dent Project)    enum:
189c1de033SKory Maincent (Dent Project)      - microchip,pd69200
199c1de033SKory Maincent (Dent Project)      - microchip,pd69210
209c1de033SKory Maincent (Dent Project)      - microchip,pd69220
219c1de033SKory Maincent (Dent Project)
229c1de033SKory Maincent (Dent Project)  reg:
239c1de033SKory Maincent (Dent Project)    maxItems: 1
249c1de033SKory Maincent (Dent Project)
25*2903001eSKory Maincent (Dent Project)  vdd-supply:
26*2903001eSKory Maincent (Dent Project)    description: Regulator that provides 3.3V VDD power supply.
27*2903001eSKory Maincent (Dent Project)
28*2903001eSKory Maincent (Dent Project)  vdda-supply:
29*2903001eSKory Maincent (Dent Project)    description: Regulator that provides 3.3V VDDA power supply.
30*2903001eSKory Maincent (Dent Project)
319c1de033SKory Maincent (Dent Project)  managers:
329c1de033SKory Maincent (Dent Project)    type: object
330fe53c0aSRob Herring (Arm)    additionalProperties: false
349c1de033SKory Maincent (Dent Project)    description:
359c1de033SKory Maincent (Dent Project)      List of the PD69208T4/PD69204T4/PD69208M PSE managers. Each manager
369c1de033SKory Maincent (Dent Project)      have 4 or 8 physical ports according to the chip version. No need to
379c1de033SKory Maincent (Dent Project)      specify the SPI chip select as it is automatically detected by the
389c1de033SKory Maincent (Dent Project)      PD692x0 PSE controller. The PSE managers have to be described from
399c1de033SKory Maincent (Dent Project)      the lowest chip select to the greatest one, which is the detection
409c1de033SKory Maincent (Dent Project)      behavior of the PD692x0 PSE controller. The PD692x0 support up to
419c1de033SKory Maincent (Dent Project)      12 PSE managers which can expose up to 96 physical ports. All
429c1de033SKory Maincent (Dent Project)      physical ports available on a manager have to be described in the
439c1de033SKory Maincent (Dent Project)      incremental order even if they are not used.
449c1de033SKory Maincent (Dent Project)
459c1de033SKory Maincent (Dent Project)    properties:
469c1de033SKory Maincent (Dent Project)      "#address-cells":
479c1de033SKory Maincent (Dent Project)        const: 1
489c1de033SKory Maincent (Dent Project)
499c1de033SKory Maincent (Dent Project)      "#size-cells":
509c1de033SKory Maincent (Dent Project)        const: 0
519c1de033SKory Maincent (Dent Project)
529c1de033SKory Maincent (Dent Project)    required:
539c1de033SKory Maincent (Dent Project)      - "#address-cells"
549c1de033SKory Maincent (Dent Project)      - "#size-cells"
559c1de033SKory Maincent (Dent Project)
569c1de033SKory Maincent (Dent Project)    patternProperties:
570fe53c0aSRob Herring (Arm)      "^manager@[0-9a-b]$":
589c1de033SKory Maincent (Dent Project)        type: object
590fe53c0aSRob Herring (Arm)        additionalProperties: false
609c1de033SKory Maincent (Dent Project)        description:
619c1de033SKory Maincent (Dent Project)          PD69208T4/PD69204T4/PD69208M PSE manager exposing 4 or 8 physical
629c1de033SKory Maincent (Dent Project)          ports.
639c1de033SKory Maincent (Dent Project)
649c1de033SKory Maincent (Dent Project)        properties:
659c1de033SKory Maincent (Dent Project)          reg:
669c1de033SKory Maincent (Dent Project)            description:
679c1de033SKory Maincent (Dent Project)              Incremental index of the PSE manager starting from 0, ranging
689c1de033SKory Maincent (Dent Project)              from lowest to highest chip select, up to 11.
699c1de033SKory Maincent (Dent Project)            maxItems: 1
709c1de033SKory Maincent (Dent Project)
719c1de033SKory Maincent (Dent Project)          "#address-cells":
729c1de033SKory Maincent (Dent Project)            const: 1
739c1de033SKory Maincent (Dent Project)
749c1de033SKory Maincent (Dent Project)          "#size-cells":
759c1de033SKory Maincent (Dent Project)            const: 0
769c1de033SKory Maincent (Dent Project)
77*2903001eSKory Maincent (Dent Project)          vmain-supply:
78*2903001eSKory Maincent (Dent Project)            description: Regulator that provides 44-57V VMAIN power supply.
79*2903001eSKory Maincent (Dent Project)
80*2903001eSKory Maincent (Dent Project)          vaux5-supply:
81*2903001eSKory Maincent (Dent Project)            description: Regulator that provides 5V VAUX5 power supply.
82*2903001eSKory Maincent (Dent Project)
83*2903001eSKory Maincent (Dent Project)          vaux3p3-supply:
84*2903001eSKory Maincent (Dent Project)            description: Regulator that provides 3.3V VAUX3P3 power supply.
85*2903001eSKory Maincent (Dent Project)
869c1de033SKory Maincent (Dent Project)        patternProperties:
879c1de033SKory Maincent (Dent Project)          '^port@[0-7]$':
889c1de033SKory Maincent (Dent Project)            type: object
890fe53c0aSRob Herring (Arm)            additionalProperties: false
900fe53c0aSRob Herring (Arm)
910fe53c0aSRob Herring (Arm)            properties:
920fe53c0aSRob Herring (Arm)              reg:
930fe53c0aSRob Herring (Arm)                maxItems: 1
940fe53c0aSRob Herring (Arm)
959c1de033SKory Maincent (Dent Project)            required:
969c1de033SKory Maincent (Dent Project)              - reg
979c1de033SKory Maincent (Dent Project)
989c1de033SKory Maincent (Dent Project)        required:
999c1de033SKory Maincent (Dent Project)          - reg
1009c1de033SKory Maincent (Dent Project)          - "#address-cells"
1019c1de033SKory Maincent (Dent Project)          - "#size-cells"
1029c1de033SKory Maincent (Dent Project)
1039c1de033SKory Maincent (Dent Project)required:
1049c1de033SKory Maincent (Dent Project)  - compatible
1059c1de033SKory Maincent (Dent Project)  - reg
1069c1de033SKory Maincent (Dent Project)  - pse-pis
1079c1de033SKory Maincent (Dent Project)
1089c1de033SKory Maincent (Dent Project)unevaluatedProperties: false
1099c1de033SKory Maincent (Dent Project)
1109c1de033SKory Maincent (Dent Project)examples:
1119c1de033SKory Maincent (Dent Project)  - |
1129c1de033SKory Maincent (Dent Project)    i2c {
1139c1de033SKory Maincent (Dent Project)      #address-cells = <1>;
1149c1de033SKory Maincent (Dent Project)      #size-cells = <0>;
1159c1de033SKory Maincent (Dent Project)
1169c1de033SKory Maincent (Dent Project)      ethernet-pse@3c {
1179c1de033SKory Maincent (Dent Project)        compatible = "microchip,pd69200";
1189c1de033SKory Maincent (Dent Project)        reg = <0x3c>;
1199c1de033SKory Maincent (Dent Project)
1209c1de033SKory Maincent (Dent Project)        managers {
1219c1de033SKory Maincent (Dent Project)          #address-cells = <1>;
1229c1de033SKory Maincent (Dent Project)          #size-cells = <0>;
1239c1de033SKory Maincent (Dent Project)
124*2903001eSKory Maincent (Dent Project)          manager0: manager@0 {
1259c1de033SKory Maincent (Dent Project)            reg = <0>;
1269c1de033SKory Maincent (Dent Project)            #address-cells = <1>;
1279c1de033SKory Maincent (Dent Project)            #size-cells = <0>;
128*2903001eSKory Maincent (Dent Project)            vmain-supply = <&pse1_supply>;
1299c1de033SKory Maincent (Dent Project)
1309c1de033SKory Maincent (Dent Project)            phys0: port@0 {
1319c1de033SKory Maincent (Dent Project)              reg = <0>;
1329c1de033SKory Maincent (Dent Project)            };
1339c1de033SKory Maincent (Dent Project)
1349c1de033SKory Maincent (Dent Project)            phys1: port@1 {
1359c1de033SKory Maincent (Dent Project)              reg = <1>;
1369c1de033SKory Maincent (Dent Project)            };
1379c1de033SKory Maincent (Dent Project)
1389c1de033SKory Maincent (Dent Project)            phys2: port@2 {
1399c1de033SKory Maincent (Dent Project)              reg = <2>;
1409c1de033SKory Maincent (Dent Project)            };
1419c1de033SKory Maincent (Dent Project)
1429c1de033SKory Maincent (Dent Project)            phys3: port@3 {
1439c1de033SKory Maincent (Dent Project)              reg = <3>;
1449c1de033SKory Maincent (Dent Project)            };
1459c1de033SKory Maincent (Dent Project)          };
1469c1de033SKory Maincent (Dent Project)
1479c1de033SKory Maincent (Dent Project)          manager@1 {
1489c1de033SKory Maincent (Dent Project)            reg = <1>;
1499c1de033SKory Maincent (Dent Project)            #address-cells = <1>;
1509c1de033SKory Maincent (Dent Project)            #size-cells = <0>;
1519c1de033SKory Maincent (Dent Project)
1529c1de033SKory Maincent (Dent Project)            phys4: port@0 {
1539c1de033SKory Maincent (Dent Project)              reg = <0>;
1549c1de033SKory Maincent (Dent Project)            };
1559c1de033SKory Maincent (Dent Project)
1569c1de033SKory Maincent (Dent Project)            phys5: port@1 {
1579c1de033SKory Maincent (Dent Project)              reg = <1>;
1589c1de033SKory Maincent (Dent Project)            };
1599c1de033SKory Maincent (Dent Project)
1609c1de033SKory Maincent (Dent Project)            phys6: port@2 {
1619c1de033SKory Maincent (Dent Project)              reg = <2>;
1629c1de033SKory Maincent (Dent Project)            };
1639c1de033SKory Maincent (Dent Project)
1649c1de033SKory Maincent (Dent Project)            phys7: port@3 {
1659c1de033SKory Maincent (Dent Project)              reg = <3>;
1669c1de033SKory Maincent (Dent Project)            };
1679c1de033SKory Maincent (Dent Project)          };
1689c1de033SKory Maincent (Dent Project)        };
1699c1de033SKory Maincent (Dent Project)
1709c1de033SKory Maincent (Dent Project)        pse-pis {
1719c1de033SKory Maincent (Dent Project)          #address-cells = <1>;
1729c1de033SKory Maincent (Dent Project)          #size-cells = <0>;
1739c1de033SKory Maincent (Dent Project)
1749c1de033SKory Maincent (Dent Project)          pse_pi0: pse-pi@0 {
1759c1de033SKory Maincent (Dent Project)            reg = <0>;
1769c1de033SKory Maincent (Dent Project)            #pse-cells = <0>;
1779c1de033SKory Maincent (Dent Project)            pairset-names = "alternative-a", "alternative-b";
1789c1de033SKory Maincent (Dent Project)            pairsets = <&phys0>, <&phys1>;
1799c1de033SKory Maincent (Dent Project)            polarity-supported = "MDI", "S";
180*2903001eSKory Maincent (Dent Project)            vpwr-supply = <&manager0>;
1819c1de033SKory Maincent (Dent Project)          };
1829c1de033SKory Maincent (Dent Project)          pse_pi1: pse-pi@1 {
1839c1de033SKory Maincent (Dent Project)            reg = <1>;
1849c1de033SKory Maincent (Dent Project)            #pse-cells = <0>;
1859c1de033SKory Maincent (Dent Project)            pairset-names = "alternative-a";
1869c1de033SKory Maincent (Dent Project)            pairsets = <&phys2>;
1879c1de033SKory Maincent (Dent Project)            polarity-supported = "MDI";
188*2903001eSKory Maincent (Dent Project)            vpwr-supply = <&manager0>;
1899c1de033SKory Maincent (Dent Project)          };
1909c1de033SKory Maincent (Dent Project)        };
1919c1de033SKory Maincent (Dent Project)      };
1929c1de033SKory Maincent (Dent Project)    };
193