xref: /freebsd/sys/contrib/device-tree/Bindings/net/qca,ar803x.yaml (revision 5def4c47d4bd90b209b9b4a4ba9faec15846d8fd)
1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0+
2c66ec88fSEmmanuel Vadot%YAML 1.2
3c66ec88fSEmmanuel Vadot---
4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/net/qca,ar803x.yaml#
5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6c66ec88fSEmmanuel Vadot
7c66ec88fSEmmanuel Vadottitle: Qualcomm Atheros AR803x PHY
8c66ec88fSEmmanuel Vadot
9c66ec88fSEmmanuel Vadotmaintainers:
10c66ec88fSEmmanuel Vadot  - Andrew Lunn <andrew@lunn.ch>
11c66ec88fSEmmanuel Vadot  - Florian Fainelli <f.fainelli@gmail.com>
12c66ec88fSEmmanuel Vadot  - Heiner Kallweit <hkallweit1@gmail.com>
13c66ec88fSEmmanuel Vadot
14c66ec88fSEmmanuel Vadotdescription: |
15c66ec88fSEmmanuel Vadot  Bindings for Qualcomm Atheros AR803x PHYs
16c66ec88fSEmmanuel Vadot
17c66ec88fSEmmanuel VadotallOf:
18c66ec88fSEmmanuel Vadot  - $ref: ethernet-phy.yaml#
19c66ec88fSEmmanuel Vadot
20c66ec88fSEmmanuel Vadotproperties:
21c66ec88fSEmmanuel Vadot  qca,clk-out-frequency:
22c66ec88fSEmmanuel Vadot    description: Clock output frequency in Hertz.
23c66ec88fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
24c66ec88fSEmmanuel Vadot    enum: [25000000, 50000000, 62500000, 125000000]
25c66ec88fSEmmanuel Vadot
26c66ec88fSEmmanuel Vadot  qca,clk-out-strength:
27c66ec88fSEmmanuel Vadot    description: Clock output driver strength.
28c66ec88fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
29c66ec88fSEmmanuel Vadot    enum: [0, 1, 2]
30c66ec88fSEmmanuel Vadot
31*5def4c47SEmmanuel Vadot  qca,disable-smarteee:
32*5def4c47SEmmanuel Vadot    description: Disable Atheros SmartEEE feature.
33*5def4c47SEmmanuel Vadot    type: boolean
34*5def4c47SEmmanuel Vadot
35c66ec88fSEmmanuel Vadot  qca,keep-pll-enabled:
36c66ec88fSEmmanuel Vadot    description: |
37c66ec88fSEmmanuel Vadot      If set, keep the PLL enabled even if there is no link. Useful if you
38c66ec88fSEmmanuel Vadot      want to use the clock output without an ethernet link.
39c66ec88fSEmmanuel Vadot
40c66ec88fSEmmanuel Vadot      Only supported on the AR8031.
41c66ec88fSEmmanuel Vadot    type: boolean
42c66ec88fSEmmanuel Vadot
43*5def4c47SEmmanuel Vadot  qca,smarteee-tw-us-100m:
44*5def4c47SEmmanuel Vadot    description: EEE Tw parameter for 100M links.
45*5def4c47SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
46*5def4c47SEmmanuel Vadot    minimum: 1
47*5def4c47SEmmanuel Vadot    maximum: 255
48*5def4c47SEmmanuel Vadot
49*5def4c47SEmmanuel Vadot  qca,smarteee-tw-us-1g:
50*5def4c47SEmmanuel Vadot    description: EEE Tw parameter for gigabit links.
51*5def4c47SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
52*5def4c47SEmmanuel Vadot    minimum: 1
53*5def4c47SEmmanuel Vadot    maximum: 255
54*5def4c47SEmmanuel Vadot
55c66ec88fSEmmanuel Vadot  vddio-supply:
56c66ec88fSEmmanuel Vadot    description: |
57c66ec88fSEmmanuel Vadot      RGMII I/O voltage regulator (see regulator/regulator.yaml).
58c66ec88fSEmmanuel Vadot
59c66ec88fSEmmanuel Vadot      The PHY supports RGMII I/O voltages of 1.5V, 1.8V and 2.5V. You can
60c66ec88fSEmmanuel Vadot      either connect this to the vddio-regulator (1.5V / 1.8V) or the
61c66ec88fSEmmanuel Vadot      vddh-regulator (2.5V).
62c66ec88fSEmmanuel Vadot
63c66ec88fSEmmanuel Vadot      Only supported on the AR8031.
64c66ec88fSEmmanuel Vadot
65c66ec88fSEmmanuel Vadot  vddio-regulator:
66c66ec88fSEmmanuel Vadot    type: object
67c66ec88fSEmmanuel Vadot    description:
68c66ec88fSEmmanuel Vadot      Initial data for the VDDIO regulator. Set this to 1.5V or 1.8V.
69c66ec88fSEmmanuel Vadot    $ref: /schemas/regulator/regulator.yaml
70c66ec88fSEmmanuel Vadot
71c66ec88fSEmmanuel Vadot  vddh-regulator:
72c66ec88fSEmmanuel Vadot    type: object
73c66ec88fSEmmanuel Vadot    description:
74c66ec88fSEmmanuel Vadot      Dummy subnode to model the external connection of the PHY VDDH
75c66ec88fSEmmanuel Vadot      regulator to VDDIO.
76c66ec88fSEmmanuel Vadot    $ref: /schemas/regulator/regulator.yaml
77c66ec88fSEmmanuel Vadot
786be33864SEmmanuel VadotunevaluatedProperties: false
796be33864SEmmanuel Vadot
80c66ec88fSEmmanuel Vadotexamples:
81c66ec88fSEmmanuel Vadot  - |
82c66ec88fSEmmanuel Vadot    #include <dt-bindings/net/qca-ar803x.h>
83c66ec88fSEmmanuel Vadot
84c66ec88fSEmmanuel Vadot    ethernet {
85c66ec88fSEmmanuel Vadot        #address-cells = <1>;
86c66ec88fSEmmanuel Vadot        #size-cells = <0>;
87c66ec88fSEmmanuel Vadot
88c66ec88fSEmmanuel Vadot        phy-mode = "rgmii-id";
89c66ec88fSEmmanuel Vadot
90c66ec88fSEmmanuel Vadot        ethernet-phy@0 {
91c66ec88fSEmmanuel Vadot            reg = <0>;
92c66ec88fSEmmanuel Vadot
93c66ec88fSEmmanuel Vadot            qca,clk-out-frequency = <125000000>;
94c66ec88fSEmmanuel Vadot            qca,clk-out-strength = <AR803X_STRENGTH_FULL>;
95c66ec88fSEmmanuel Vadot
96c66ec88fSEmmanuel Vadot            vddio-supply = <&vddio>;
97c66ec88fSEmmanuel Vadot
98c66ec88fSEmmanuel Vadot            vddio: vddio-regulator {
99c66ec88fSEmmanuel Vadot                regulator-min-microvolt = <1800000>;
100c66ec88fSEmmanuel Vadot                regulator-max-microvolt = <1800000>;
101c66ec88fSEmmanuel Vadot            };
102c66ec88fSEmmanuel Vadot        };
103c66ec88fSEmmanuel Vadot    };
104c66ec88fSEmmanuel Vadot  - |
105c66ec88fSEmmanuel Vadot    #include <dt-bindings/net/qca-ar803x.h>
106c66ec88fSEmmanuel Vadot
107c66ec88fSEmmanuel Vadot    ethernet {
108c66ec88fSEmmanuel Vadot        #address-cells = <1>;
109c66ec88fSEmmanuel Vadot        #size-cells = <0>;
110c66ec88fSEmmanuel Vadot
111c66ec88fSEmmanuel Vadot        phy-mode = "rgmii-id";
112c66ec88fSEmmanuel Vadot
113c66ec88fSEmmanuel Vadot        ethernet-phy@0 {
114c66ec88fSEmmanuel Vadot            reg = <0>;
115c66ec88fSEmmanuel Vadot
116c66ec88fSEmmanuel Vadot            qca,clk-out-frequency = <50000000>;
117c66ec88fSEmmanuel Vadot            qca,keep-pll-enabled;
118c66ec88fSEmmanuel Vadot
119c66ec88fSEmmanuel Vadot            vddio-supply = <&vddh>;
120c66ec88fSEmmanuel Vadot
121c66ec88fSEmmanuel Vadot            vddh: vddh-regulator {
122c66ec88fSEmmanuel Vadot            };
123c66ec88fSEmmanuel Vadot        };
124c66ec88fSEmmanuel Vadot    };
125