xref: /linux/Documentation/devicetree/bindings/phy/qcom,dsi-phy-10nm.yaml (revision 0fc8f6200d2313278fbf4539bbab74677c685531)
1*f94aa7e9SDmitry Baryshkov# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2*f94aa7e9SDmitry Baryshkov%YAML 1.2
3*f94aa7e9SDmitry Baryshkov---
4*f94aa7e9SDmitry Baryshkov$id: http://devicetree.org/schemas/phy/qcom,dsi-phy-10nm.yaml#
5*f94aa7e9SDmitry Baryshkov$schema: http://devicetree.org/meta-schemas/core.yaml#
6*f94aa7e9SDmitry Baryshkov
7*f94aa7e9SDmitry Baryshkovtitle: Qualcomm Display DSI 10nm PHY
8*f94aa7e9SDmitry Baryshkov
9*f94aa7e9SDmitry Baryshkovmaintainers:
10*f94aa7e9SDmitry Baryshkov  - Krishna Manikandan <quic_mkrishn@quicinc.com>
11*f94aa7e9SDmitry Baryshkov
12*f94aa7e9SDmitry BaryshkovallOf:
13*f94aa7e9SDmitry Baryshkov  - $ref: qcom,dsi-phy-common.yaml#
14*f94aa7e9SDmitry Baryshkov
15*f94aa7e9SDmitry Baryshkovproperties:
16*f94aa7e9SDmitry Baryshkov  compatible:
17*f94aa7e9SDmitry Baryshkov    enum:
18*f94aa7e9SDmitry Baryshkov      - qcom,dsi-phy-10nm
19*f94aa7e9SDmitry Baryshkov      - qcom,dsi-phy-10nm-8998
20*f94aa7e9SDmitry Baryshkov
21*f94aa7e9SDmitry Baryshkov  reg:
22*f94aa7e9SDmitry Baryshkov    items:
23*f94aa7e9SDmitry Baryshkov      - description: dsi phy register set
24*f94aa7e9SDmitry Baryshkov      - description: dsi phy lane register set
25*f94aa7e9SDmitry Baryshkov      - description: dsi pll register set
26*f94aa7e9SDmitry Baryshkov
27*f94aa7e9SDmitry Baryshkov  reg-names:
28*f94aa7e9SDmitry Baryshkov    items:
29*f94aa7e9SDmitry Baryshkov      - const: dsi_phy
30*f94aa7e9SDmitry Baryshkov      - const: dsi_phy_lane
31*f94aa7e9SDmitry Baryshkov      - const: dsi_pll
32*f94aa7e9SDmitry Baryshkov
33*f94aa7e9SDmitry Baryshkov  vdds-supply:
34*f94aa7e9SDmitry Baryshkov    description: |
35*f94aa7e9SDmitry Baryshkov      Connected to DSI0_MIPI_DSI_PLL_VDDA0P9 pin for sc7180 target and
36*f94aa7e9SDmitry Baryshkov      connected to VDDA_MIPI_DSI_0_PLL_0P9 pin for sdm845 target
37*f94aa7e9SDmitry Baryshkov
38*f94aa7e9SDmitry Baryshkov  qcom,phy-rescode-offset-top:
39*f94aa7e9SDmitry Baryshkov    $ref: /schemas/types.yaml#/definitions/int8-array
40*f94aa7e9SDmitry Baryshkov    maxItems: 5
41*f94aa7e9SDmitry Baryshkov    description:
42*f94aa7e9SDmitry Baryshkov      Integer array of offset for pull-up legs rescode for all five lanes.
43*f94aa7e9SDmitry Baryshkov      To offset the drive strength from the calibrated value in an increasing
44*f94aa7e9SDmitry Baryshkov      manner, -32 is the weakest and +31 is the strongest.
45*f94aa7e9SDmitry Baryshkov    items:
46*f94aa7e9SDmitry Baryshkov      minimum: -32
47*f94aa7e9SDmitry Baryshkov      maximum: 31
48*f94aa7e9SDmitry Baryshkov
49*f94aa7e9SDmitry Baryshkov  qcom,phy-rescode-offset-bot:
50*f94aa7e9SDmitry Baryshkov    $ref: /schemas/types.yaml#/definitions/int8-array
51*f94aa7e9SDmitry Baryshkov    maxItems: 5
52*f94aa7e9SDmitry Baryshkov    description:
53*f94aa7e9SDmitry Baryshkov      Integer array of offset for pull-down legs rescode for all five lanes.
54*f94aa7e9SDmitry Baryshkov      To offset the drive strength from the calibrated value in a decreasing
55*f94aa7e9SDmitry Baryshkov      manner, -32 is the weakest and +31 is the strongest.
56*f94aa7e9SDmitry Baryshkov    items:
57*f94aa7e9SDmitry Baryshkov      minimum: -32
58*f94aa7e9SDmitry Baryshkov      maximum: 31
59*f94aa7e9SDmitry Baryshkov
60*f94aa7e9SDmitry Baryshkov  qcom,phy-drive-ldo-level:
61*f94aa7e9SDmitry Baryshkov    $ref: /schemas/types.yaml#/definitions/uint32
62*f94aa7e9SDmitry Baryshkov    description:
63*f94aa7e9SDmitry Baryshkov      The PHY LDO has an amplitude tuning feature to adjust the LDO output
64*f94aa7e9SDmitry Baryshkov      for the HSTX drive. Use supported levels (mV) to offset the drive level
65*f94aa7e9SDmitry Baryshkov      from the default value.
66*f94aa7e9SDmitry Baryshkov    enum: [ 375, 400, 425, 450, 475, 500 ]
67*f94aa7e9SDmitry Baryshkov
68*f94aa7e9SDmitry Baryshkovrequired:
69*f94aa7e9SDmitry Baryshkov  - compatible
70*f94aa7e9SDmitry Baryshkov  - reg
71*f94aa7e9SDmitry Baryshkov  - reg-names
72*f94aa7e9SDmitry Baryshkov
73*f94aa7e9SDmitry BaryshkovunevaluatedProperties: false
74*f94aa7e9SDmitry Baryshkov
75*f94aa7e9SDmitry Baryshkovexamples:
76*f94aa7e9SDmitry Baryshkov  - |
77*f94aa7e9SDmitry Baryshkov    #include <dt-bindings/clock/qcom,dispcc-sdm845.h>
78*f94aa7e9SDmitry Baryshkov    #include <dt-bindings/clock/qcom,rpmh.h>
79*f94aa7e9SDmitry Baryshkov
80*f94aa7e9SDmitry Baryshkov    dsi-phy@ae94400 {
81*f94aa7e9SDmitry Baryshkov        compatible = "qcom,dsi-phy-10nm";
82*f94aa7e9SDmitry Baryshkov        reg = <0x0ae94400 0x200>,
83*f94aa7e9SDmitry Baryshkov              <0x0ae94600 0x280>,
84*f94aa7e9SDmitry Baryshkov              <0x0ae94a00 0x1e0>;
85*f94aa7e9SDmitry Baryshkov        reg-names = "dsi_phy",
86*f94aa7e9SDmitry Baryshkov                    "dsi_phy_lane",
87*f94aa7e9SDmitry Baryshkov                    "dsi_pll";
88*f94aa7e9SDmitry Baryshkov
89*f94aa7e9SDmitry Baryshkov        #clock-cells = <1>;
90*f94aa7e9SDmitry Baryshkov        #phy-cells = <0>;
91*f94aa7e9SDmitry Baryshkov
92*f94aa7e9SDmitry Baryshkov        vdds-supply = <&vdda_mipi_dsi0_pll>;
93*f94aa7e9SDmitry Baryshkov        clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
94*f94aa7e9SDmitry Baryshkov                 <&rpmhcc RPMH_CXO_CLK>;
95*f94aa7e9SDmitry Baryshkov        clock-names = "iface", "ref";
96*f94aa7e9SDmitry Baryshkov
97*f94aa7e9SDmitry Baryshkov        qcom,phy-rescode-offset-top = /bits/ 8 <0 0 0 0 0>;
98*f94aa7e9SDmitry Baryshkov        qcom,phy-rescode-offset-bot = /bits/ 8 <0 0 0 0 0>;
99*f94aa7e9SDmitry Baryshkov        qcom,phy-drive-ldo-level = <400>;
100*f94aa7e9SDmitry Baryshkov    };
101*f94aa7e9SDmitry Baryshkov...
102