1d8704342SMaxime Ripard# SPDX-License-Identifier: GPL-2.0 2d8704342SMaxime Ripard%YAML 1.2 3d8704342SMaxime Ripard--- 4d8704342SMaxime Ripard$id: http://devicetree.org/schemas/net/ethernet-phy.yaml# 5d8704342SMaxime Ripard$schema: http://devicetree.org/meta-schemas/core.yaml# 6d8704342SMaxime Ripard 7d8704342SMaxime Ripardtitle: Ethernet PHY Generic Binding 8d8704342SMaxime Ripard 9d8704342SMaxime Ripardmaintainers: 10d8704342SMaxime Ripard - Andrew Lunn <andrew@lunn.ch> 11d8704342SMaxime Ripard - Florian Fainelli <f.fainelli@gmail.com> 12d8704342SMaxime Ripard - Heiner Kallweit <hkallweit1@gmail.com> 13d8704342SMaxime Ripard 14d8704342SMaxime Ripard# The dt-schema tools will generate a select statement first by using 15d8704342SMaxime Ripard# the compatible, and second by using the node name if any. In our 16d8704342SMaxime Ripard# case, the node name is the one we want to match on, while the 17d8704342SMaxime Ripard# compatible is optional. 18d8704342SMaxime Ripardselect: 19d8704342SMaxime Ripard properties: 20d8704342SMaxime Ripard $nodename: 21d8704342SMaxime Ripard pattern: "^ethernet-phy(@[a-f0-9]+)?$" 22d8704342SMaxime Ripard 23d8704342SMaxime Ripard required: 24d8704342SMaxime Ripard - $nodename 25d8704342SMaxime Ripard 26d8704342SMaxime Ripardproperties: 27d8704342SMaxime Ripard $nodename: 28d8704342SMaxime Ripard pattern: "^ethernet-phy(@[a-f0-9]+)?$" 29d8704342SMaxime Ripard 30d8704342SMaxime Ripard compatible: 31d8704342SMaxime Ripard oneOf: 32d8704342SMaxime Ripard - const: ethernet-phy-ieee802.3-c22 33d8704342SMaxime Ripard description: PHYs that implement IEEE802.3 clause 22 34d8704342SMaxime Ripard - const: ethernet-phy-ieee802.3-c45 35d8704342SMaxime Ripard description: PHYs that implement IEEE802.3 clause 45 36d8704342SMaxime Ripard - pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$" 37d8704342SMaxime Ripard description: 38d8704342SMaxime Ripard If the PHY reports an incorrect ID (or none at all) then the 39d8704342SMaxime Ripard compatible list may contain an entry with the correct PHY ID 40d8704342SMaxime Ripard in the above form. 41d8704342SMaxime Ripard The first group of digits is the 16 bit Phy Identifier 1 42d8704342SMaxime Ripard register, this is the chip vendor OUI bits 3:18. The 43d8704342SMaxime Ripard second group of digits is the Phy Identifier 2 register, 44d8704342SMaxime Ripard this is the chip vendor OUI bits 19:24, followed by 10 45d8704342SMaxime Ripard bits of a vendor specific ID. 46d8704342SMaxime Ripard - items: 47d8704342SMaxime Ripard - pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$" 48c8322754SJohan Jonker - const: ethernet-phy-ieee802.3-c22 49c8322754SJohan Jonker - items: 50c8322754SJohan Jonker - pattern: "^ethernet-phy-id[a-f0-9]{4}\\.[a-f0-9]{4}$" 51d8704342SMaxime Ripard - const: ethernet-phy-ieee802.3-c45 52d8704342SMaxime Ripard 53d8704342SMaxime Ripard reg: 54d8704342SMaxime Ripard minimum: 0 55d8704342SMaxime Ripard maximum: 31 56d8704342SMaxime Ripard description: 57d8704342SMaxime Ripard The ID number for the PHY. 58d8704342SMaxime Ripard 59d8704342SMaxime Ripard interrupts: 60d8704342SMaxime Ripard maxItems: 1 61d8704342SMaxime Ripard 62d8704342SMaxime Ripard max-speed: 63d8704342SMaxime Ripard enum: 64d8704342SMaxime Ripard - 10 65d8704342SMaxime Ripard - 100 66d8704342SMaxime Ripard - 1000 67d8704342SMaxime Ripard - 2500 68d8704342SMaxime Ripard - 5000 69d8704342SMaxime Ripard - 10000 70d8704342SMaxime Ripard - 20000 71d8704342SMaxime Ripard - 25000 72d8704342SMaxime Ripard - 40000 73d8704342SMaxime Ripard - 50000 74d8704342SMaxime Ripard - 56000 75d8704342SMaxime Ripard - 100000 76d8704342SMaxime Ripard - 200000 77d8704342SMaxime Ripard description: 78d8704342SMaxime Ripard Maximum PHY supported speed in Mbits / seconds. 79d8704342SMaxime Ripard 80d8704342SMaxime Ripard broken-turn-around: 81d8704342SMaxime Ripard $ref: /schemas/types.yaml#definitions/flag 82d8704342SMaxime Ripard description: 83d8704342SMaxime Ripard If set, indicates the PHY device does not correctly release 84*f42ceca2SFlorian Fainelli the turn around line low at end of the control phase of the 85*f42ceca2SFlorian Fainelli MDIO transaction. 86d8704342SMaxime Ripard 87d8704342SMaxime Ripard enet-phy-lane-swap: 88d8704342SMaxime Ripard $ref: /schemas/types.yaml#definitions/flag 89d8704342SMaxime Ripard description: 90d8704342SMaxime Ripard If set, indicates the PHY will swap the TX/RX lanes to 91d8704342SMaxime Ripard compensate for the board being designed with the lanes 92d8704342SMaxime Ripard swapped. 93d8704342SMaxime Ripard 94d8704342SMaxime Ripard eee-broken-100tx: 95d8704342SMaxime Ripard $ref: /schemas/types.yaml#definitions/flag 96d8704342SMaxime Ripard description: 97d8704342SMaxime Ripard Mark the corresponding energy efficient ethernet mode as 98d8704342SMaxime Ripard broken and request the ethernet to stop advertising it. 99d8704342SMaxime Ripard 100d8704342SMaxime Ripard eee-broken-1000t: 101d8704342SMaxime Ripard $ref: /schemas/types.yaml#definitions/flag 102d8704342SMaxime Ripard description: 103d8704342SMaxime Ripard Mark the corresponding energy efficient ethernet mode as 104d8704342SMaxime Ripard broken and request the ethernet to stop advertising it. 105d8704342SMaxime Ripard 106d8704342SMaxime Ripard eee-broken-10gt: 107d8704342SMaxime Ripard $ref: /schemas/types.yaml#definitions/flag 108d8704342SMaxime Ripard description: 109d8704342SMaxime Ripard Mark the corresponding energy efficient ethernet mode as 110d8704342SMaxime Ripard broken and request the ethernet to stop advertising it. 111d8704342SMaxime Ripard 112d8704342SMaxime Ripard eee-broken-1000kx: 113d8704342SMaxime Ripard $ref: /schemas/types.yaml#definitions/flag 114d8704342SMaxime Ripard description: 115d8704342SMaxime Ripard Mark the corresponding energy efficient ethernet mode as 116d8704342SMaxime Ripard broken and request the ethernet to stop advertising it. 117d8704342SMaxime Ripard 118d8704342SMaxime Ripard eee-broken-10gkx4: 119d8704342SMaxime Ripard $ref: /schemas/types.yaml#definitions/flag 120d8704342SMaxime Ripard description: 121d8704342SMaxime Ripard Mark the corresponding energy efficient ethernet mode as 122d8704342SMaxime Ripard broken and request the ethernet to stop advertising it. 123d8704342SMaxime Ripard 124d8704342SMaxime Ripard eee-broken-10gkr: 125d8704342SMaxime Ripard $ref: /schemas/types.yaml#definitions/flag 126d8704342SMaxime Ripard description: 127d8704342SMaxime Ripard Mark the corresponding energy efficient ethernet mode as 128d8704342SMaxime Ripard broken and request the ethernet to stop advertising it. 129d8704342SMaxime Ripard 130d8704342SMaxime Ripard phy-is-integrated: 131d8704342SMaxime Ripard $ref: /schemas/types.yaml#definitions/flag 132d8704342SMaxime Ripard description: 133d8704342SMaxime Ripard If set, indicates that the PHY is integrated into the same 134d8704342SMaxime Ripard physical package as the Ethernet MAC. If needed, muxers 135d8704342SMaxime Ripard should be configured to ensure the integrated PHY is 136d8704342SMaxime Ripard used. The absence of this property indicates the muxers 137d8704342SMaxime Ripard should be configured so that the external PHY is used. 138d8704342SMaxime Ripard 139d8704342SMaxime Ripard resets: 140d8704342SMaxime Ripard maxItems: 1 141d8704342SMaxime Ripard 142d8704342SMaxime Ripard reset-names: 143d8704342SMaxime Ripard const: phy 144d8704342SMaxime Ripard 145d8704342SMaxime Ripard reset-gpios: 146d8704342SMaxime Ripard maxItems: 1 147d8704342SMaxime Ripard description: 148d8704342SMaxime Ripard The GPIO phandle and specifier for the PHY reset signal. 149d8704342SMaxime Ripard 150d8704342SMaxime Ripard reset-assert-us: 151d8704342SMaxime Ripard description: 152d8704342SMaxime Ripard Delay after the reset was asserted in microseconds. If this 153d8704342SMaxime Ripard property is missing the delay will be skipped. 154d8704342SMaxime Ripard 155d8704342SMaxime Ripard reset-deassert-us: 156d8704342SMaxime Ripard description: 157d8704342SMaxime Ripard Delay after the reset was deasserted in microseconds. If 158d8704342SMaxime Ripard this property is missing the delay will be skipped. 159d8704342SMaxime Ripard 160fb3d8bcdSRussell King sfp: 161fb3d8bcdSRussell King $ref: /schemas/types.yaml#definitions/phandle 162fb3d8bcdSRussell King description: 163fb3d8bcdSRussell King Specifies a reference to a node representing a SFP cage. 164fb3d8bcdSRussell King 165d8704342SMaxime Ripardrequired: 166d8704342SMaxime Ripard - reg 167d8704342SMaxime Ripard 168d8704342SMaxime Ripardexamples: 169d8704342SMaxime Ripard - | 170d8704342SMaxime Ripard ethernet { 171d8704342SMaxime Ripard #address-cells = <1>; 172d8704342SMaxime Ripard #size-cells = <0>; 173d8704342SMaxime Ripard 174d8704342SMaxime Ripard ethernet-phy@0 { 175d8704342SMaxime Ripard compatible = "ethernet-phy-id0141.0e90", "ethernet-phy-ieee802.3-c45"; 176d8704342SMaxime Ripard interrupt-parent = <&PIC>; 177d8704342SMaxime Ripard interrupts = <35 1>; 178d8704342SMaxime Ripard reg = <0>; 179d8704342SMaxime Ripard 180d8704342SMaxime Ripard resets = <&rst 8>; 181d8704342SMaxime Ripard reset-names = "phy"; 182d8704342SMaxime Ripard reset-gpios = <&gpio1 4 1>; 183d8704342SMaxime Ripard reset-assert-us = <1000>; 184d8704342SMaxime Ripard reset-deassert-us = <2000>; 185d8704342SMaxime Ripard }; 186d8704342SMaxime Ripard }; 187