Skip to content

Commit 2c44a99

Browse files
committed
dt-bindings: display/msm: split dpu-sc7280 into DPU and MDSS parts
In order to make the schema more readable, split dpu-sc7280 into the DPU and MDSS parts, each one describing just a single device binding. Reviewed-by: Rob Herring <[email protected]> Signed-off-by: Dmitry Baryshkov <[email protected]> Patchwork: https://patchwork.freedesktop.org/patch/508387/ Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Dmitry Baryshkov <[email protected]>
1 parent aba04b0 commit 2c44a99

File tree

3 files changed

+228
-162
lines changed

3 files changed

+228
-162
lines changed

Documentation/devicetree/bindings/display/msm/dpu-sc7280.yaml

Lines changed: 0 additions & 162 deletions
This file was deleted.
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/display/msm/qcom,sc7280-dpu.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Display DPU dt properties for SC7280
8+
9+
maintainers:
10+
- Krishna Manikandan <[email protected]>
11+
12+
$ref: /schemas/display/msm/dpu-common.yaml#
13+
14+
properties:
15+
compatible:
16+
const: qcom,sc7280-dpu
17+
18+
reg:
19+
items:
20+
- description: Address offset and size for mdp register set
21+
- description: Address offset and size for vbif register set
22+
23+
reg-names:
24+
items:
25+
- const: mdp
26+
- const: vbif
27+
28+
clocks:
29+
items:
30+
- description: Display hf axi clock
31+
- description: Display sf axi clock
32+
- description: Display ahb clock
33+
- description: Display lut clock
34+
- description: Display core clock
35+
- description: Display vsync clock
36+
37+
clock-names:
38+
items:
39+
- const: bus
40+
- const: nrt_bus
41+
- const: iface
42+
- const: lut
43+
- const: core
44+
- const: vsync
45+
46+
unevaluatedProperties: false
47+
48+
examples:
49+
- |
50+
#include <dt-bindings/clock/qcom,dispcc-sc7280.h>
51+
#include <dt-bindings/clock/qcom,gcc-sc7280.h>
52+
#include <dt-bindings/power/qcom-rpmpd.h>
53+
54+
display-controller@ae01000 {
55+
compatible = "qcom,sc7280-dpu";
56+
reg = <0x0ae01000 0x8f000>,
57+
<0x0aeb0000 0x2008>;
58+
59+
reg-names = "mdp", "vbif";
60+
61+
clocks = <&gcc GCC_DISP_HF_AXI_CLK>,
62+
<&gcc GCC_DISP_SF_AXI_CLK>,
63+
<&dispcc DISP_CC_MDSS_AHB_CLK>,
64+
<&dispcc DISP_CC_MDSS_MDP_LUT_CLK>,
65+
<&dispcc DISP_CC_MDSS_MDP_CLK>,
66+
<&dispcc DISP_CC_MDSS_VSYNC_CLK>;
67+
clock-names = "bus",
68+
"nrt_bus",
69+
"iface",
70+
"lut",
71+
"core",
72+
"vsync";
73+
74+
interrupt-parent = <&mdss>;
75+
interrupts = <0>;
76+
power-domains = <&rpmhpd SC7280_CX>;
77+
operating-points-v2 = <&mdp_opp_table>;
78+
79+
ports {
80+
#address-cells = <1>;
81+
#size-cells = <0>;
82+
83+
port@0 {
84+
reg = <0>;
85+
endpoint {
86+
remote-endpoint = <&dsi0_in>;
87+
};
88+
};
89+
90+
port@1 {
91+
reg = <1>;
92+
endpoint {
93+
remote-endpoint = <&edp_in>;
94+
};
95+
};
96+
};
97+
};
98+
...
Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/display/msm/qcom,sc7280-mdss.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm SC7280 Display MDSS
8+
9+
maintainers:
10+
- Krishna Manikandan <[email protected]>
11+
12+
description:
13+
Device tree bindings for MSM Mobile Display Subsystem (MDSS) that encapsulates
14+
sub-blocks like DPU display controller, DSI and DP interfaces etc. Device tree
15+
bindings of MDSS are mentioned for SC7280.
16+
17+
$ref: /schemas/display/msm/mdss-common.yaml#
18+
19+
properties:
20+
compatible:
21+
const: qcom,sc7280-mdss
22+
23+
clocks:
24+
items:
25+
- description: Display AHB clock from gcc
26+
- description: Display AHB clock from dispcc
27+
- description: Display core clock
28+
29+
clock-names:
30+
items:
31+
- const: iface
32+
- const: ahb
33+
- const: core
34+
35+
iommus:
36+
maxItems: 1
37+
38+
interconnects:
39+
maxItems: 1
40+
41+
interconnect-names:
42+
maxItems: 1
43+
44+
patternProperties:
45+
"^display-controller@[0-9a-f]+$":
46+
type: object
47+
properties:
48+
compatible:
49+
const: qcom,sc7280-dpu
50+
51+
unevaluatedProperties: false
52+
53+
examples:
54+
- |
55+
#include <dt-bindings/clock/qcom,dispcc-sc7280.h>
56+
#include <dt-bindings/clock/qcom,gcc-sc7280.h>
57+
#include <dt-bindings/interrupt-controller/arm-gic.h>
58+
#include <dt-bindings/interconnect/qcom,sc7280.h>
59+
#include <dt-bindings/power/qcom-rpmpd.h>
60+
61+
display-subsystem@ae00000 {
62+
#address-cells = <1>;
63+
#size-cells = <1>;
64+
compatible = "qcom,sc7280-mdss";
65+
reg = <0xae00000 0x1000>;
66+
reg-names = "mdss";
67+
power-domains = <&dispcc DISP_CC_MDSS_CORE_GDSC>;
68+
clocks = <&gcc GCC_DISP_AHB_CLK>,
69+
<&dispcc DISP_CC_MDSS_AHB_CLK>,
70+
<&dispcc DISP_CC_MDSS_MDP_CLK>;
71+
clock-names = "iface",
72+
"ahb",
73+
"core";
74+
75+
interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
76+
interrupt-controller;
77+
#interrupt-cells = <1>;
78+
79+
interconnects = <&mmss_noc MASTER_MDP0 &mc_virt SLAVE_EBI1>;
80+
interconnect-names = "mdp0-mem";
81+
82+
iommus = <&apps_smmu 0x900 0x402>;
83+
ranges;
84+
85+
display-controller@ae01000 {
86+
compatible = "qcom,sc7280-dpu";
87+
reg = <0x0ae01000 0x8f000>,
88+
<0x0aeb0000 0x2008>;
89+
90+
reg-names = "mdp", "vbif";
91+
92+
clocks = <&gcc GCC_DISP_HF_AXI_CLK>,
93+
<&gcc GCC_DISP_SF_AXI_CLK>,
94+
<&dispcc DISP_CC_MDSS_AHB_CLK>,
95+
<&dispcc DISP_CC_MDSS_MDP_LUT_CLK>,
96+
<&dispcc DISP_CC_MDSS_MDP_CLK>,
97+
<&dispcc DISP_CC_MDSS_VSYNC_CLK>;
98+
clock-names = "bus",
99+
"nrt_bus",
100+
"iface",
101+
"lut",
102+
"core",
103+
"vsync";
104+
105+
interrupt-parent = <&mdss>;
106+
interrupts = <0>;
107+
power-domains = <&rpmhpd SC7280_CX>;
108+
operating-points-v2 = <&mdp_opp_table>;
109+
110+
ports {
111+
#address-cells = <1>;
112+
#size-cells = <0>;
113+
114+
port@0 {
115+
reg = <0>;
116+
dpu_intf1_out: endpoint {
117+
remote-endpoint = <&dsi0_in>;
118+
};
119+
};
120+
121+
port@1 {
122+
reg = <1>;
123+
dpu_intf5_out: endpoint {
124+
remote-endpoint = <&edp_in>;
125+
};
126+
};
127+
};
128+
};
129+
};
130+
...

0 commit comments

Comments
 (0)