1 # SPDX-License-Identifier: GPL-2.0 1 # SPDX-License-Identifier: GPL-2.0 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/net/etherne 4 $id: http://devicetree.org/schemas/net/ethernet-phy.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Ethernet PHY Common Properties !! 7 title: Ethernet PHY Generic Binding 8 8 9 maintainers: 9 maintainers: 10 - Andrew Lunn <andrew@lunn.ch> 10 - Andrew Lunn <andrew@lunn.ch> 11 - Florian Fainelli <f.fainelli@gmail.com> 11 - Florian Fainelli <f.fainelli@gmail.com> 12 - Heiner Kallweit <hkallweit1@gmail.com> 12 - Heiner Kallweit <hkallweit1@gmail.com> 13 13 14 # The dt-schema tools will generate a select s 14 # The dt-schema tools will generate a select statement first by using 15 # the compatible, and second by using the node 15 # the compatible, and second by using the node name if any. In our 16 # case, the node name is the one we want to ma 16 # case, the node name is the one we want to match on, while the 17 # compatible is optional. 17 # compatible is optional. 18 select: 18 select: 19 properties: 19 properties: 20 $nodename: 20 $nodename: 21 pattern: "^ethernet-phy(@[a-f0-9]+)?$" 21 pattern: "^ethernet-phy(@[a-f0-9]+)?$" 22 22 23 required: 23 required: 24 - $nodename 24 - $nodename 25 25 26 properties: 26 properties: 27 $nodename: 27 $nodename: 28 pattern: "^ethernet-phy(@[a-f0-9]+)?$" 28 pattern: "^ethernet-phy(@[a-f0-9]+)?$" 29 29 30 compatible: 30 compatible: 31 oneOf: 31 oneOf: 32 - const: ethernet-phy-ieee802.3-c22 32 - const: ethernet-phy-ieee802.3-c22 33 description: PHYs that implement IEEE8 33 description: PHYs that implement IEEE802.3 clause 22 34 - const: ethernet-phy-ieee802.3-c45 34 - const: ethernet-phy-ieee802.3-c45 35 description: PHYs that implement IEEE8 35 description: PHYs that implement IEEE802.3 clause 45 36 - pattern: "^ethernet-phy-id[a-f0-9]{4}\ 36 - pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$" 37 description: 37 description: 38 If the PHY reports an incorrect ID ( 38 If the PHY reports an incorrect ID (or none at all) then the 39 compatible list may contain an entry 39 compatible list may contain an entry with the correct PHY ID 40 in the above form. 40 in the above form. 41 The first group of digits is the 16 41 The first group of digits is the 16 bit Phy Identifier 1 42 register, this is the chip vendor OU 42 register, this is the chip vendor OUI bits 3:18. The 43 second group of digits is the Phy Id 43 second group of digits is the Phy Identifier 2 register, 44 this is the chip vendor OUI bits 19: 44 this is the chip vendor OUI bits 19:24, followed by 10 45 bits of a vendor specific ID. 45 bits of a vendor specific ID. 46 - items: 46 - items: 47 - pattern: "^ethernet-phy-id[a-f0-9] 47 - pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$" 48 - const: ethernet-phy-ieee802.3-c22 << 49 - items: << 50 - pattern: "^ethernet-phy-id[a-f0-9] << 51 - const: ethernet-phy-ieee802.3-c45 48 - const: ethernet-phy-ieee802.3-c45 52 49 53 reg: 50 reg: 54 minimum: 0 51 minimum: 0 55 maximum: 31 52 maximum: 31 56 description: 53 description: 57 The ID number for the PHY. 54 The ID number for the PHY. 58 55 59 interrupts: 56 interrupts: 60 maxItems: 1 57 maxItems: 1 61 58 62 max-speed: 59 max-speed: 63 enum: 60 enum: 64 - 10 61 - 10 65 - 100 62 - 100 66 - 1000 63 - 1000 67 - 2500 64 - 2500 68 - 5000 65 - 5000 69 - 10000 66 - 10000 70 - 20000 67 - 20000 71 - 25000 68 - 25000 72 - 40000 69 - 40000 73 - 50000 70 - 50000 74 - 56000 71 - 56000 75 - 100000 72 - 100000 76 - 200000 73 - 200000 77 description: 74 description: 78 Maximum PHY supported speed in Mbits / s 75 Maximum PHY supported speed in Mbits / seconds. 79 76 80 phy-10base-t1l-2.4vpp: << 81 description: | << 82 tristate, request/disable 2.4 Vpp operat << 83 0: Disable 2.4 Vpp operating mode. << 84 1: Request 2.4 Vpp operating mode from l << 85 Absence of this property will leave conf << 86 $ref: /schemas/types.yaml#/definitions/uin << 87 enum: [0, 1] << 88 << 89 broken-turn-around: 77 broken-turn-around: 90 $ref: /schemas/types.yaml#/definitions/fla !! 78 $ref: /schemas/types.yaml#definitions/flag 91 description: 79 description: 92 If set, indicates the PHY device does no 80 If set, indicates the PHY device does not correctly release 93 the turn around line low at end of the c !! 81 the turn around line low at the end of a MDIO transaction. 94 MDIO transaction. << 95 << 96 brr-mode: << 97 $ref: /schemas/types.yaml#/definitions/fla << 98 description: << 99 If set, indicates the network cable inte << 100 defined in the BroadR-Reach link mode sp << 101 1BR-10 names. The PHY must be configured << 102 by software. << 103 << 104 clocks: << 105 maxItems: 1 << 106 description: << 107 External clock connected to the PHY. If << 108 that the PHY uses a fixed crystal or an << 109 82 110 enet-phy-lane-swap: 83 enet-phy-lane-swap: 111 $ref: /schemas/types.yaml#/definitions/fla !! 84 $ref: /schemas/types.yaml#definitions/flag 112 description: 85 description: 113 If set, indicates the PHY will swap the 86 If set, indicates the PHY will swap the TX/RX lanes to 114 compensate for the board being designed 87 compensate for the board being designed with the lanes 115 swapped. 88 swapped. 116 89 117 enet-phy-lane-no-swap: << 118 $ref: /schemas/types.yaml#/definitions/fla << 119 description: << 120 If set, indicates that PHY will disable << 121 TX/RX lanes. This property allows the PH << 122 e.g. wrong bootstrap configuration cause << 123 layout design. << 124 << 125 eee-broken-100tx: 90 eee-broken-100tx: 126 $ref: /schemas/types.yaml#/definitions/fla !! 91 $ref: /schemas/types.yaml#definitions/flag 127 description: 92 description: 128 Mark the corresponding energy efficient 93 Mark the corresponding energy efficient ethernet mode as 129 broken and request the ethernet to stop 94 broken and request the ethernet to stop advertising it. 130 95 131 eee-broken-1000t: 96 eee-broken-1000t: 132 $ref: /schemas/types.yaml#/definitions/fla !! 97 $ref: /schemas/types.yaml#definitions/flag 133 description: 98 description: 134 Mark the corresponding energy efficient 99 Mark the corresponding energy efficient ethernet mode as 135 broken and request the ethernet to stop 100 broken and request the ethernet to stop advertising it. 136 101 137 eee-broken-10gt: 102 eee-broken-10gt: 138 $ref: /schemas/types.yaml#/definitions/fla !! 103 $ref: /schemas/types.yaml#definitions/flag 139 description: 104 description: 140 Mark the corresponding energy efficient 105 Mark the corresponding energy efficient ethernet mode as 141 broken and request the ethernet to stop 106 broken and request the ethernet to stop advertising it. 142 107 143 eee-broken-1000kx: 108 eee-broken-1000kx: 144 $ref: /schemas/types.yaml#/definitions/fla !! 109 $ref: /schemas/types.yaml#definitions/flag 145 description: 110 description: 146 Mark the corresponding energy efficient 111 Mark the corresponding energy efficient ethernet mode as 147 broken and request the ethernet to stop 112 broken and request the ethernet to stop advertising it. 148 113 149 eee-broken-10gkx4: 114 eee-broken-10gkx4: 150 $ref: /schemas/types.yaml#/definitions/fla !! 115 $ref: /schemas/types.yaml#definitions/flag 151 description: 116 description: 152 Mark the corresponding energy efficient 117 Mark the corresponding energy efficient ethernet mode as 153 broken and request the ethernet to stop 118 broken and request the ethernet to stop advertising it. 154 119 155 eee-broken-10gkr: 120 eee-broken-10gkr: 156 $ref: /schemas/types.yaml#/definitions/fla !! 121 $ref: /schemas/types.yaml#definitions/flag 157 description: 122 description: 158 Mark the corresponding energy efficient 123 Mark the corresponding energy efficient ethernet mode as 159 broken and request the ethernet to stop 124 broken and request the ethernet to stop advertising it. 160 125 161 pses: << 162 $ref: /schemas/types.yaml#/definitions/pha << 163 maxItems: 1 << 164 description: << 165 Specifies a reference to a node represen << 166 << 167 phy-is-integrated: 126 phy-is-integrated: 168 $ref: /schemas/types.yaml#/definitions/fla !! 127 $ref: /schemas/types.yaml#definitions/flag 169 description: 128 description: 170 If set, indicates that the PHY is integr 129 If set, indicates that the PHY is integrated into the same 171 physical package as the Ethernet MAC. If 130 physical package as the Ethernet MAC. If needed, muxers 172 should be configured to ensure the integ 131 should be configured to ensure the integrated PHY is 173 used. The absence of this property indic 132 used. The absence of this property indicates the muxers 174 should be configured so that the externa 133 should be configured so that the external PHY is used. 175 134 176 resets: 135 resets: 177 maxItems: 1 136 maxItems: 1 178 137 179 reset-names: 138 reset-names: 180 const: phy 139 const: phy 181 140 182 reset-gpios: 141 reset-gpios: 183 maxItems: 1 142 maxItems: 1 184 description: 143 description: 185 The GPIO phandle and specifier for the P 144 The GPIO phandle and specifier for the PHY reset signal. 186 145 187 reset-assert-us: 146 reset-assert-us: 188 description: 147 description: 189 Delay after the reset was asserted in mi 148 Delay after the reset was asserted in microseconds. If this 190 property is missing the delay will be sk 149 property is missing the delay will be skipped. 191 150 192 reset-deassert-us: 151 reset-deassert-us: 193 description: 152 description: 194 Delay after the reset was deasserted in 153 Delay after the reset was deasserted in microseconds. If 195 this property is missing the delay will 154 this property is missing the delay will be skipped. 196 155 197 sfp: << 198 $ref: /schemas/types.yaml#/definitions/pha << 199 description: << 200 Specifies a reference to a node represen << 201 << 202 rx-internal-delay-ps: << 203 description: | << 204 RGMII Receive PHY Clock Delay defined in << 205 PHY's that have configurable RX internal << 206 present then the PHY applies the RX dela << 207 << 208 tx-internal-delay-ps: << 209 description: | << 210 RGMII Transmit PHY Clock Delay defined i << 211 PHY's that have configurable TX internal << 212 present then the PHY applies the TX dela << 213 << 214 leds: << 215 type: object << 216 << 217 properties: << 218 '#address-cells': << 219 const: 1 << 220 << 221 '#size-cells': << 222 const: 0 << 223 << 224 patternProperties: << 225 '^led@[a-f0-9]+$': << 226 $ref: /schemas/leds/common.yaml# << 227 << 228 properties: << 229 reg: << 230 maxItems: 1 << 231 description: << 232 This define the LED index in the << 233 driver dependent and required fo << 234 LED for the same port. << 235 << 236 required: << 237 - reg << 238 << 239 unevaluatedProperties: false << 240 << 241 additionalProperties: false << 242 << 243 required: 156 required: 244 - reg 157 - reg 245 158 246 additionalProperties: true << 247 << 248 examples: 159 examples: 249 - | 160 - | 250 #include <dt-bindings/leds/common.h> << 251 << 252 ethernet { 161 ethernet { 253 #address-cells = <1>; 162 #address-cells = <1>; 254 #size-cells = <0>; 163 #size-cells = <0>; 255 164 256 ethernet-phy@0 { 165 ethernet-phy@0 { 257 compatible = "ethernet-phy-id0141. 166 compatible = "ethernet-phy-id0141.0e90", "ethernet-phy-ieee802.3-c45"; 258 interrupt-parent = <&PIC>; 167 interrupt-parent = <&PIC>; 259 interrupts = <35 1>; 168 interrupts = <35 1>; 260 reg = <0>; 169 reg = <0>; 261 170 262 resets = <&rst 8>; 171 resets = <&rst 8>; 263 reset-names = "phy"; 172 reset-names = "phy"; 264 reset-gpios = <&gpio1 4 1>; 173 reset-gpios = <&gpio1 4 1>; 265 reset-assert-us = <1000>; 174 reset-assert-us = <1000>; 266 reset-deassert-us = <2000>; 175 reset-deassert-us = <2000>; 267 << 268 leds { << 269 #address-cells = <1>; << 270 #size-cells = <0>; << 271 << 272 led@0 { << 273 reg = <0>; << 274 color = <LED_COLOR_ID_WHIT << 275 function = LED_FUNCTION_LA << 276 default-state = "keep"; << 277 }; << 278 }; << 279 }; 176 }; 280 }; 177 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.