1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/net/dsa/dsa-port.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Ethernet Switch port 8 9maintainers: 10 - Andrew Lunn <andrew@lunn.ch> 11 - Florian Fainelli <f.fainelli@gmail.com> 12 - Vivien Didelot <vivien.didelot@gmail.com> 13 14description: 15 Ethernet switch port Description 16 17allOf: 18 - $ref: /schemas/net/ethernet-controller.yaml# 19 20properties: 21 reg: 22 items: 23 - description: Port number 24 25 label: 26 description: 27 Describes the label associated with this port, which will become 28 the netdev name 29 $ref: /schemas/types.yaml#/definitions/string 30 31 link: 32 description: 33 Should be a list of phandles to other switch's DSA port. This 34 port is used as the outgoing port towards the phandle ports. The 35 full routing information must be given, not just the one hop 36 routes to neighbouring switches 37 $ref: /schemas/types.yaml#/definitions/phandle-array 38 items: 39 maxItems: 1 40 41 ethernet: 42 description: 43 Should be a phandle to a valid Ethernet device node. This host 44 device is what the switch port is connected to 45 $ref: /schemas/types.yaml#/definitions/phandle 46 47 dsa-tag-protocol: 48 description: 49 Instead of the default, the switch will use this tag protocol if 50 possible. Useful when a device supports multiple protocols and 51 the default is incompatible with the Ethernet device. 52 enum: 53 - dsa 54 - edsa 55 - ocelot 56 - ocelot-8021q 57 - rtl8_4 58 - rtl8_4t 59 - seville 60 61 phy-handle: true 62 63 phy-mode: true 64 65 fixed-link: true 66 67 mac-address: true 68 69 sfp: true 70 71 managed: true 72 73 rx-internal-delay-ps: true 74 75 tx-internal-delay-ps: true 76 77required: 78 - reg 79 80# CPU and DSA ports must have phylink-compatible link descriptions 81if: 82 oneOf: 83 - required: [ ethernet ] 84 - required: [ link ] 85then: 86 allOf: 87 - required: 88 - phy-mode 89 - oneOf: 90 - required: 91 - fixed-link 92 - required: 93 - phy-handle 94 - required: 95 - managed 96 97additionalProperties: true 98 99... 100