1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
5 $id: "http://devicetree.org/schemas/phy/qcom,qmp-phy.yaml#"
6 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
8 title: Qualcomm QMP PHY controller
11 - Manu Gautam <mgautam@codeaurora.org>
14 QMP phy controller supports physical layer functionality for a number of
15 controllers on Qualcomm chipsets, such as, PCIe, UFS, and USB.
20 - qcom,ipq8074-qmp-pcie-phy
21 - qcom,ipq8074-qmp-usb3-phy
22 - qcom,msm8996-qmp-pcie-phy
23 - qcom,msm8996-qmp-ufs-phy
24 - qcom,msm8996-qmp-usb3-phy
25 - qcom,msm8998-qmp-pcie-phy
26 - qcom,msm8998-qmp-ufs-phy
27 - qcom,msm8998-qmp-usb3-phy
28 - qcom,sdm845-qhp-pcie-phy
29 - qcom,sdm845-qmp-pcie-phy
30 - qcom,sdm845-qmp-ufs-phy
31 - qcom,sdm845-qmp-usb3-uni-phy
32 - qcom,sm8150-qmp-ufs-phy
33 - qcom,sm8250-qmp-ufs-phy
37 - description: Address and length of PHY's common serdes block.
68 Phandle to a regulator supply to PHY core block.
72 Phandle to 1.8V regulator supply to PHY refclk pll block.
76 Phandle to a regulator supply to any specific refclk
84 Each device node of QMP phy is required to have as many child nodes as
85 the number of lanes the PHY has.
101 additionalProperties: false
109 - qcom,sdm845-qmp-usb3-uni-phy
114 - description: Phy aux clock.
115 - description: Phy config clock.
116 - description: 19.2 MHz ref clk.
117 - description: Phy common block aux clock.
126 - description: reset of phy block.
127 - description: phy common block reset.
137 - qcom,msm8996-qmp-pcie-phy
142 - description: Phy aux clock.
143 - description: Phy config clock.
144 - description: 19.2 MHz ref clk.
152 - description: reset of phy block.
153 - description: phy common block reset.
154 - description: phy's ahb cfg block reset.
165 - qcom,ipq8074-qmp-usb3-phy
166 - qcom,msm8996-qmp-usb3-phy
167 - qcom,msm8998-qmp-pcie-phy
168 - qcom,msm8998-qmp-usb3-phy
173 - description: Phy aux clock.
174 - description: Phy config clock.
175 - description: 19.2 MHz ref clk.
183 - description: reset of phy block.
184 - description: phy common block reset.
194 - qcom,msm8996-qmp-ufs-phy
199 - description: 19.2 MHz ref clk.
205 - description: PHY reset in the UFS controller.
214 - qcom,msm8998-qmp-ufs-phy
215 - qcom,sdm845-qmp-ufs-phy
216 - qcom,sm8150-qmp-ufs-phy
217 - qcom,sm8250-qmp-ufs-phy
222 - description: 19.2 MHz ref clk.
223 - description: Phy reference aux clock.
230 - description: PHY reset in the UFS controller.
239 - qcom,ipq8074-qmp-pcie-phy
244 - description: pipe clk.
250 - description: reset of phy block.
251 - description: phy common block reset.
261 - qcom,sdm845-qhp-pcie-phy
262 - qcom,sdm845-qmp-pcie-phy
267 - description: Phy aux clock.
268 - description: Phy config clock.
269 - description: 19.2 MHz ref clk.
270 - description: Phy refgen clk.
279 - description: reset of phy block.
286 #include <dt-bindings/clock/qcom,gcc-sdm845.h>
287 usb_2_qmpphy: phy-wrapper@88eb000 {
288 compatible = "qcom,sdm845-qmp-usb3-uni-phy";
289 reg = <0x088eb000 0x18c>;
291 #address-cells = <1>;
293 ranges = <0x0 0x088eb000 0x2000>;
295 clocks = <&gcc GCC_USB3_SEC_PHY_AUX_CLK >,
296 <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
297 <&gcc GCC_USB3_SEC_CLKREF_CLK>,
298 <&gcc GCC_USB3_SEC_PHY_COM_AUX_CLK>;
299 clock-names = "aux", "cfg_ahb", "ref", "com_aux";
301 resets = <&gcc GCC_USB3PHY_PHY_SEC_BCR>,
302 <&gcc GCC_USB3_PHY_SEC_BCR>;
303 reset-names = "phy", "common";
305 vdda-phy-supply = <&vdda_usb2_ss_1p2>;
306 vdda-pll-supply = <&vdda_usb2_ss_core>;
308 usb_2_ssphy: phy@200 {
315 clocks = <&gcc GCC_USB3_SEC_PHY_PIPE_CLK>;
316 clock-names = "pipe0";
317 clock-output-names = "usb3_uni_phy_pipe_clk_src";