Skip to content

Commit 2abfd6a

Browse files
committed
dt-bindings: display/msm: split dpu-sdm845 into DPU and MDSS parts
In order to make the schema more readable, split dpu-sdm845 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/508382/ Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Dmitry Baryshkov <[email protected]>
1 parent 2c44a99 commit 2abfd6a

File tree

3 files changed

+207
-148
lines changed

3 files changed

+207
-148
lines changed

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

Lines changed: 0 additions & 148 deletions
This file was deleted.
Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
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,sdm845-dpu.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Display DPU dt properties for SDM845 target
8+
9+
maintainers:
10+
- Krishna Manikandan <[email protected]>
11+
12+
$ref: /schemas/display/msm/dpu-common.yaml#
13+
14+
properties:
15+
compatible:
16+
items:
17+
- const: qcom,sdm845-dpu
18+
19+
reg:
20+
items:
21+
- description: Address offset and size for mdp register set
22+
- description: Address offset and size for vbif register set
23+
24+
reg-names:
25+
items:
26+
- const: mdp
27+
- const: vbif
28+
29+
clocks:
30+
items:
31+
- description: Display GCC bus clock
32+
- description: Display ahb clock
33+
- description: Display axi clock
34+
- description: Display core clock
35+
- description: Display vsync clock
36+
37+
clock-names:
38+
items:
39+
- const: gcc-bus
40+
- const: iface
41+
- const: bus
42+
- const: core
43+
- const: vsync
44+
45+
unevaluatedProperties: false
46+
47+
examples:
48+
- |
49+
#include <dt-bindings/clock/qcom,dispcc-sdm845.h>
50+
#include <dt-bindings/clock/qcom,gcc-sdm845.h>
51+
#include <dt-bindings/power/qcom-rpmpd.h>
52+
53+
display-controller@ae01000 {
54+
compatible = "qcom,sdm845-dpu";
55+
reg = <0x0ae01000 0x8f000>,
56+
<0x0aeb0000 0x2008>;
57+
reg-names = "mdp", "vbif";
58+
59+
clocks = <&gcc GCC_DISP_AXI_CLK>,
60+
<&dispcc DISP_CC_MDSS_AHB_CLK>,
61+
<&dispcc DISP_CC_MDSS_AXI_CLK>,
62+
<&dispcc DISP_CC_MDSS_MDP_CLK>,
63+
<&dispcc DISP_CC_MDSS_VSYNC_CLK>;
64+
clock-names = "gcc-bus", "iface", "bus", "core", "vsync";
65+
66+
interrupt-parent = <&mdss>;
67+
interrupts = <0>;
68+
power-domains = <&rpmhpd SDM845_CX>;
69+
operating-points-v2 = <&mdp_opp_table>;
70+
71+
ports {
72+
#address-cells = <1>;
73+
#size-cells = <0>;
74+
75+
port@0 {
76+
reg = <0>;
77+
endpoint {
78+
remote-endpoint = <&dsi0_in>;
79+
};
80+
};
81+
82+
port@1 {
83+
reg = <1>;
84+
endpoint {
85+
remote-endpoint = <&dsi1_in>;
86+
};
87+
};
88+
};
89+
};
90+
...
Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
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,sdm845-mdss.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm SDM845 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 SDM845 target.
16+
17+
$ref: /schemas/display/msm/mdss-common.yaml#
18+
19+
properties:
20+
compatible:
21+
items:
22+
- const: qcom,sdm845-mdss
23+
24+
clocks:
25+
items:
26+
- description: Display AHB clock from gcc
27+
- description: Display core clock
28+
29+
clock-names:
30+
items:
31+
- const: iface
32+
- const: core
33+
34+
iommus:
35+
maxItems: 2
36+
37+
interconnects:
38+
maxItems: 2
39+
40+
interconnect-names:
41+
maxItems: 2
42+
43+
patternProperties:
44+
"^display-controller@[0-9a-f]+$":
45+
type: object
46+
properties:
47+
compatible:
48+
const: qcom,sdm845-dpu
49+
50+
unevaluatedProperties: false
51+
52+
examples:
53+
- |
54+
#include <dt-bindings/clock/qcom,dispcc-sdm845.h>
55+
#include <dt-bindings/clock/qcom,gcc-sdm845.h>
56+
#include <dt-bindings/interrupt-controller/arm-gic.h>
57+
#include <dt-bindings/power/qcom-rpmpd.h>
58+
59+
display-subsystem@ae00000 {
60+
#address-cells = <1>;
61+
#size-cells = <1>;
62+
compatible = "qcom,sdm845-mdss";
63+
reg = <0x0ae00000 0x1000>;
64+
reg-names = "mdss";
65+
power-domains = <&dispcc MDSS_GDSC>;
66+
67+
clocks = <&gcc GCC_DISP_AHB_CLK>,
68+
<&dispcc DISP_CC_MDSS_MDP_CLK>;
69+
clock-names = "iface", "core";
70+
71+
interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
72+
interrupt-controller;
73+
#interrupt-cells = <1>;
74+
75+
iommus = <&apps_smmu 0x880 0x8>,
76+
<&apps_smmu 0xc80 0x8>;
77+
ranges;
78+
79+
display-controller@ae01000 {
80+
compatible = "qcom,sdm845-dpu";
81+
reg = <0x0ae01000 0x8f000>,
82+
<0x0aeb0000 0x2008>;
83+
reg-names = "mdp", "vbif";
84+
85+
clocks = <&gcc GCC_DISP_AXI_CLK>,
86+
<&dispcc DISP_CC_MDSS_AHB_CLK>,
87+
<&dispcc DISP_CC_MDSS_AXI_CLK>,
88+
<&dispcc DISP_CC_MDSS_MDP_CLK>,
89+
<&dispcc DISP_CC_MDSS_VSYNC_CLK>;
90+
clock-names = "gcc-bus", "iface", "bus", "core", "vsync";
91+
92+
interrupt-parent = <&mdss>;
93+
interrupts = <0>;
94+
power-domains = <&rpmhpd SDM845_CX>;
95+
operating-points-v2 = <&mdp_opp_table>;
96+
97+
ports {
98+
#address-cells = <1>;
99+
#size-cells = <0>;
100+
101+
port@0 {
102+
reg = <0>;
103+
dpu_intf1_out: endpoint {
104+
remote-endpoint = <&dsi0_in>;
105+
};
106+
};
107+
108+
port@1 {
109+
reg = <1>;
110+
dpu_intf2_out: endpoint {
111+
remote-endpoint = <&dsi1_in>;
112+
};
113+
};
114+
};
115+
};
116+
};
117+
...

0 commit comments

Comments
 (0)