Skip to content

Commit 4b32e46

Browse files
committed
dt-bindings: display/msm: add missing device nodes to mdss-* schemas
Add missing device nodes (DSI, PHYs, DP/eDP) to the existing MDSS schemas. Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Dmitry Baryshkov <[email protected]> Patchwork: https://patchwork.freedesktop.org/patch/508391/ Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Dmitry Baryshkov <[email protected]>
1 parent 06097b1 commit 4b32e46

File tree

5 files changed

+858
-0
lines changed

5 files changed

+858
-0
lines changed

Documentation/devicetree/bindings/display/msm/qcom,msm8998-mdss.yaml

Lines changed: 153 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,11 +43,24 @@ patternProperties:
4343
compatible:
4444
const: qcom,msm8998-dpu
4545

46+
"^dsi@[0-9a-f]+$":
47+
type: object
48+
properties:
49+
compatible:
50+
const: qcom,mdss-dsi-ctrl
51+
52+
"^phy@[0-9a-f]+$":
53+
type: object
54+
properties:
55+
compatible:
56+
const: qcom,dsi-phy-10nm-8998
57+
4658
unevaluatedProperties: false
4759

4860
examples:
4961
- |
5062
#include <dt-bindings/clock/qcom,mmcc-msm8998.h>
63+
#include <dt-bindings/clock/qcom,rpmcc.h>
5164
#include <dt-bindings/interrupt-controller/arm-gic.h>
5265
#include <dt-bindings/power/qcom-rpmpd.h>
5366
@@ -111,5 +124,145 @@ examples:
111124
};
112125
};
113126
};
127+
128+
dsi@c994000 {
129+
compatible = "qcom,mdss-dsi-ctrl";
130+
reg = <0x0c994000 0x400>;
131+
reg-names = "dsi_ctrl";
132+
133+
interrupt-parent = <&mdss>;
134+
interrupts = <4>;
135+
136+
clocks = <&mmcc MDSS_BYTE0_CLK>,
137+
<&mmcc MDSS_BYTE0_INTF_CLK>,
138+
<&mmcc MDSS_PCLK0_CLK>,
139+
<&mmcc MDSS_ESC0_CLK>,
140+
<&mmcc MDSS_AHB_CLK>,
141+
<&mmcc MDSS_AXI_CLK>;
142+
clock-names = "byte",
143+
"byte_intf",
144+
"pixel",
145+
"core",
146+
"iface",
147+
"bus";
148+
assigned-clocks = <&mmcc BYTE0_CLK_SRC>, <&mmcc PCLK0_CLK_SRC>;
149+
assigned-clock-parents = <&dsi0_phy 0>, <&dsi0_phy 1>;
150+
151+
operating-points-v2 = <&dsi_opp_table>;
152+
power-domains = <&rpmpd MSM8998_VDDCX>;
153+
154+
phys = <&dsi0_phy>;
155+
phy-names = "dsi";
156+
157+
#address-cells = <1>;
158+
#size-cells = <0>;
159+
160+
ports {
161+
#address-cells = <1>;
162+
#size-cells = <0>;
163+
164+
port@0 {
165+
reg = <0>;
166+
dsi0_in: endpoint {
167+
remote-endpoint = <&dpu_intf1_out>;
168+
};
169+
};
170+
171+
port@1 {
172+
reg = <1>;
173+
dsi0_out: endpoint {
174+
};
175+
};
176+
};
177+
};
178+
179+
dsi0_phy: phy@c994400 {
180+
compatible = "qcom,dsi-phy-10nm-8998";
181+
reg = <0x0c994400 0x200>,
182+
<0x0c994600 0x280>,
183+
<0x0c994a00 0x1e0>;
184+
reg-names = "dsi_phy",
185+
"dsi_phy_lane",
186+
"dsi_pll";
187+
188+
#clock-cells = <1>;
189+
#phy-cells = <0>;
190+
191+
clocks = <&mmcc MDSS_AHB_CLK>,
192+
<&rpmcc RPM_SMD_XO_CLK_SRC>;
193+
clock-names = "iface", "ref";
194+
195+
vdds-supply = <&pm8998_l1>;
196+
};
197+
198+
dsi@c996000 {
199+
compatible = "qcom,mdss-dsi-ctrl";
200+
reg = <0x0c996000 0x400>;
201+
reg-names = "dsi_ctrl";
202+
203+
interrupt-parent = <&mdss>;
204+
interrupts = <5>;
205+
206+
clocks = <&mmcc MDSS_BYTE1_CLK>,
207+
<&mmcc MDSS_BYTE1_INTF_CLK>,
208+
<&mmcc MDSS_PCLK1_CLK>,
209+
<&mmcc MDSS_ESC1_CLK>,
210+
<&mmcc MDSS_AHB_CLK>,
211+
<&mmcc MDSS_AXI_CLK>;
212+
clock-names = "byte",
213+
"byte_intf",
214+
"pixel",
215+
"core",
216+
"iface",
217+
"bus";
218+
assigned-clocks = <&mmcc BYTE1_CLK_SRC>, <&mmcc PCLK1_CLK_SRC>;
219+
assigned-clock-parents = <&dsi1_phy 0>, <&dsi1_phy 1>;
220+
221+
operating-points-v2 = <&dsi_opp_table>;
222+
power-domains = <&rpmpd MSM8998_VDDCX>;
223+
224+
phys = <&dsi1_phy>;
225+
phy-names = "dsi";
226+
227+
#address-cells = <1>;
228+
#size-cells = <0>;
229+
230+
ports {
231+
#address-cells = <1>;
232+
#size-cells = <0>;
233+
234+
port@0 {
235+
reg = <0>;
236+
dsi1_in: endpoint {
237+
remote-endpoint = <&dpu_intf2_out>;
238+
};
239+
};
240+
241+
port@1 {
242+
reg = <1>;
243+
dsi1_out: endpoint {
244+
};
245+
};
246+
};
247+
};
248+
249+
dsi1_phy: phy@c996400 {
250+
compatible = "qcom,dsi-phy-10nm-8998";
251+
reg = <0x0c996400 0x200>,
252+
<0x0c996600 0x280>,
253+
<0x0c996a00 0x10e>;
254+
reg-names = "dsi_phy",
255+
"dsi_phy_lane",
256+
"dsi_pll";
257+
258+
#clock-cells = <1>;
259+
#phy-cells = <0>;
260+
261+
clocks = <&mmcc MDSS_AHB_CLK>,
262+
<&rpmcc RPM_SMD_XO_CLK_SRC>;
263+
clock-names = "iface", "ref";
264+
265+
vdds-supply = <&pm8998_l1>;
266+
};
114267
};
115268
...

Documentation/devicetree/bindings/display/msm/qcom,qcm2290-mdss.yaml

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,25 @@ patternProperties:
4949
compatible:
5050
const: qcom,qcm2290-dpu
5151

52+
"^dsi@[0-9a-f]+$":
53+
type: object
54+
properties:
55+
compatible:
56+
const: qcom,dsi-ctrl-6g-qcm2290
57+
58+
"^phy@[0-9a-f]+$":
59+
type: object
60+
properties:
61+
compatible:
62+
const: qcom,dsi-phy-14nm-2290
63+
5264
unevaluatedProperties: false
5365

5466
examples:
5567
- |
5668
#include <dt-bindings/clock/qcom,dispcc-qcm2290.h>
5769
#include <dt-bindings/clock/qcom,gcc-qcm2290.h>
70+
#include <dt-bindings/clock/qcom,rpmcc.h>
5871
#include <dt-bindings/interrupt-controller/arm-gic.h>
5972
#include <dt-bindings/interconnect/qcom,qcm2290.h>
6073
#include <dt-bindings/power/qcom-rpmpd.h>
@@ -113,5 +126,73 @@ examples:
113126
};
114127
};
115128
};
129+
130+
dsi@5e94000 {
131+
compatible = "qcom,dsi-ctrl-6g-qcm2290";
132+
reg = <0x05e94000 0x400>;
133+
reg-names = "dsi_ctrl";
134+
135+
interrupt-parent = <&mdss>;
136+
interrupts = <4>;
137+
138+
clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>,
139+
<&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>,
140+
<&dispcc DISP_CC_MDSS_PCLK0_CLK>,
141+
<&dispcc DISP_CC_MDSS_ESC0_CLK>,
142+
<&dispcc DISP_CC_MDSS_AHB_CLK>,
143+
<&gcc GCC_DISP_HF_AXI_CLK>;
144+
clock-names = "byte",
145+
"byte_intf",
146+
"pixel",
147+
"core",
148+
"iface",
149+
"bus";
150+
assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>, <&dispcc DISP_CC_MDSS_PCLK0_CLK_SRC>;
151+
assigned-clock-parents = <&dsi0_phy 0>, <&dsi0_phy 1>;
152+
153+
operating-points-v2 = <&dsi_opp_table>;
154+
power-domains = <&rpmpd QCM2290_VDDCX>;
155+
156+
phys = <&dsi0_phy>;
157+
phy-names = "dsi";
158+
159+
#address-cells = <1>;
160+
#size-cells = <0>;
161+
162+
ports {
163+
#address-cells = <1>;
164+
#size-cells = <0>;
165+
166+
port@0 {
167+
reg = <0>;
168+
dsi0_in: endpoint {
169+
remote-endpoint = <&dpu_intf1_out>;
170+
};
171+
};
172+
173+
port@1 {
174+
reg = <1>;
175+
dsi0_out: endpoint {
176+
};
177+
};
178+
};
179+
};
180+
181+
dsi0_phy: phy@5e94400 {
182+
compatible = "qcom,dsi-phy-14nm-2290";
183+
reg = <0x05e94400 0x100>,
184+
<0x05e94500 0x300>,
185+
<0x05e94800 0x188>;
186+
reg-names = "dsi_phy",
187+
"dsi_phy_lane",
188+
"dsi_pll";
189+
190+
#clock-cells = <1>;
191+
#phy-cells = <0>;
192+
193+
clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>, <&rpmcc RPM_SMD_XO_CLK_SRC>;
194+
clock-names = "iface", "ref";
195+
vcca-supply = <&vreg_dsi_phy>;
196+
};
116197
};
117198
...

0 commit comments

Comments
 (0)