1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
5 $id: "http://devicetree.org/schemas/phy/qcom,qusb2-phy.yaml#"
6 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
8 title: Qualcomm QUSB2 phy controller
11 - Manu Gautam <mgautam@codeaurora.org>
14 QUSB2 controller supports LS/FS/HS usb connectivity on Qualcomm chipsets.
21 - qcom,msm8996-qusb2-phy
22 - qcom,msm8998-qusb2-phy
25 - qcom,sc7180-qusb2-phy
26 - qcom,sdm845-qusb2-phy
27 - const: qcom,qusb2-v2-phy
38 - description: phy config clock
39 - description: 19.2 MHz ref clk
40 - description: phy interface clock (Optional)
52 Phandle to 1.8V regulator supply to PHY refclk pll block.
56 Phandle to 3.1V regulator supply to Dp/Dm port signals.
61 Phandle to reset to phy block.
66 Phandle to nvmem cell that contains 'HS Tx trim'
67 tuning parameter value for qusb2 phy.
71 Phandle to TCSR syscon register region.
72 $ref: /schemas/types.yaml#/definitions/phandle
78 const: qcom,qusb2-v2-phy
81 qcom,imp-res-offset-value:
83 It is a 6 bit value that specifies offset to be
84 added to PHY refgen RESCODE via IMP_CTRL1 register. It is a PHY
85 tuning parameter that may vary for different boards of same SOC.
87 - $ref: /schemas/types.yaml#/definitions/uint32
94 It is a 6 bit value that specifies bias-ctrl-value. It is a PHY
95 tuning parameter that may vary for different boards of same SOC.
97 - $ref: /schemas/types.yaml#/definitions/uint32
102 qcom,charge-ctrl-value:
104 It is a 2 bit value that specifies charge-ctrl-value. It is a PHY
105 tuning parameter that may vary for different boards of same SOC.
107 - $ref: /schemas/types.yaml#/definitions/uint32
112 qcom,hstx-trim-value:
114 It is a 4 bit value that specifies tuning for HSTX
116 Possible range is - 15mA to 24mA (stepsize of 600 uA).
117 See dt-bindings/phy/phy-qcom-qusb2.h for applicable values.
119 - $ref: /schemas/types.yaml#/definitions/uint32
124 qcom,preemphasis-level:
126 It is a 2 bit value that specifies pre-emphasis level.
127 Possible range is 0 to 15% (stepsize of 5%).
128 See dt-bindings/phy/phy-qcom-qusb2.h for applicable values.
130 - $ref: /schemas/types.yaml#/definitions/uint32
135 qcom,preemphasis-width:
137 It is a 1 bit value that specifies how long the HSTX
138 pre-emphasis (specified using qcom,preemphasis-level) must be in
139 effect. Duration could be half-bit of full-bit.
140 See dt-bindings/phy/phy-qcom-qusb2.h for applicable values.
142 - $ref: /schemas/types.yaml#/definitions/uint32
147 qcom,hsdisc-trim-value:
149 It is a 2 bit value tuning parameter that control disconnect
150 threshold and may vary for different boards of same SOC.
152 - $ref: /schemas/types.yaml#/definitions/uint32
164 - vdda-phy-dpdm-supply
170 #include <dt-bindings/clock/qcom,gcc-msm8996.h>
171 hsusb_phy: phy@7411000 {
172 compatible = "qcom,msm8996-qusb2-phy";
173 reg = <0x7411000 0x180>;
176 clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
177 <&gcc GCC_RX1_USB2_CLKREF_CLK>;
178 clock-names = "cfg_ahb", "ref";
180 vdda-pll-supply = <&pm8994_l12>;
181 vdda-phy-dpdm-supply = <&pm8994_l24>;
183 resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
184 nvmem-cells = <&qusb2p_hstx_trim>;