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.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Ethernet Switch Device Tree Bindings 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 This binding represents Ethernet Switches which have a dedicated CPU 16 port. That port is usually connected to an Ethernet Controller of the 17 SoC. Such setups are typical for embedded devices. 18 19select: false 20 21properties: 22 $nodename: 23 pattern: "^switch(@.*)?$" 24 25 dsa,member: 26 minItems: 2 27 maxItems: 2 28 description: 29 A two element list indicates which DSA cluster, and position within the 30 cluster a switch takes. <0 0> is cluster 0, switch 0. <0 1> is cluster 0, 31 switch 1. <1 0> is cluster 1, switch 0. A switch not part of any cluster 32 (single device hanging off a CPU port) must not specify this property 33 $ref: /schemas/types.yaml#/definitions/uint32-array 34 35patternProperties: 36 "^(ethernet-)?ports$": 37 type: object 38 properties: 39 '#address-cells': 40 const: 1 41 '#size-cells': 42 const: 0 43 44 patternProperties: 45 "^(ethernet-)?port@[0-9]+$": 46 type: object 47 description: Ethernet switch ports 48 49 properties: 50 reg: 51 description: Port number 52 53 label: 54 description: 55 Describes the label associated with this port, which will become 56 the netdev name 57 $ref: /schemas/types.yaml#definitions/string 58 59 link: 60 description: 61 Should be a list of phandles to other switch's DSA port. This 62 port is used as the outgoing port towards the phandle ports. The 63 full routing information must be given, not just the one hop 64 routes to neighbouring switches 65 $ref: /schemas/types.yaml#definitions/phandle-array 66 67 ethernet: 68 description: 69 Should be a phandle to a valid Ethernet device node. This host 70 device is what the switch port is connected to 71 $ref: /schemas/types.yaml#definitions/phandle 72 73 phy-handle: true 74 75 phy-mode: true 76 77 fixed-link: true 78 79 mac-address: true 80 81 required: 82 - reg 83 84 additionalProperties: false 85 86oneOf: 87 - required: 88 - ports 89 - required: 90 - ethernet-ports 91 92additionalProperties: true 93 94... 95