File Index
Files and directories
Sign in
FILE

qca,ar803x.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/net/qca,ar803x.yaml YAML
  1# SPDX-License-Identifier: GPL-2.0+
  2%YAML 1.2
  3---
  4$id: http://devicetree.org/schemas/net/qca,ar803x.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Qualcomm Atheros AR803x PHY
  8
  9maintainers:
 10  - Andrew Lunn <andrew@lunn.ch>
 11  - Florian Fainelli <f.fainelli@gmail.com>
 12  - Heiner Kallweit <hkallweit1@gmail.com>
 13
 14description: |
 15  Bindings for Qualcomm Atheros AR803x PHYs
 16
 17allOf:
 18  - $ref: ethernet-phy.yaml#
 19  - if:
 20      properties:
 21        compatible:
 22          contains:
 23            enum:
 24              - ethernet-phy-id004d.d0c0
 25
 26    then:
 27      properties:
 28        reg:
 29          const: 7  # This PHY is always at MDIO address 7 in the IPQ5018 SoC
 30
 31        resets:
 32          items:
 33            - description:
 34                GE PHY MISC reset which triggers a reset across MDC, DSP, RX, and TX lines.
 35
 36        qcom,dac-preset-short-cable:
 37          description:
 38            Set if this phy is connected to another phy to adjust the values for
 39            MDAC and EDAC to adjust amplitude, bias current settings, and error
 40            detection and correction algorithm to accommodate for short cable length.
 41            If not set, DAC values are not modified and it is assumed the MDI output pins
 42            of this PHY are directly connected to an RJ45 connector.
 43          type: boolean
 44
 45properties:
 46  compatible:
 47    enum:
 48      - ethernet-phy-id004d.d0c0
 49
 50  qca,clk-out-frequency:
 51    description: Clock output frequency in Hertz.
 52    $ref: /schemas/types.yaml#/definitions/uint32
 53    enum: [25000000, 50000000, 62500000, 125000000]
 54
 55  qca,clk-out-strength:
 56    description: Clock output driver strength.
 57    $ref: /schemas/types.yaml#/definitions/uint32
 58    enum: [0, 1, 2]
 59
 60  qca,disable-smarteee:
 61    description: Disable Atheros SmartEEE feature.
 62    type: boolean
 63
 64  qca,keep-pll-enabled:
 65    description: |
 66      If set, keep the PLL enabled even if there is no link. Useful if you
 67      want to use the clock output without an ethernet link.
 68
 69      Only supported on the AR8031.
 70    type: boolean
 71
 72  qca,disable-hibernation-mode:
 73    description: |
 74      Disable Atheros AR803X PHYs hibernation mode. If present, indicates
 75      that the hardware of PHY will not enter power saving mode when the
 76      cable is disconnected. And the RX_CLK always keeps outputting a
 77      valid clock.
 78    type: boolean
 79
 80  qca,smarteee-tw-us-100m:
 81    description: EEE Tw parameter for 100M links.
 82    $ref: /schemas/types.yaml#/definitions/uint32
 83    minimum: 1
 84    maximum: 255
 85
 86  qca,smarteee-tw-us-1g:
 87    description: EEE Tw parameter for gigabit links.
 88    $ref: /schemas/types.yaml#/definitions/uint32
 89    minimum: 1
 90    maximum: 255
 91
 92  vddio-supply:
 93    description: |
 94      RGMII I/O voltage regulator (see regulator/regulator.yaml).
 95
 96      The PHY supports RGMII I/O voltages of 1.5V, 1.8V and 2.5V. You can
 97      either connect this to the vddio-regulator (1.5V / 1.8V) or the
 98      vddh-regulator (2.5V).
 99
100      Only supported on the AR8031.
101
102  vddio-regulator:
103    type: object
104    description:
105      Initial data for the VDDIO regulator. Set this to 1.5V or 1.8V.
106    $ref: /schemas/regulator/regulator.yaml
107    unevaluatedProperties: false
108
109  vddh-regulator:
110    type: object
111    description:
112      Dummy subnode to model the external connection of the PHY VDDH
113      regulator to VDDIO.
114    $ref: /schemas/regulator/regulator.yaml
115    unevaluatedProperties: false
116
117unevaluatedProperties: false
118
119examples:
120  - |
121    #include <dt-bindings/net/qca-ar803x.h>
122
123    ethernet {
124        #address-cells = <1>;
125        #size-cells = <0>;
126
127        phy-mode = "rgmii-id";
128
129        ethernet-phy@0 {
130            reg = <0>;
131
132            qca,clk-out-frequency = <125000000>;
133            qca,clk-out-strength = <AR803X_STRENGTH_FULL>;
134
135            vddio-supply = <&vddio>;
136
137            vddio: vddio-regulator {
138                regulator-min-microvolt = <1800000>;
139                regulator-max-microvolt = <1800000>;
140            };
141        };
142    };
143  - |
144    #include <dt-bindings/net/qca-ar803x.h>
145
146    ethernet {
147        #address-cells = <1>;
148        #size-cells = <0>;
149
150        phy-mode = "rgmii-id";
151
152        ethernet-phy@0 {
153            reg = <0>;
154
155            qca,clk-out-frequency = <50000000>;
156            qca,keep-pll-enabled;
157
158            vddio-supply = <&vddh>;
159
160            vddh: vddh-regulator {
161            };
162        };
163    };
164  - |
165    #include <dt-bindings/reset/qcom,gcc-ipq5018.h>
166
167    mdio {
168        #address-cells = <1>;
169        #size-cells = <0>;
170
171        ge_phy: ethernet-phy@7 {
172            compatible = "ethernet-phy-id004d.d0c0";
173            reg = <7>;
174
175            resets = <&gcc GCC_GEPHY_MISC_ARES>;
176        };
177    };
~/ Read-only file preview.