xref: /freebsd/sys/contrib/device-tree/Bindings/phy/qcom,sc8280xp-qmp-ufs-phy.yaml (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
18bab661aSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
28bab661aSEmmanuel Vadot%YAML 1.2
38bab661aSEmmanuel Vadot---
48bab661aSEmmanuel Vadot$id: http://devicetree.org/schemas/phy/qcom,sc8280xp-qmp-ufs-phy.yaml#
58bab661aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
68bab661aSEmmanuel Vadot
78bab661aSEmmanuel Vadottitle: Qualcomm QMP PHY controller (UFS, SC8280XP)
88bab661aSEmmanuel Vadot
98bab661aSEmmanuel Vadotmaintainers:
108bab661aSEmmanuel Vadot  - Vinod Koul <vkoul@kernel.org>
118bab661aSEmmanuel Vadot
128bab661aSEmmanuel Vadotdescription:
138bab661aSEmmanuel Vadot  The QMP PHY controller supports physical layer functionality for a number of
148bab661aSEmmanuel Vadot  controllers on Qualcomm chipsets, such as, PCIe, UFS, and USB.
158bab661aSEmmanuel Vadot
168bab661aSEmmanuel Vadotproperties:
178bab661aSEmmanuel Vadot  compatible:
188bab661aSEmmanuel Vadot    enum:
19aa1a8ff2SEmmanuel Vadot      - qcom,msm8996-qmp-ufs-phy
20aa1a8ff2SEmmanuel Vadot      - qcom,msm8998-qmp-ufs-phy
21fac71e4eSEmmanuel Vadot      - qcom,sa8775p-qmp-ufs-phy
2284943d6fSEmmanuel Vadot      - qcom,sc7280-qmp-ufs-phy
23aa1a8ff2SEmmanuel Vadot      - qcom,sc8180x-qmp-ufs-phy
248bab661aSEmmanuel Vadot      - qcom,sc8280xp-qmp-ufs-phy
25aa1a8ff2SEmmanuel Vadot      - qcom,sdm845-qmp-ufs-phy
26aa1a8ff2SEmmanuel Vadot      - qcom,sm6115-qmp-ufs-phy
27cb7aa33aSEmmanuel Vadot      - qcom,sm6125-qmp-ufs-phy
28aa1a8ff2SEmmanuel Vadot      - qcom,sm6350-qmp-ufs-phy
29fac71e4eSEmmanuel Vadot      - qcom,sm7150-qmp-ufs-phy
30aa1a8ff2SEmmanuel Vadot      - qcom,sm8150-qmp-ufs-phy
31aa1a8ff2SEmmanuel Vadot      - qcom,sm8250-qmp-ufs-phy
32aa1a8ff2SEmmanuel Vadot      - qcom,sm8350-qmp-ufs-phy
33aa1a8ff2SEmmanuel Vadot      - qcom,sm8450-qmp-ufs-phy
34cb7aa33aSEmmanuel Vadot      - qcom,sm8550-qmp-ufs-phy
35*8d13bc63SEmmanuel Vadot      - qcom,sm8650-qmp-ufs-phy
368bab661aSEmmanuel Vadot
378bab661aSEmmanuel Vadot  reg:
388bab661aSEmmanuel Vadot    maxItems: 1
398bab661aSEmmanuel Vadot
408bab661aSEmmanuel Vadot  clocks:
41aa1a8ff2SEmmanuel Vadot    minItems: 1
42fac71e4eSEmmanuel Vadot    maxItems: 3
438bab661aSEmmanuel Vadot
448bab661aSEmmanuel Vadot  clock-names:
45aa1a8ff2SEmmanuel Vadot    minItems: 1
468bab661aSEmmanuel Vadot    items:
478bab661aSEmmanuel Vadot      - const: ref
488bab661aSEmmanuel Vadot      - const: ref_aux
49fac71e4eSEmmanuel Vadot      - const: qref
508bab661aSEmmanuel Vadot
518bab661aSEmmanuel Vadot  power-domains:
528bab661aSEmmanuel Vadot    maxItems: 1
538bab661aSEmmanuel Vadot
548bab661aSEmmanuel Vadot  resets:
558bab661aSEmmanuel Vadot    maxItems: 1
568bab661aSEmmanuel Vadot
578bab661aSEmmanuel Vadot  reset-names:
588bab661aSEmmanuel Vadot    items:
598bab661aSEmmanuel Vadot      - const: ufsphy
608bab661aSEmmanuel Vadot
618bab661aSEmmanuel Vadot  vdda-phy-supply: true
628bab661aSEmmanuel Vadot
638bab661aSEmmanuel Vadot  vdda-pll-supply: true
648bab661aSEmmanuel Vadot
65cb7aa33aSEmmanuel Vadot  "#clock-cells":
66cb7aa33aSEmmanuel Vadot    const: 1
67cb7aa33aSEmmanuel Vadot
688bab661aSEmmanuel Vadot  "#phy-cells":
698bab661aSEmmanuel Vadot    const: 0
708bab661aSEmmanuel Vadot
718bab661aSEmmanuel Vadotrequired:
728bab661aSEmmanuel Vadot  - compatible
738bab661aSEmmanuel Vadot  - reg
748bab661aSEmmanuel Vadot  - clocks
758bab661aSEmmanuel Vadot  - clock-names
768bab661aSEmmanuel Vadot  - power-domains
778bab661aSEmmanuel Vadot  - resets
788bab661aSEmmanuel Vadot  - reset-names
798bab661aSEmmanuel Vadot  - vdda-phy-supply
808bab661aSEmmanuel Vadot  - vdda-pll-supply
818bab661aSEmmanuel Vadot  - "#phy-cells"
828bab661aSEmmanuel Vadot
83fac71e4eSEmmanuel VadotallOf:
84fac71e4eSEmmanuel Vadot  - if:
85fac71e4eSEmmanuel Vadot      properties:
86fac71e4eSEmmanuel Vadot        compatible:
87fac71e4eSEmmanuel Vadot          contains:
88fac71e4eSEmmanuel Vadot            enum:
89fac71e4eSEmmanuel Vadot              - qcom,sa8775p-qmp-ufs-phy
9084943d6fSEmmanuel Vadot              - qcom,sc7280-qmp-ufs-phy
91aa1a8ff2SEmmanuel Vadot              - qcom,sm8450-qmp-ufs-phy
92fac71e4eSEmmanuel Vadot    then:
93fac71e4eSEmmanuel Vadot      properties:
94fac71e4eSEmmanuel Vadot        clocks:
95f126890aSEmmanuel Vadot          minItems: 3
96fac71e4eSEmmanuel Vadot        clock-names:
97f126890aSEmmanuel Vadot          minItems: 3
98aa1a8ff2SEmmanuel Vadot
99aa1a8ff2SEmmanuel Vadot  - if:
100aa1a8ff2SEmmanuel Vadot      properties:
101aa1a8ff2SEmmanuel Vadot        compatible:
102aa1a8ff2SEmmanuel Vadot          contains:
103aa1a8ff2SEmmanuel Vadot            enum:
104aa1a8ff2SEmmanuel Vadot              - qcom,msm8998-qmp-ufs-phy
105aa1a8ff2SEmmanuel Vadot              - qcom,sc8180x-qmp-ufs-phy
106aa1a8ff2SEmmanuel Vadot              - qcom,sc8280xp-qmp-ufs-phy
107aa1a8ff2SEmmanuel Vadot              - qcom,sdm845-qmp-ufs-phy
108aa1a8ff2SEmmanuel Vadot              - qcom,sm6115-qmp-ufs-phy
109aa1a8ff2SEmmanuel Vadot              - qcom,sm6125-qmp-ufs-phy
110aa1a8ff2SEmmanuel Vadot              - qcom,sm6350-qmp-ufs-phy
111aa1a8ff2SEmmanuel Vadot              - qcom,sm7150-qmp-ufs-phy
112aa1a8ff2SEmmanuel Vadot              - qcom,sm8150-qmp-ufs-phy
113aa1a8ff2SEmmanuel Vadot              - qcom,sm8250-qmp-ufs-phy
114aa1a8ff2SEmmanuel Vadot              - qcom,sm8350-qmp-ufs-phy
115aa1a8ff2SEmmanuel Vadot              - qcom,sm8550-qmp-ufs-phy
116*8d13bc63SEmmanuel Vadot              - qcom,sm8650-qmp-ufs-phy
117aa1a8ff2SEmmanuel Vadot    then:
118fac71e4eSEmmanuel Vadot      properties:
119fac71e4eSEmmanuel Vadot        clocks:
120fac71e4eSEmmanuel Vadot          maxItems: 2
121fac71e4eSEmmanuel Vadot        clock-names:
122fac71e4eSEmmanuel Vadot          maxItems: 2
123fac71e4eSEmmanuel Vadot
124aa1a8ff2SEmmanuel Vadot  - if:
125aa1a8ff2SEmmanuel Vadot      properties:
126aa1a8ff2SEmmanuel Vadot        compatible:
127aa1a8ff2SEmmanuel Vadot          contains:
128aa1a8ff2SEmmanuel Vadot            enum:
129aa1a8ff2SEmmanuel Vadot              - qcom,msm8996-qmp-ufs-phy
130aa1a8ff2SEmmanuel Vadot    then:
131aa1a8ff2SEmmanuel Vadot      properties:
132aa1a8ff2SEmmanuel Vadot        clocks:
133aa1a8ff2SEmmanuel Vadot          maxItems: 1
134aa1a8ff2SEmmanuel Vadot        clock-names:
135aa1a8ff2SEmmanuel Vadot          maxItems: 1
136aa1a8ff2SEmmanuel Vadot
1378bab661aSEmmanuel VadotadditionalProperties: false
1388bab661aSEmmanuel Vadot
1398bab661aSEmmanuel Vadotexamples:
1408bab661aSEmmanuel Vadot  - |
1418bab661aSEmmanuel Vadot    #include <dt-bindings/clock/qcom,gcc-sc8280xp.h>
1428bab661aSEmmanuel Vadot
1438bab661aSEmmanuel Vadot    ufs_mem_phy: phy@1d87000 {
1448bab661aSEmmanuel Vadot        compatible = "qcom,sc8280xp-qmp-ufs-phy";
1458bab661aSEmmanuel Vadot        reg = <0x01d87000 0x1000>;
1468bab661aSEmmanuel Vadot
1478bab661aSEmmanuel Vadot        clocks = <&gcc GCC_UFS_REF_CLKREF_CLK>, <&gcc GCC_UFS_PHY_PHY_AUX_CLK>;
1488bab661aSEmmanuel Vadot        clock-names = "ref", "ref_aux";
1498bab661aSEmmanuel Vadot
1508bab661aSEmmanuel Vadot        power-domains = <&gcc UFS_PHY_GDSC>;
1518bab661aSEmmanuel Vadot
1528bab661aSEmmanuel Vadot        resets = <&ufs_mem_hc 0>;
1538bab661aSEmmanuel Vadot        reset-names = "ufsphy";
1548bab661aSEmmanuel Vadot
1558bab661aSEmmanuel Vadot        vdda-phy-supply = <&vreg_l6b>;
1568bab661aSEmmanuel Vadot        vdda-pll-supply = <&vreg_l3b>;
1578bab661aSEmmanuel Vadot
1588bab661aSEmmanuel Vadot        #phy-cells = <0>;
1598bab661aSEmmanuel Vadot    };
160