| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/net/dsa/dsa.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Ethernet Switch |
| |
| maintainers: |
| - Andrew Lunn <andrew@lunn.ch> |
| - Florian Fainelli <f.fainelli@gmail.com> |
| - Vladimir Oltean <olteanv@gmail.com> |
| |
| description: |
| This binding represents Ethernet Switches which have a dedicated CPU |
| port. That port is usually connected to an Ethernet Controller of the |
| SoC. Such setups are typical for embedded devices. |
| |
| select: false |
| |
| $ref: /schemas/net/ethernet-switch.yaml# |
| |
| properties: |
| dsa,member: |
| minItems: 2 |
| maxItems: 2 |
| description: |
| A two element list indicates which DSA cluster, and position within the |
| cluster a switch takes. <0 0> is cluster 0, switch 0. <0 1> is cluster 0, |
| switch 1. <1 0> is cluster 1, switch 0. A switch not part of any cluster |
| (single device hanging off a CPU port) must not specify this property |
| $ref: /schemas/types.yaml#/definitions/uint32-array |
| |
| additionalProperties: true |
| |
| $defs: |
| ethernet-ports: |
| description: A DSA switch without any extra port properties |
| $ref: '#' |
| |
| patternProperties: |
| "^(ethernet-)?ports$": |
| patternProperties: |
| "^(ethernet-)?port@[0-9a-f]+$": |
| description: Ethernet switch ports |
| $ref: dsa-port.yaml# |
| unevaluatedProperties: false |
| |
| oneOf: |
| - required: |
| - ports |
| - required: |
| - ethernet-ports |
| |
| ... |