1*9c1de033SKory Maincent (Dent Project)# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*9c1de033SKory Maincent (Dent Project)%YAML 1.2 3*9c1de033SKory Maincent (Dent Project)--- 4*9c1de033SKory Maincent (Dent Project)$id: http://devicetree.org/schemas/net/pse-pd/microchip,pd692x0.yaml# 5*9c1de033SKory Maincent (Dent Project)$schema: http://devicetree.org/meta-schemas/core.yaml# 6*9c1de033SKory Maincent (Dent Project) 7*9c1de033SKory Maincent (Dent Project)title: Microchip PD692x0 Power Sourcing Equipment controller 8*9c1de033SKory Maincent (Dent Project) 9*9c1de033SKory Maincent (Dent Project)maintainers: 10*9c1de033SKory Maincent (Dent Project) - Kory Maincent <kory.maincent@bootlin.com> 11*9c1de033SKory Maincent (Dent Project) 12*9c1de033SKory Maincent (Dent Project)allOf: 13*9c1de033SKory Maincent (Dent Project) - $ref: pse-controller.yaml# 14*9c1de033SKory Maincent (Dent Project) 15*9c1de033SKory Maincent (Dent Project)properties: 16*9c1de033SKory Maincent (Dent Project) compatible: 17*9c1de033SKory Maincent (Dent Project) enum: 18*9c1de033SKory Maincent (Dent Project) - microchip,pd69200 19*9c1de033SKory Maincent (Dent Project) - microchip,pd69210 20*9c1de033SKory Maincent (Dent Project) - microchip,pd69220 21*9c1de033SKory Maincent (Dent Project) 22*9c1de033SKory Maincent (Dent Project) reg: 23*9c1de033SKory Maincent (Dent Project) maxItems: 1 24*9c1de033SKory Maincent (Dent Project) 25*9c1de033SKory Maincent (Dent Project) managers: 26*9c1de033SKory Maincent (Dent Project) type: object 27*9c1de033SKory Maincent (Dent Project) description: 28*9c1de033SKory Maincent (Dent Project) List of the PD69208T4/PD69204T4/PD69208M PSE managers. Each manager 29*9c1de033SKory Maincent (Dent Project) have 4 or 8 physical ports according to the chip version. No need to 30*9c1de033SKory Maincent (Dent Project) specify the SPI chip select as it is automatically detected by the 31*9c1de033SKory Maincent (Dent Project) PD692x0 PSE controller. The PSE managers have to be described from 32*9c1de033SKory Maincent (Dent Project) the lowest chip select to the greatest one, which is the detection 33*9c1de033SKory Maincent (Dent Project) behavior of the PD692x0 PSE controller. The PD692x0 support up to 34*9c1de033SKory Maincent (Dent Project) 12 PSE managers which can expose up to 96 physical ports. All 35*9c1de033SKory Maincent (Dent Project) physical ports available on a manager have to be described in the 36*9c1de033SKory Maincent (Dent Project) incremental order even if they are not used. 37*9c1de033SKory Maincent (Dent Project) 38*9c1de033SKory Maincent (Dent Project) properties: 39*9c1de033SKory Maincent (Dent Project) "#address-cells": 40*9c1de033SKory Maincent (Dent Project) const: 1 41*9c1de033SKory Maincent (Dent Project) 42*9c1de033SKory Maincent (Dent Project) "#size-cells": 43*9c1de033SKory Maincent (Dent Project) const: 0 44*9c1de033SKory Maincent (Dent Project) 45*9c1de033SKory Maincent (Dent Project) required: 46*9c1de033SKory Maincent (Dent Project) - "#address-cells" 47*9c1de033SKory Maincent (Dent Project) - "#size-cells" 48*9c1de033SKory Maincent (Dent Project) 49*9c1de033SKory Maincent (Dent Project) patternProperties: 50*9c1de033SKory Maincent (Dent Project) "^manager@0[0-9a-b]$": 51*9c1de033SKory Maincent (Dent Project) type: object 52*9c1de033SKory Maincent (Dent Project) description: 53*9c1de033SKory Maincent (Dent Project) PD69208T4/PD69204T4/PD69208M PSE manager exposing 4 or 8 physical 54*9c1de033SKory Maincent (Dent Project) ports. 55*9c1de033SKory Maincent (Dent Project) 56*9c1de033SKory Maincent (Dent Project) properties: 57*9c1de033SKory Maincent (Dent Project) reg: 58*9c1de033SKory Maincent (Dent Project) description: 59*9c1de033SKory Maincent (Dent Project) Incremental index of the PSE manager starting from 0, ranging 60*9c1de033SKory Maincent (Dent Project) from lowest to highest chip select, up to 11. 61*9c1de033SKory Maincent (Dent Project) maxItems: 1 62*9c1de033SKory Maincent (Dent Project) 63*9c1de033SKory Maincent (Dent Project) "#address-cells": 64*9c1de033SKory Maincent (Dent Project) const: 1 65*9c1de033SKory Maincent (Dent Project) 66*9c1de033SKory Maincent (Dent Project) "#size-cells": 67*9c1de033SKory Maincent (Dent Project) const: 0 68*9c1de033SKory Maincent (Dent Project) 69*9c1de033SKory Maincent (Dent Project) patternProperties: 70*9c1de033SKory Maincent (Dent Project) '^port@[0-7]$': 71*9c1de033SKory Maincent (Dent Project) type: object 72*9c1de033SKory Maincent (Dent Project) required: 73*9c1de033SKory Maincent (Dent Project) - reg 74*9c1de033SKory Maincent (Dent Project) additionalProperties: false 75*9c1de033SKory Maincent (Dent Project) 76*9c1de033SKory Maincent (Dent Project) required: 77*9c1de033SKory Maincent (Dent Project) - reg 78*9c1de033SKory Maincent (Dent Project) - "#address-cells" 79*9c1de033SKory Maincent (Dent Project) - "#size-cells" 80*9c1de033SKory Maincent (Dent Project) 81*9c1de033SKory Maincent (Dent Project)required: 82*9c1de033SKory Maincent (Dent Project) - compatible 83*9c1de033SKory Maincent (Dent Project) - reg 84*9c1de033SKory Maincent (Dent Project) - pse-pis 85*9c1de033SKory Maincent (Dent Project) 86*9c1de033SKory Maincent (Dent Project)unevaluatedProperties: false 87*9c1de033SKory Maincent (Dent Project) 88*9c1de033SKory Maincent (Dent Project)examples: 89*9c1de033SKory Maincent (Dent Project) - | 90*9c1de033SKory Maincent (Dent Project) i2c { 91*9c1de033SKory Maincent (Dent Project) #address-cells = <1>; 92*9c1de033SKory Maincent (Dent Project) #size-cells = <0>; 93*9c1de033SKory Maincent (Dent Project) 94*9c1de033SKory Maincent (Dent Project) ethernet-pse@3c { 95*9c1de033SKory Maincent (Dent Project) compatible = "microchip,pd69200"; 96*9c1de033SKory Maincent (Dent Project) reg = <0x3c>; 97*9c1de033SKory Maincent (Dent Project) 98*9c1de033SKory Maincent (Dent Project) managers { 99*9c1de033SKory Maincent (Dent Project) #address-cells = <1>; 100*9c1de033SKory Maincent (Dent Project) #size-cells = <0>; 101*9c1de033SKory Maincent (Dent Project) 102*9c1de033SKory Maincent (Dent Project) manager@0 { 103*9c1de033SKory Maincent (Dent Project) reg = <0>; 104*9c1de033SKory Maincent (Dent Project) #address-cells = <1>; 105*9c1de033SKory Maincent (Dent Project) #size-cells = <0>; 106*9c1de033SKory Maincent (Dent Project) 107*9c1de033SKory Maincent (Dent Project) phys0: port@0 { 108*9c1de033SKory Maincent (Dent Project) reg = <0>; 109*9c1de033SKory Maincent (Dent Project) }; 110*9c1de033SKory Maincent (Dent Project) 111*9c1de033SKory Maincent (Dent Project) phys1: port@1 { 112*9c1de033SKory Maincent (Dent Project) reg = <1>; 113*9c1de033SKory Maincent (Dent Project) }; 114*9c1de033SKory Maincent (Dent Project) 115*9c1de033SKory Maincent (Dent Project) phys2: port@2 { 116*9c1de033SKory Maincent (Dent Project) reg = <2>; 117*9c1de033SKory Maincent (Dent Project) }; 118*9c1de033SKory Maincent (Dent Project) 119*9c1de033SKory Maincent (Dent Project) phys3: port@3 { 120*9c1de033SKory Maincent (Dent Project) reg = <3>; 121*9c1de033SKory Maincent (Dent Project) }; 122*9c1de033SKory Maincent (Dent Project) }; 123*9c1de033SKory Maincent (Dent Project) 124*9c1de033SKory Maincent (Dent Project) manager@1 { 125*9c1de033SKory Maincent (Dent Project) reg = <1>; 126*9c1de033SKory Maincent (Dent Project) #address-cells = <1>; 127*9c1de033SKory Maincent (Dent Project) #size-cells = <0>; 128*9c1de033SKory Maincent (Dent Project) 129*9c1de033SKory Maincent (Dent Project) phys4: port@0 { 130*9c1de033SKory Maincent (Dent Project) reg = <0>; 131*9c1de033SKory Maincent (Dent Project) }; 132*9c1de033SKory Maincent (Dent Project) 133*9c1de033SKory Maincent (Dent Project) phys5: port@1 { 134*9c1de033SKory Maincent (Dent Project) reg = <1>; 135*9c1de033SKory Maincent (Dent Project) }; 136*9c1de033SKory Maincent (Dent Project) 137*9c1de033SKory Maincent (Dent Project) phys6: port@2 { 138*9c1de033SKory Maincent (Dent Project) reg = <2>; 139*9c1de033SKory Maincent (Dent Project) }; 140*9c1de033SKory Maincent (Dent Project) 141*9c1de033SKory Maincent (Dent Project) phys7: port@3 { 142*9c1de033SKory Maincent (Dent Project) reg = <3>; 143*9c1de033SKory Maincent (Dent Project) }; 144*9c1de033SKory Maincent (Dent Project) }; 145*9c1de033SKory Maincent (Dent Project) }; 146*9c1de033SKory Maincent (Dent Project) 147*9c1de033SKory Maincent (Dent Project) pse-pis { 148*9c1de033SKory Maincent (Dent Project) #address-cells = <1>; 149*9c1de033SKory Maincent (Dent Project) #size-cells = <0>; 150*9c1de033SKory Maincent (Dent Project) 151*9c1de033SKory Maincent (Dent Project) pse_pi0: pse-pi@0 { 152*9c1de033SKory Maincent (Dent Project) reg = <0>; 153*9c1de033SKory Maincent (Dent Project) #pse-cells = <0>; 154*9c1de033SKory Maincent (Dent Project) pairset-names = "alternative-a", "alternative-b"; 155*9c1de033SKory Maincent (Dent Project) pairsets = <&phys0>, <&phys1>; 156*9c1de033SKory Maincent (Dent Project) polarity-supported = "MDI", "S"; 157*9c1de033SKory Maincent (Dent Project) vpwr-supply = <&vpwr1>; 158*9c1de033SKory Maincent (Dent Project) }; 159*9c1de033SKory Maincent (Dent Project) pse_pi1: pse-pi@1 { 160*9c1de033SKory Maincent (Dent Project) reg = <1>; 161*9c1de033SKory Maincent (Dent Project) #pse-cells = <0>; 162*9c1de033SKory Maincent (Dent Project) pairset-names = "alternative-a"; 163*9c1de033SKory Maincent (Dent Project) pairsets = <&phys2>; 164*9c1de033SKory Maincent (Dent Project) polarity-supported = "MDI"; 165*9c1de033SKory Maincent (Dent Project) vpwr-supply = <&vpwr2>; 166*9c1de033SKory Maincent (Dent Project) }; 167*9c1de033SKory Maincent (Dent Project) }; 168*9c1de033SKory Maincent (Dent Project) }; 169*9c1de033SKory Maincent (Dent Project) }; 170