1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: "http://devicetree.org/schemas/phy/qcom,usb-snps-femto-v2.yaml#"
5$schema: "http://devicetree.org/meta-schemas/core.yaml#"
6
7title: Qualcomm Synopsys Femto High-Speed USB PHY V2
8
9maintainers:
10  - Wesley Cheng <quic_wcheng@quicinc.com>
11
12description: |
13  Qualcomm High-Speed USB PHY
14
15properties:
16  compatible:
17    enum:
18      - qcom,usb-snps-hs-5nm-phy
19      - qcom,usb-snps-hs-7nm-phy
20      - qcom,sc7280-usb-hs-phy
21      - qcom,sc8180x-usb-hs-phy
22      - qcom,sc8280xp-usb-hs-phy
23      - qcom,sm6375-usb-hs-phy
24      - qcom,sm8150-usb-hs-phy
25      - qcom,sm8250-usb-hs-phy
26      - qcom,sm8350-usb-hs-phy
27      - qcom,sm8450-usb-hs-phy
28      - qcom,usb-snps-femto-v2-phy
29
30  reg:
31    maxItems: 1
32
33  "#phy-cells":
34    const: 0
35
36  clocks:
37    items:
38      - description: rpmhcc ref clock
39
40  clock-names:
41    items:
42      - const: ref
43
44  resets:
45    items:
46      - description: PHY core reset
47
48  vdda-pll-supply:
49    description: phandle to the regulator VDD supply node.
50
51  vdda18-supply:
52    description: phandle to the regulator 1.8V supply node.
53
54  vdda33-supply:
55    description: phandle to the regulator 3.3V supply node.
56
57  qcom,hs-disconnect-bp:
58    description:
59      This adjusts the voltage level for the threshold used to
60      detect a disconnect event at the host.
61      The hardware accepts only discrete values. The value closest to the
62      provided input will be chosen as the override value for this param.
63    minimum: -272
64    maximum: 2156
65
66  qcom,squelch-detector-bp:
67    description:
68      This adjusts the voltage level for the threshold used to
69      detect valid high-speed data.
70      The hardware accepts only discrete values. The value closest to the
71      provided input will be chosen as the override value for this param.
72    minimum: -2090
73    maximum: 1590
74
75  qcom,hs-amplitude-bp:
76    description:
77      This adjusts the high-speed DC level voltage.
78      The hardware accepts only discrete values. The value closest to the
79      provided input will be chosen as the override value for this param.
80    minimum: -660
81    maximum: 2670
82
83  qcom,pre-emphasis-duration-bp:
84    description:
85      This signal controls the duration for which the
86      HS pre-emphasis current is sourced onto DP<#> or DM<#>.
87      The HS Transmitter pre-emphasis duration is defined in terms of
88      unit amounts. One unit of pre-emphasis duration is approximately
89      650 ps and is defined as 1X pre-emphasis duration.
90      The hardware accepts only discrete values. The value closest to the
91      provided input will be chosen as the override value for this param.
92    minimum: 10000
93    maximum: 20000
94
95  qcom,pre-emphasis-amplitude-bp:
96    description:
97      This signal controls the amount of current sourced to
98      DP<#> and DM<#> after a J-to-K or K-to-J transition.
99      The HS Transmitter pre-emphasis current is defined in terms of unit
100      amounts. One unit amount is approximately 2 mA and is defined as
101      1X pre-emphasis current.
102      The hardware accepts only discrete values. The value closest to the
103      provided input will be chosen as the override value for this param.
104    minimum: 10000
105    maximum: 40000
106
107  qcom,hs-rise-fall-time-bp:
108    description:
109      This adjusts the rise/fall times of the high-speed waveform.
110      The hardware accepts only discrete values. The value closest to the
111      provided input will be chosen as the override value for this param.
112    minimum: -4100
113    maximum: 5430
114
115  qcom,hs-crossover-voltage-microvolt:
116    description:
117      This adjusts the voltage at which the DP<#> and DM<#>
118      signals cross while transmitting in HS mode.
119      The hardware accepts only discrete values. The value closest to the
120      provided input will be chosen as the override value for this param.
121    minimum: -31000
122    maximum: 28000
123
124  qcom,hs-output-impedance-micro-ohms:
125    description:
126      In some applications, there can be significant series resistance
127      on the D+ and D- paths between the transceiver and cable. This adjusts
128      the driver source impedance to compensate for added series
129      resistance on the USB. The hardware accepts only discrete values. The
130      value closest to the provided input will be chosen as the override value
131      for this param.
132    minimum: -2300000
133    maximum: 6100000
134
135  qcom,ls-fs-output-impedance-bp:
136    description:
137      This adjusts the low- and full-speed single-ended source
138      impedance while driving high. The following adjustment values are based
139      on nominal process, voltage, and temperature.
140      The hardware accepts only discrete values. The value closest to the
141      provided input will be chosen as the override value for this param.
142    minimum: -1053
143    maximum: 1310
144
145required:
146  - compatible
147  - reg
148  - "#phy-cells"
149  - clocks
150  - clock-names
151  - resets
152  - vdda-pll-supply
153  - vdda18-supply
154  - vdda33-supply
155
156additionalProperties: false
157
158examples:
159  - |
160    #include <dt-bindings/clock/qcom,rpmh.h>
161    #include <dt-bindings/clock/qcom,gcc-sm8150.h>
162    phy@88e2000 {
163        compatible = "qcom,sm8150-usb-hs-phy";
164        reg = <0x088e2000 0x400>;
165        #phy-cells = <0>;
166
167        clocks = <&rpmhcc RPMH_CXO_CLK>;
168        clock-names = "ref";
169
170        resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
171
172        vdda-pll-supply = <&vdd_usb_hs_core>;
173        vdda33-supply = <&vdda_usb_hs_3p1>;
174        vdda18-supply = <&vdda_usb_hs_1p8>;
175    };
176...
177