[RFC PATCH net-next v2 1/2] dt-bindings: net: pse-pd: Add bindings for LTC4266 PSE Controller
Kyle Swenson <[email protected]>
| Newsgroups | org.kernel.vger.netdev,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
Add the LTC4266 Power Sourcing Equipment controller device tree bindings documentation. Signed-off-by: Kyle Swenson <[email protected]> --- .../bindings/net/pse-pd/lltc,ltc4266.yaml | 180 ++++++++++++++++++ 1 file changed, 180 insertions(+) create mode 100644 Documentation/devicetree/bindings/net/pse-pd/lltc,ltc4266.yaml diff --git a/Documentation/devicetree/bindings/net/pse-pd/lltc,ltc4266.yaml b/Documentation/devicetree/bindings/net/pse-pd/lltc,ltc4266.yaml new file mode 100644 index 000000000000..b3da8fea0b07 --- /dev/null +++ b/Documentation/devicetree/bindings/net/pse-pd/lltc,ltc4266.yaml @@ -0,0 +1,180 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/net/pse-pd/lltc,ltc4266.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Linear Technology LTC4266 Power Sourcing Equipment controller + +maintainers: + - Kyle Swenson <[email protected]> + +allOf: + - $ref: pse-controller.yaml# + +properties: + compatible: + enum: + - lltc,ltc4266 + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + reset-gpios: + maxItems: 1 + + channels: + type: object + additionalProperties: false + description: + Defines the 4 physical delivery channels on the controller that can be + referenced by PSE PIs through their "pairsets" property. The actual port + matrix mapping is created when PSE PIs reference these channels in their + pairsets. + + properties: + '#address-cells': + const: 1 + + '#size-cells': + const: 0 + + patternProperties: + '^channel@[0-3]$': + type: object + additionalProperties: false + + properties: + reg: + maxItems: 1 + + sense-resistor-micro-ohms: + description: Sense resistor connected to the channel's MOSFET, used + for current measurement for overcurrent detection. + enum: [250000, 500000] + + required: + - reg + - sense-resistor-micro-ohms + + required: + - '#address-cells' + - '#size-cells' + + pse-pis: + type: object + additionalProperties: false + + properties: + '#address-cells': + const: 1 + + '#size-cells': + const: 0 + + patternProperties: + '^pse-pi@[0-3]$': + type: object + properties: + pairsets: + description: The LTC4266 delivers power to a PI over a single + pairset, driven by one of the controller's four channels. There + is no 4-pair mode spreading a PI over two channels, so exactly + one channel phandle is expected. + maxItems: 1 + pairset-names: + maxItems: 1 + +required: + - compatible + - reg + - interrupts + - channels + - pse-pis + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + + i2c { + #address-cells = <1>; + #size-cells = <0>; + + ethernet-pse@2f { + compatible = "lltc,ltc4266"; + reg = <0x2f>; + interrupts = <8 IRQ_TYPE_LEVEL_LOW>; + interrupt-parent = <&gpio>; + + channels { + #address-cells = <1>; + #size-cells = <0>; + + phys0: channel@0 { + reg = <0>; + sense-resistor-micro-ohms = <500000>; + }; + + phys1: channel@1 { + reg = <1>; + sense-resistor-micro-ohms = <500000>; + }; + + phys2: channel@2 { + reg = <2>; + sense-resistor-micro-ohms = <500000>; + }; + + phys3: channel@3 { + reg = <3>; + sense-resistor-micro-ohms = <500000>; + }; + }; + + pse-pis { + #address-cells = <1>; + #size-cells = <0>; + + pse_pi0: pse-pi@0 { + reg = <0>; + #pse-cells = <0>; + pairset-names = "alternative-a"; + pairsets = <&phys0>; + polarity-supported = "MDI"; + vpwr-supply = <&vreg_pse>; + }; + + pse_pi1: pse-pi@1 { + reg = <1>; + #pse-cells = <0>; + pairset-names = "alternative-a"; + pairsets = <&phys1>; + polarity-supported = "MDI"; + vpwr-supply = <&vreg_pse>; + }; + + pse_pi2: pse-pi@2 { + reg = <2>; + #pse-cells = <0>; + pairset-names = "alternative-a"; + pairsets = <&phys2>; + polarity-supported = "MDI"; + vpwr-supply = <&vreg_pse>; + }; + + pse_pi3: pse-pi@3 { + reg = <3>; + #pse-cells = <0>; + pairset-names = "alternative-a"; + pairsets = <&phys3>; + polarity-supported = "MDI"; + vpwr-supply = <&vreg_pse>; + }; + }; + }; + }; -- 2.55.0