# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/net/pse-pd/microchip,pd692x0.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: Microchip PD692x0 Power Sourcing Equipment controller maintainers: - Kory Maincent allOf: - $ref: pse-controller.yaml# properties: compatible: enum: - microchip,pd69200 - microchip,pd69210 - microchip,pd69220 reg: maxItems: 1 managers: type: object additionalProperties: false description: List of the PD69208T4/PD69204T4/PD69208M PSE managers. Each manager have 4 or 8 physical ports according to the chip version. No need to specify the SPI chip select as it is automatically detected by the PD692x0 PSE controller. The PSE managers have to be described from the lowest chip select to the greatest one, which is the detection behavior of the PD692x0 PSE controller. The PD692x0 support up to 12 PSE managers which can expose up to 96 physical ports. All physical ports available on a manager have to be described in the incremental order even if they are not used. properties: "#address-cells": const: 1 "#size-cells": const: 0 required: - "#address-cells" - "#size-cells" patternProperties: "^manager@[0-9a-b]$": type: object additionalProperties: false description: PD69208T4/PD69204T4/PD69208M PSE manager exposing 4 or 8 physical ports. properties: reg: description: Incremental index of the PSE manager starting from 0, ranging from lowest to highest chip select, up to 11. maxItems: 1 "#address-cells": const: 1 "#size-cells": const: 0 patternProperties: '^port@[0-7]$': type: object additionalProperties: false properties: reg: maxItems: 1 required: - reg required: - reg - "#address-cells" - "#size-cells" required: - compatible - reg - pse-pis unevaluatedProperties: false examples: - | i2c { #address-cells = <1>; #size-cells = <0>; ethernet-pse@3c { compatible = "microchip,pd69200"; reg = <0x3c>; managers { #address-cells = <1>; #size-cells = <0>; manager@0 { reg = <0>; #address-cells = <1>; #size-cells = <0>; phys0: port@0 { reg = <0>; }; phys1: port@1 { reg = <1>; }; phys2: port@2 { reg = <2>; }; phys3: port@3 { reg = <3>; }; }; manager@1 { reg = <1>; #address-cells = <1>; #size-cells = <0>; phys4: port@0 { reg = <0>; }; phys5: port@1 { reg = <1>; }; phys6: port@2 { reg = <2>; }; phys7: port@3 { reg = <3>; }; }; }; pse-pis { #address-cells = <1>; #size-cells = <0>; pse_pi0: pse-pi@0 { reg = <0>; #pse-cells = <0>; pairset-names = "alternative-a", "alternative-b"; pairsets = <&phys0>, <&phys1>; polarity-supported = "MDI", "S"; vpwr-supply = <&vpwr1>; }; pse_pi1: pse-pi@1 { reg = <1>; #pse-cells = <0>; pairset-names = "alternative-a"; pairsets = <&phys2>; polarity-supported = "MDI"; vpwr-supply = <&vpwr2>; }; }; }; };