From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
To: Andy Gross <agross@kernel.org>,
Bjorn Andersson <bjorn.andersson@linaro.org>,
Konrad Dybcio <konrad.dybcio@somainline.org>,
Rob Clark <robdclark@gmail.com>, Sean Paul <sean@poorly.run>,
Abhinav Kumar <quic_abhinavk@quicinc.com>,
Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
Cc: Stephen Boyd <swboyd@chromium.org>,
David Airlie <airlied@linux.ie>, Daniel Vetter <daniel@ffwll.ch>,
linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org
Subject: [PATCH v4 02/10] dt-bindings: display/msm: move qcom,sdm845-mdss schema to mdss.yaml
Date: Thu, 25 Aug 2022 12:50:55 +0300 [thread overview]
Message-ID: <20220825095103.624891-3-dmitry.baryshkov@linaro.org> (raw)
In-Reply-To: <20220825095103.624891-1-dmitry.baryshkov@linaro.org>
Move schema for qcom,sdm845-mdss from dpu-sdm845.yaml to mdss.yaml so
that the dpu file describes only the DPU schema.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
.../bindings/display/msm/dpu-sdm845.yaml | 135 +++------
.../devicetree/bindings/display/msm/mdss.yaml | 265 ++++++++++++++----
2 files changed, 239 insertions(+), 161 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/msm/dpu-sdm845.yaml b/Documentation/devicetree/bindings/display/msm/dpu-sdm845.yaml
index 2bb8896beffc..2074e954372f 100644
--- a/Documentation/devicetree/bindings/display/msm/dpu-sdm845.yaml
+++ b/Documentation/devicetree/bindings/display/msm/dpu-sdm845.yaml
@@ -10,139 +10,74 @@ maintainers:
- Krishna Manikandan <quic_mkrishn@quicinc.com>
description: |
- Device tree bindings for MSM Mobile Display Subsystem(MDSS) that encapsulates
- sub-blocks like DPU display controller, DSI and DP interfaces etc. Device tree
- bindings of MDSS and DPU are mentioned for SDM845 target.
+ Device tree bindings for the DPU display controller for SDM845 target.
properties:
compatible:
items:
- - const: qcom,sdm845-mdss
+ - const: qcom,sdm845-dpu
reg:
- maxItems: 1
+ items:
+ - description: Address offset and size for mdp register set
+ - description: Address offset and size for vbif register set
reg-names:
- const: mdss
-
- power-domains:
- maxItems: 1
+ items:
+ - const: mdp
+ - const: vbif
clocks:
items:
- - description: Display AHB clock from gcc
+ - description: Display ahb clock
+ - description: Display axi clock
- description: Display core clock
+ - description: Display vsync clock
clock-names:
items:
- const: iface
+ - const: bus
- const: core
+ - const: vsync
interrupts:
maxItems: 1
- interrupt-controller: true
-
- "#address-cells": true
-
- "#size-cells": true
-
- "#interrupt-cells":
- const: 1
-
- iommus:
- items:
- - description: Phandle to apps_smmu node with SID mask for Hard-Fail port0
- - description: Phandle to apps_smmu node with SID mask for Hard-Fail port1
-
- ranges: true
-
- resets:
- items:
- - description: MDSS_CORE reset
+ power-domains:
+ maxItems: 1
-patternProperties:
- "^display-controller@[0-9a-f]+$":
- type: object
- description: Node containing the properties of DPU.
+ operating-points-v2: true
+ ports:
+ $ref: /schemas/graph.yaml#/properties/ports
+ description: |
+ Contains the list of output ports from DPU device. These ports
+ connect to interfaces that are external to the DPU hardware,
+ such as DSI, DP etc. Each output port contains an endpoint that
+ describes how it is connected to an external interface.
properties:
- compatible:
- items:
- - const: qcom,sdm845-dpu
-
- reg:
- items:
- - description: Address offset and size for mdp register set
- - description: Address offset and size for vbif register set
-
- reg-names:
- items:
- - const: mdp
- - const: vbif
-
- clocks:
- items:
- - description: Display ahb clock
- - description: Display axi clock
- - description: Display core clock
- - description: Display vsync clock
-
- clock-names:
- items:
- - const: iface
- - const: bus
- - const: core
- - const: vsync
-
- interrupts:
- maxItems: 1
-
- power-domains:
- maxItems: 1
-
- operating-points-v2: true
- ports:
- $ref: /schemas/graph.yaml#/properties/ports
- description: |
- Contains the list of output ports from DPU device. These ports
- connect to interfaces that are external to the DPU hardware,
- such as DSI, DP etc. Each output port contains an endpoint that
- describes how it is connected to an external interface.
-
- properties:
- port@0:
- $ref: /schemas/graph.yaml#/properties/port
- description: DPU_INTF1 (DSI1)
-
- port@1:
- $ref: /schemas/graph.yaml#/properties/port
- description: DPU_INTF2 (DSI2)
-
- required:
- - port@0
- - port@1
+ port@0:
+ $ref: /schemas/graph.yaml#/properties/port
+ description: DPU_INTF1 (DSI1)
+
+ port@1:
+ $ref: /schemas/graph.yaml#/properties/port
+ description: DPU_INTF2 (DSI2)
required:
- - compatible
- - reg
- - reg-names
- - clocks
- - interrupts
- - power-domains
- - operating-points-v2
- - ports
+ - port@0
+ - port@1
required:
- compatible
- reg
- reg-names
- - power-domains
- clocks
- interrupts
- - interrupt-controller
- - iommus
- - ranges
+ - power-domains
+ - operating-points-v2
+ - ports
additionalProperties: false
diff --git a/Documentation/devicetree/bindings/display/msm/mdss.yaml b/Documentation/devicetree/bindings/display/msm/mdss.yaml
index afc48d2b02f1..ef4709d87004 100644
--- a/Documentation/devicetree/bindings/display/msm/mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/mdss.yaml
@@ -18,17 +18,15 @@ properties:
compatible:
enum:
- qcom,mdss
+ - qcom,sdm845-mdss
reg:
- minItems: 2
+ minItems: 1
maxItems: 3
reg-names:
- minItems: 2
- items:
- - const: mdss_phys
- - const: vbif_phys
- - const: vbif_nrt_phys
+ minItems: 1
+ maxItems: 3
interrupts:
maxItems: 1
@@ -53,10 +51,10 @@ properties:
maxItems: 4
"#address-cells":
- const: 1
+ enum: [1, 2]
"#size-cells":
- const: 1
+ enum: [1, 2]
ranges:
true
@@ -65,29 +63,178 @@ properties:
items:
- description: MDSS_CORE reset
-oneOf:
- - properties:
- clocks:
- minItems: 3
- maxItems: 4
-
- clock-names:
- minItems: 3
- items:
- - const: iface
- - const: bus
- - const: vsync
- - const: core
- - properties:
- clocks:
- minItems: 1
- maxItems: 2
-
- clock-names:
- minItems: 1
- items:
- - const: iface
- - const: core
+ interconnects:
+ minItems: 2
+ items:
+ - description: MDP port 0
+ - description: MDP port 1
+ - description: Rotator
+
+ interconnect-names:
+ minItems: 2
+ items:
+ - const: mdp0-mem
+ - const: mdp1-mem
+ - const: rotator-mem
+
+ iommus:
+ items:
+ - description: Phandle to apps_smmu node with SID mask for Hard-Fail port0
+ - description: Phandle to apps_smmu node with SID mask for Hard-Fail port1
+
+allOf:
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: qcom,mdss
+ then:
+ properties:
+ reg-names:
+ minItems: 2
+ items:
+ - const: mdss_phys
+ - const: vbif_phys
+ - const: vbif_nrt_phys
+ oneOf:
+ - properties:
+ clocks:
+ minItems: 3
+ maxItems: 4
+
+ clock-names:
+ minItems: 3
+ items:
+ - const: iface
+ - const: bus
+ - const: vsync
+ - const: core
+ - properties:
+ clocks:
+ minItems: 1
+ maxItems: 2
+
+ clock-names:
+ minItems: 1
+ items:
+ - const: iface
+ - const: core
+ else:
+ properties:
+ regs:
+ maxItems: 1
+
+ reg-names:
+ items:
+ - const: mdss
+
+ interconnects:
+ maxItems: 2
+
+ interconnect-names:
+ maxItems: 2
+
+ required:
+ - iommus
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: qcom,sdm845-mdss
+ then:
+ properties:
+ clocks:
+ items:
+ - description: Display AHB clock from gcc
+ - description: Display core clock
+
+ clock-names:
+ items:
+ - const: iface
+ - const: core
+
+ iommus:
+ minItems: 2
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: qcom,mdss
+ then:
+ patternProperties:
+ "^mdp@[1-9a-f][0-9a-f]*$":
+ type: object
+ properties:
+ compatible:
+ const: qcom,mdp5
+
+ "^dsi@[1-9a-f][0-9a-f]*$":
+ type: object
+ properties:
+ compatible:
+ const: qcom,mdss-dsi-ctrl
+
+ "^dsi-phy@[1-9a-f][0-9a-f]*$":
+ type: object
+ properties:
+ compatible:
+ enum:
+ - qcom,dsi-phy-14nm
+ - qcom,dsi-phy-14nm-660
+ - qcom,dsi-phy-20nm
+ - qcom,dsi-phy-28nm-hpm
+ - qcom,dsi-phy-28nm-lp
+
+ "^hdmi-phy@[1-9a-f][0-9a-f]*$":
+ type: object
+ properties:
+ compatible:
+ enum:
+ - qcom,hdmi-phy-8084
+ - qcom,hdmi-phy-8660
+ - qcom,hdmi-phy-8960
+ - qcom,hdmi-phy-8974
+ - qcom,hdmi-phy-8996
+
+ "^hdmi-tx@[1-9a-f][0-9a-f]*$":
+ type: object
+ properties:
+ compatible:
+ enum:
+ - qcom,hdmi-tx-8084
+ - qcom,hdmi-tx-8660
+ - qcom,hdmi-tx-8960
+ - qcom,hdmi-tx-8974
+ - qcom,hdmi-tx-8994
+ - qcom,hdmi-tx-8996
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: qcom,sdm845-mdss
+ then:
+ patternProperties:
+ "^display-controller@[1-9a-f][0-9a-f]*$":
+ type: object
+ properties:
+ compatible:
+ const: qcom,sdm845-dpu
+
+ "^dsi@[1-9a-f][0-9a-f]*$":
+ type: object
+ properties:
+ compatible:
+ const: qcom,mdss-dsi-ctrl
+
+ "^dsi-phy@[1-9a-f][0-9a-f]*$":
+ type: object
+ properties:
+ compatible:
+ enum:
+ - qcom,dsi-phy-10nm
required:
- compatible
@@ -106,48 +253,21 @@ required:
patternProperties:
"^mdp@[1-9a-f][0-9a-f]*$":
type: object
- properties:
- compatible:
- const: qcom,mdp5
+
+ "^display-controller@[1-9a-f][0-9a-f]*$":
+ type: object
"^dsi@[1-9a-f][0-9a-f]*$":
type: object
- properties:
- compatible:
- const: qcom,mdss-dsi-ctrl
"^dsi-phy@[1-9a-f][0-9a-f]*$":
type: object
- properties:
- compatible:
- enum:
- - qcom,dsi-phy-14nm
- - qcom,dsi-phy-20nm
- - qcom,dsi-phy-28nm-hpm
- - qcom,dsi-phy-28nm-lp
"^hdmi-phy@[1-9a-f][0-9a-f]*$":
type: object
- properties:
- compatible:
- enum:
- - qcom,hdmi-phy-8084
- - qcom,hdmi-phy-8660
- - qcom,hdmi-phy-8960
- - qcom,hdmi-phy-8974
- - qcom,hdmi-phy-8996
"^hdmi-tx@[1-9a-f][0-9a-f]*$":
type: object
- properties:
- compatible:
- enum:
- - qcom,hdmi-tx-8084
- - qcom,hdmi-tx-8660
- - qcom,hdmi-tx-8960
- - qcom,hdmi-tx-8974
- - qcom,hdmi-tx-8994
- - qcom,hdmi-tx-8996
additionalProperties: false
@@ -180,4 +300,27 @@ examples:
ranges;
};
+ - |
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+ #include <dt-bindings/power/qcom-rpmpd.h>
+ display-subsystem@ae00000 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "qcom,sdm845-mdss";
+ reg = <0x0ae00000 0x1000>;
+ reg-names = "mdss";
+ power-domains = <&dispcc MDSS_GDSC>;
+
+ clocks = <&gcc 19>,
+ <&dispcc 12>;
+ clock-names = "iface", "core";
+
+ interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-controller;
+ #interrupt-cells = <1>;
+
+ iommus = <&apps_smmu 0x880 0x8>,
+ <&apps_smmu 0xc80 0x8>;
+ ranges;
+ };
...
--
2.35.1
next prev parent reply other threads:[~2022-08-25 9:53 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-25 9:50 [PATCH v4 00/10] dt-bindings: display/msm: rework MDSS and DPU bindings Dmitry Baryshkov
2022-08-25 9:50 ` [PATCH v4 01/10] dt-bindings: display/msm: split qcom,mdss bindings Dmitry Baryshkov
2022-08-25 11:51 ` Krzysztof Kozlowski
2022-08-25 11:55 ` Krzysztof Kozlowski
2022-08-25 9:50 ` Dmitry Baryshkov [this message]
2022-08-25 11:59 ` [PATCH v4 02/10] dt-bindings: display/msm: move qcom,sdm845-mdss schema to mdss.yaml Krzysztof Kozlowski
2022-08-25 9:50 ` [PATCH v4 03/10] dt-bindings: display/msm: move qcom,sc7180-mdss " Dmitry Baryshkov
2022-08-25 12:01 ` Krzysztof Kozlowski
2022-08-25 12:40 ` Dmitry Baryshkov
2022-08-25 14:37 ` Krzysztof Kozlowski
2022-08-25 9:50 ` [PATCH v4 04/10] dt-bindings: display/msm: move qcom,sc7280-mdss " Dmitry Baryshkov
2022-08-25 9:50 ` [PATCH v4 05/10] dt-bindings: display/msm: move qcom,qcm2290-mdss " Dmitry Baryshkov
2022-08-25 9:50 ` [PATCH v4 06/10] dt-bindings: display/msm: move qcom,msm8998-mdss " Dmitry Baryshkov
2022-08-25 9:51 ` [PATCH v4 07/10] dt-bindings: display/mdm: add gcc-bus clock to dpu-smd845 Dmitry Baryshkov
2022-08-25 9:51 ` [PATCH v4 08/10] dt-bindings: display/msm: move common DPU properties to dpu-common.yaml Dmitry Baryshkov
2022-08-25 9:51 ` [PATCH v4 09/10] dt-bindings: display/msm/dpu-common: add opp-table property Dmitry Baryshkov
2022-08-25 9:51 ` [PATCH v4 10/10] dt-bindings: display/msm: add support for the display on SM8250 Dmitry Baryshkov
2022-08-25 20:11 ` [PATCH v4 00/10] dt-bindings: display/msm: rework MDSS and DPU bindings Rob Herring
2022-08-25 20:45 ` Dmitry Baryshkov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220825095103.624891-3-dmitry.baryshkov@linaro.org \
--to=dmitry.baryshkov@linaro.org \
--cc=agross@kernel.org \
--cc=airlied@linux.ie \
--cc=bjorn.andersson@linaro.org \
--cc=daniel@ffwll.ch \
--cc=devicetree@vger.kernel.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=freedreno@lists.freedesktop.org \
--cc=konrad.dybcio@somainline.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=quic_abhinavk@quicinc.com \
--cc=robdclark@gmail.com \
--cc=robh+dt@kernel.org \
--cc=sean@poorly.run \
--cc=swboyd@chromium.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).