Documentation/devicetree/bindings/net/dsa/dsa-port.yaml

Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/net/dsa/dsa-port.yaml

File Facts

System
Linux kernel
Corpus path
Documentation/devicetree/bindings/net/dsa/dsa-port.yaml
Extension
.yaml
Size
2109 bytes
Lines
82
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: configuration, schema, or hardware description
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/dsa/dsa-port.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Generic DSA Switch Port

maintainers:
  - Andrew Lunn <andrew@lunn.ch>
  - Florian Fainelli <f.fainelli@gmail.com>
  - Vladimir Oltean <olteanv@gmail.com>

description:
  A DSA switch port is a component of a switch that manages one MAC, and can
  pass Ethernet frames. It can act as a stanadard Ethernet switch port, or have
  DSA-specific functionality.

$ref: /schemas/net/ethernet-switch-port.yaml#

properties:
  reg:
    items:
      - description: Port number

  label:
    description:
      Describes the label associated with this port, which will become
      the netdev name
    $ref: /schemas/types.yaml#/definitions/string

  link:
    description:
      Should be a list of phandles to other switch's DSA port. This
      port is used as the outgoing port towards the phandle ports. The
      full routing information must be given, not just the one hop
      routes to neighbouring switches
    $ref: /schemas/types.yaml#/definitions/phandle-array
    items:
      maxItems: 1

  ethernet:
    description:
      Should be a phandle to a valid Ethernet device node.  This host
      device is what the switch port is connected to
    $ref: /schemas/types.yaml#/definitions/phandle

  dsa-tag-protocol:
    description:
      Instead of the default, the switch will use this tag protocol if
      possible. Useful when a device supports multiple protocols and
      the default is incompatible with the Ethernet device.
    enum:
      - dsa
      - edsa
      - ocelot
      - ocelot-8021q
      - rtl8_4
      - rtl8_4t
      - seville

# CPU and DSA ports must have phylink-compatible link descriptions
if:
  oneOf:
    - required: [ ethernet ]
    - required: [ link ]
then:
  allOf:
    - required:
        - phy-mode

Annotation

Implementation Notes