File Index
Files and directories
Sign in
FILE

mscc-phy-vsc8531.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/net/mscc-phy-vsc8531.yaml YAML
  1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2%YAML 1.2
  3---
  4$id: http://devicetree.org/schemas/net/mscc-phy-vsc8531.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Microsemi VSC8531 Gigabit Ethernet PHY
  8
  9maintainers:
 10  - Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
 11
 12description:
 13  The VSC8531 is a Gigabit Ethernet PHY with configurable MAC interface
 14  drive strength and LED modes.
 15
 16allOf:
 17  - $ref: ethernet-phy.yaml#
 18
 19select:
 20  properties:
 21    compatible:
 22      contains:
 23        enum:
 24          - ethernet-phy-id0007.0570 # VSC8531
 25          - ethernet-phy-id0007.0772 # VSC8541
 26  required:
 27    - compatible
 28
 29properties:
 30  compatible:
 31    items:
 32      - enum:
 33          - ethernet-phy-id0007.0570 # VSC8531
 34          - ethernet-phy-id0007.0772 # VSC8541
 35      - const: ethernet-phy-ieee802.3-c22
 36
 37  vsc8531,vddmac:
 38    $ref: /schemas/types.yaml#/definitions/uint32
 39    description:
 40      The VDDMAC voltage in millivolts. This property is used in combination
 41      with the edge-slowdown property to control the drive strength of the
 42      MAC interface output signals.
 43    enum: [3300, 2500, 1800, 1500]
 44    default: 3300
 45
 46  vsc8531,edge-slowdown:
 47    $ref: /schemas/types.yaml#/definitions/uint32
 48    description: >
 49      Percentage by which the edge rate should be slowed down relative to
 50      the fastest possible edge time. This setting helps reduce electromagnetic
 51      interference (EMI) by adjusting the drive strength of the MAC interface
 52      output signals. Valid values depend on the vddmac voltage setting
 53      according to the edge rate change table in the datasheet.
 54
 55      - When vsc8531,vddmac = 3300 mV: allowed values are 0, 2, 4, 7, 10, 17, 29, and 53.
 56        (Recommended: 7)
 57      - When vsc8531,vddmac = 2500 mV: allowed values are 0, 3, 6, 10, 14, 23, 37, and 63.
 58        (Recommended: 10)
 59      - When vsc8531,vddmac = 1800 mV: allowed values are 0, 5, 9, 16, 23, 35, 52, and 76.
 60        (Recommended: 0)
 61      - When vsc8531,vddmac = 1500 mV: allowed values are 0, 6, 14, 21, 29, 42, 58, and 77.
 62        (Recommended: 0)
 63    enum: [0, 2, 3, 4, 5, 6, 7, 9, 10, 14, 16, 17, 21, 23, 29, 35, 37, 42, 52, 53, 58, 63, 76, 77]
 64    default: 0
 65
 66  vsc8531,led-0-mode:
 67    $ref: /schemas/types.yaml#/definitions/uint32
 68    description: LED[0] behavior mode. See include/dt-bindings/net/mscc-phy-vsc8531.h
 69      for available modes.
 70    minimum: 0
 71    maximum: 15
 72    default: 1
 73
 74  vsc8531,led-1-mode:
 75    $ref: /schemas/types.yaml#/definitions/uint32
 76    description: LED[1] behavior mode. See include/dt-bindings/net/mscc-phy-vsc8531.h
 77      for available modes.
 78    minimum: 0
 79    maximum: 15
 80    default: 2
 81
 82  vsc8531,led-2-mode:
 83    $ref: /schemas/types.yaml#/definitions/uint32
 84    description: LED[2] behavior mode. See include/dt-bindings/net/mscc-phy-vsc8531.h
 85      for available modes.
 86    minimum: 0
 87    maximum: 15
 88    default: 0
 89
 90  vsc8531,led-3-mode:
 91    $ref: /schemas/types.yaml#/definitions/uint32
 92    description: LED[3] behavior mode. See include/dt-bindings/net/mscc-phy-vsc8531.h
 93      for available modes.
 94    minimum: 0
 95    maximum: 15
 96    default: 8
 97
 98  load-save-gpios:
 99    description: GPIO phandle used for the load/save operation of the PTP hardware
100      clock (PHC).
101    maxItems: 1
102
103dependencies:
104  vsc8531,edge-slowdown:
105    - vsc8531,vddmac
106
107required:
108  - compatible
109  - reg
110
111unevaluatedProperties: false
112
113examples:
114  - |
115    #include <dt-bindings/gpio/gpio.h>
116    #include <dt-bindings/net/mscc-phy-vsc8531.h>
117
118    mdio {
119        #address-cells = <1>;
120        #size-cells = <0>;
121
122        ethernet-phy@0 {
123            compatible = "ethernet-phy-id0007.0772", "ethernet-phy-ieee802.3-c22";
124            reg = <0>;
125            vsc8531,vddmac = <3300>;
126            vsc8531,edge-slowdown = <7>;
127            vsc8531,led-0-mode = <VSC8531_LINK_1000_ACTIVITY>;
128            vsc8531,led-1-mode = <VSC8531_LINK_100_ACTIVITY>;
129            load-save-gpios = <&gpio 10 GPIO_ACTIVE_HIGH>;
130        };
131    };
~/ Read-only file preview.