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 pll block.
83 Each device node of QMP phy is required to have as many child nodes as
84 the number of lanes the PHY has.
100 additionalProperties: false
108 - qcom,sdm845-qmp-usb3-uni-phy
113 - description: Phy aux clock.
114 - description: Phy config clock.
115 - description: 19.2 MHz ref clk.
116 - description: Phy common block aux clock.
125 - description: reset of phy block.
126 - description: phy common block reset.
136 - qcom,msm8996-qmp-pcie-phy
141 - description: Phy aux clock.
142 - description: Phy config clock.
143 - description: 19.2 MHz ref clk.
151 - description: reset of phy block.
152 - description: phy common block reset.
153 - description: phy's ahb cfg block reset.
164 - qcom,ipq8074-qmp-usb3-phy
165 - qcom,msm8996-qmp-usb3-phy
166 - qcom,msm8998-qmp-pcie-phy
167 - qcom,msm8998-qmp-usb3-phy
172 - description: Phy aux clock.
173 - description: Phy config clock.
174 - description: 19.2 MHz ref clk.
182 - description: reset of phy block.
183 - description: phy common block reset.
193 - qcom,msm8996-qmp-ufs-phy
198 - description: 19.2 MHz ref clk.
204 - description: PHY reset in the UFS controller.
213 - qcom,msm8998-qmp-ufs-phy
214 - qcom,sdm845-qmp-ufs-phy
215 - qcom,sm8150-qmp-ufs-phy
216 - qcom,sm8250-qmp-ufs-phy
221 - description: 19.2 MHz ref clk.
222 - description: Phy reference aux clock.
229 - description: PHY reset in the UFS controller.
238 - qcom,ipq8074-qmp-pcie-phy
243 - description: pipe clk.
249 - description: reset of phy block.
250 - description: phy common block reset.
260 - qcom,sdm845-qhp-pcie-phy
261 - qcom,sdm845-qmp-pcie-phy
266 - description: Phy aux clock.
267 - description: Phy config clock.
268 - description: 19.2 MHz ref clk.
269 - description: Phy refgen clk.
278 - description: reset of phy block.
285 #include <dt-bindings/clock/qcom,gcc-sdm845.h>
286 usb_2_qmpphy: phy-wrapper@88eb000 {
287 compatible = "qcom,sdm845-qmp-usb3-uni-phy";
288 reg = <0x088eb000 0x18c>;
290 #address-cells = <1>;
292 ranges = <0x0 0x088eb000 0x2000>;
294 clocks = <&gcc GCC_USB3_SEC_PHY_AUX_CLK >,
295 <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
296 <&gcc GCC_USB3_SEC_CLKREF_CLK>,
297 <&gcc GCC_USB3_SEC_PHY_COM_AUX_CLK>;
298 clock-names = "aux", "cfg_ahb", "ref", "com_aux";
300 resets = <&gcc GCC_USB3PHY_PHY_SEC_BCR>,
301 <&gcc GCC_USB3_PHY_SEC_BCR>;
302 reset-names = "phy", "common";
304 vdda-phy-supply = <&vdda_usb2_ss_1p2>;
305 vdda-pll-supply = <&vdda_usb2_ss_core>;
307 usb_2_ssphy: phy@200 {
314 clocks = <&gcc GCC_USB3_SEC_PHY_PIPE_CLK>;
315 clock-names = "pipe0";
316 clock-output-names = "usb3_uni_phy_pipe_clk_src";