From: Moudy Ho <moudy.ho@mediatek.com>
To: Mauro Carvalho Chehab <mchehab@kernel.org>,
Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Matthias Brugger <matthias.bgg@gmail.com>
Cc: <linux-media@vger.kernel.org>, <devicetree@vger.kernel.org>,
<linux-kernel@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-mediatek@lists.infradead.org>,
<Project_Global_Chrome_Upstream_Group@mediatek.com>,
Moudy Ho <moudy.ho@mediatek.com>
Subject: [PATCH v4 03/16] dt-binding: mediatek: add MediaTek mt8195 MDP3 components
Date: Wed, 8 Feb 2023 17:21:56 +0800 [thread overview]
Message-ID: <20230208092209.19472-4-moudy.ho@mediatek.com> (raw)
In-Reply-To: <20230208092209.19472-1-moudy.ho@mediatek.com>
Adds support for MT8195 MDP3 RDMA, and introduce more MDP3 components
present in MT8195.
Signed-off-by: Moudy Ho <moudy.ho@mediatek.com>
---
.../bindings/media/mediatek,mdp3-rdma.yaml | 30 +--
.../bindings/media/mediatek,mdp3-rsz.yaml | 5 +-
.../bindings/media/mediatek,mt8195-mdp3.yaml | 174 ++++++++++++++++++
3 files changed, 197 insertions(+), 12 deletions(-)
create mode 100644 Documentation/devicetree/bindings/media/mediatek,mt8195-mdp3.yaml
diff --git a/Documentation/devicetree/bindings/media/mediatek,mdp3-rdma.yaml b/Documentation/devicetree/bindings/media/mediatek,mdp3-rdma.yaml
index 46730687c662..abc3284b21d0 100644
--- a/Documentation/devicetree/bindings/media/mediatek,mdp3-rdma.yaml
+++ b/Documentation/devicetree/bindings/media/mediatek,mdp3-rdma.yaml
@@ -20,8 +20,9 @@ description: |
properties:
compatible:
- items:
- - const: mediatek,mt8183-mdp3-rdma
+ enum:
+ - mediatek,mt8183-mdp3-rdma
+ - mediatek,mt8195-mdp3-rdma
reg:
maxItems: 1
@@ -46,20 +47,28 @@ properties:
$ref: /schemas/types.yaml#/definitions/uint32-array
power-domains:
- maxItems: 1
+ oneOf:
+ - items:
+ - description: for RDMA
+ - items:
+ - description: for vppsys 0
+ - description: for vppsys 1
clocks:
- items:
- - description: RDMA clock
- - description: RSZ clock
+ minItems: 2
+ maxItems: 19
iommus:
- maxItems: 1
+ oneOf:
+ - items:
+ - description: RDMA port
+ - items:
+ - description: RDMA port
+ - description: RDMA to WROT DL port
mboxes:
- items:
- - description: used for 1st data pipe from RDMA
- - description: used for 2nd data pipe from RDMA
+ minItems: 1
+ maxItems: 5
'#dma-cells':
const: 1
@@ -72,7 +81,6 @@ required:
- power-domains
- clocks
- iommus
- - mboxes
- '#dma-cells'
additionalProperties: false
diff --git a/Documentation/devicetree/bindings/media/mediatek,mdp3-rsz.yaml b/Documentation/devicetree/bindings/media/mediatek,mdp3-rsz.yaml
index 78f9de6192ef..4bc5ac112d2a 100644
--- a/Documentation/devicetree/bindings/media/mediatek,mdp3-rsz.yaml
+++ b/Documentation/devicetree/bindings/media/mediatek,mdp3-rsz.yaml
@@ -43,12 +43,15 @@ properties:
clocks:
minItems: 1
+ maxItems: 2
+
+ power-domains:
+ maxItems: 1
required:
- compatible
- reg
- mediatek,gce-client-reg
- - mediatek,gce-events
- clocks
additionalProperties: false
diff --git a/Documentation/devicetree/bindings/media/mediatek,mt8195-mdp3.yaml b/Documentation/devicetree/bindings/media/mediatek,mt8195-mdp3.yaml
new file mode 100644
index 000000000000..d2b01456c495
--- /dev/null
+++ b/Documentation/devicetree/bindings/media/mediatek,mt8195-mdp3.yaml
@@ -0,0 +1,174 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/media/mediatek,mt8195-mdp3.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: MediaTek Media Data Path 3 display components
+
+maintainers:
+ - Matthias Brugger <matthias.bgg@gmail.com>
+ - Moudy Ho <moudy.ho@mediatek.com>
+
+description:
+ A group of display pipeline components for image quality adjustment,
+ color format conversion and data flow control, and the abbreviations
+ are explained below.
+ AAL - Ambient-light Adaptive Luma.
+ Color - Enhance or reduce color in Y/S/H channel.
+ FG - Fime Grain for AV1 spec.
+ HDR - Perform HDR to SDR.
+ MERGE - Used to merge two slice-per-line into one side-by-side.
+ OVL - Perform alpha blending.
+ PAD - Predefined alpha or color value insertion.
+ SPLIT - Split a HDMI stream into two ouptut.
+ STITCH - Combine multiple video frame with overlapping fields of view.
+ TCC - HDR gamma curve conversion support.
+ TDSHP - Sharpness and contrast improvement.
+
+properties:
+ compatible:
+ enum:
+ - mediatek,mt8195-mdp3-aal
+ - mediatek,mt8195-mdp3-color
+ - mediatek,mt8195-mdp3-fg
+ - mediatek,mt8195-mdp3-hdr
+ - mediatek,mt8195-mdp3-merge
+ - mediatek,mt8195-mdp3-ovl
+ - mediatek,mt8195-mdp3-pad
+ - mediatek,mt8195-mdp3-split
+ - mediatek,mt8195-mdp3-stitch
+ - mediatek,mt8195-mdp3-tcc
+ - mediatek,mt8195-mdp3-tdshp
+
+ reg:
+ maxItems: 1
+
+ mediatek,gce-client-reg:
+ $ref: /schemas/types.yaml#/definitions/phandle-array
+ items:
+ items:
+ - description: phandle of GCE
+ - description: GCE subsys id
+ - description: register offset
+ - description: register size
+ description:
+ Each GCE subsys id is mapping to a base address of display function blocks
+ register which is defined in <include/dt-bindings/gce/mt8195-gce.h>.
+ maxItems: 1
+
+ clocks:
+ minItems: 1
+ maxItems: 7
+
+ power-domains:
+ maxItems: 1
+
+required:
+ - compatible
+ - reg
+ - mediatek,gce-client-reg
+ - clocks
+ - power-domains
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/clock/mt8195-clk.h>
+ #include <dt-bindings/gce/mt8195-gce.h>
+ #include <dt-bindings/power/mt8195-power.h>
+
+ display@14002000 {
+ compatible = "mediatek,mt8195-mdp3-fg";
+ reg = <0x14002000 0x1000>;
+ mediatek,gce-client-reg = <&gce1 SUBSYS_1400XXXX 0x2000 0x1000>;
+ clocks = <&vppsys0 CLK_VPP0_MDP_FG>;
+ power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS0>;
+ };
+
+ display@14003000 {
+ compatible = "mediatek,mt8195-mdp3-stitch";
+ reg = <0x14003000 0x1000>;
+ mediatek,gce-client-reg = <&gce1 SUBSYS_1400XXXX 0x3000 0x1000>;
+ clocks = <&vppsys0 CLK_VPP0_STITCH>;
+ power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS0>;
+ };
+
+ display@14004000 {
+ compatible = "mediatek,mt8195-mdp3-hdr";
+ reg = <0x14004000 0x1000>;
+ mediatek,gce-client-reg = <&gce1 SUBSYS_1400XXXX 0x4000 0x1000>;
+ clocks = <&vppsys0 CLK_VPP0_MDP_HDR>;
+ power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS0>;
+ };
+
+ display@14005000 {
+ compatible = "mediatek,mt8195-mdp3-aal";
+ reg = <0x14005000 0x1000>;
+ mediatek,gce-client-reg = <&gce1 SUBSYS_1400XXXX 0x5000 0x1000>;
+ clocks = <&vppsys0 CLK_VPP0_MDP_AAL>;
+ power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS0>;
+ };
+
+ display@14f06000 {
+ compatible = "mediatek,mt8195-mdp3-split";
+ reg = <0x14f06000 0x1000>;
+ mediatek,gce-client-reg = <&gce1 SUBSYS_14f0XXXX 0x6000 0x1000>;
+ clocks = <&vppsys1 CLK_VPP1_VPP_SPLIT>,
+ <&vppsys1 CLK_VPP1_HDMI_META>,
+ <&vppsys1 CLK_VPP1_VPP_SPLIT_HDMI>,
+ <&vppsys1 CLK_VPP1_DGI_IN>,
+ <&vppsys1 CLK_VPP1_DGI_OUT>,
+ <&vppsys1 CLK_VPP1_VPP_SPLIT_DGI>,
+ <&vppsys1 CLK_VPP1_VPP_SPLIT_26M>;
+ power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS1>;
+ };
+
+ display@14007000 {
+ compatible = "mediatek,mt8195-mdp3-tdshp";
+ reg = <0x14007000 0x1000>;
+ mediatek,gce-client-reg = <&gce1 SUBSYS_1400XXXX 0x7000 0x1000>;
+ clocks = <&vppsys0 CLK_VPP0_MDP_TDSHP>;
+ power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS0>;
+ };
+
+ display@14008000 {
+ compatible = "mediatek,mt8195-mdp3-color";
+ reg = <0x14008000 0x1000>;
+ mediatek,gce-client-reg = <&gce1 SUBSYS_1400XXXX 0x8000 0x1000>;
+ clocks = <&vppsys0 CLK_VPP0_MDP_COLOR>;
+ power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS0>;
+ };
+
+ display@14009000 {
+ compatible = "mediatek,mt8195-mdp3-ovl";
+ reg = <0x14009000 0x1000>;
+ mediatek,gce-client-reg = <&gce1 SUBSYS_1400XXXX 0x9000 0x1000>;
+ clocks = <&vppsys0 CLK_VPP0_MDP_OVL>;
+ power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS0>;
+ };
+
+ display@1400a000 {
+ compatible = "mediatek,mt8195-mdp3-pad";
+ reg = <0x1400a000 0x1000>;
+ mediatek,gce-client-reg = <&gce1 SUBSYS_1400XXXX 0xa000 0x1000>;
+ clocks = <&vppsys0 CLK_VPP0_PADDING>;
+ power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS0>;
+ };
+
+ display@1400b000 {
+ compatible = "mediatek,mt8195-mdp3-tcc";
+ reg = <0x1400b000 0x1000>;
+ mediatek,gce-client-reg = <&gce1 SUBSYS_1400XXXX 0xb000 0x1000>;
+ clocks = <&vppsys0 CLK_VPP0_MDP_TCC>;
+ power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS0>;
+ };
+
+ display@14f1a000 {
+ compatible = "mediatek,mt8195-mdp3-merge";
+ reg = <0x14f1a000 0x1000>;
+ mediatek,gce-client-reg = <&gce1 SUBSYS_14f1XXXX 0xa000 0x1000>;
+ clocks = <&vppsys1 CLK_VPP1_SVPP2_VPP_MERGE>;
+ power-domains = <&spm MT8195_POWER_DOMAIN_VPPSYS1>;
+ };
--
2.18.0
next prev parent reply other threads:[~2023-02-08 9:24 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-08 9:21 [PATCH v4 00/16] add support MDP3 on MT8195 platform Moudy Ho
2023-02-08 9:21 ` [PATCH v4 01/16] dt-binding: mediatek: correct MDP3 node with generic names Moudy Ho
2023-02-09 17:46 ` Rob Herring
2023-02-08 9:21 ` [PATCH v4 02/16] arm64: dts: mediatek: mt8183: correct MDP3 DMA-related nodes Moudy Ho
2023-02-08 9:21 ` Moudy Ho [this message]
2023-02-09 18:01 ` [PATCH v4 03/16] dt-binding: mediatek: add MediaTek mt8195 MDP3 components Rob Herring
2023-02-10 6:51 ` Moudy Ho (何宗原)
2023-02-08 9:21 ` [PATCH v4 04/16] arm64: dts: mediatek: mt8195: add MDP3 nodes Moudy Ho
2023-02-08 9:21 ` [PATCH v4 05/16] media: platform: mtk-mdp3: add support second sets of MMSYS Moudy Ho
2023-02-08 9:21 ` [PATCH v4 06/16] media: platform: mtk-mdp3: add support second sets of MUTEX Moudy Ho
2023-02-08 9:22 ` [PATCH v4 07/16] media: platform: mtk-mdp3: introduce more pipelines from MT8195 Moudy Ho
2023-02-08 9:22 ` [PATCH v4 08/16] media: platform: mtk-mdp3: introduce more MDP3 components Moudy Ho
2023-02-08 9:22 ` [PATCH v4 09/16] media: platform: mtk-mdp3: add checks for dummy components Moudy Ho
2023-02-08 9:22 ` [PATCH v4 10/16] media: platform: mtk-mdp3: avoid multiple driver registrations Moudy Ho
2023-02-08 9:22 ` [PATCH v4 11/16] media: platform: mtk-mdp3: extend GCE event waiting in RDMA and WROT Moudy Ho
2023-02-08 9:22 ` [PATCH v4 12/16] media: platform: mtk-mdp3: add the blend of component in MUTEX MOD Moudy Ho
2023-02-08 9:22 ` [PATCH v4 13/16] media: platform: mtk-mdp3: add mt8195 platform configuration Moudy Ho
2023-02-08 9:22 ` [PATCH v4 14/16] media: platform: mtk-mdp3: add mt8195 shared memory configurations Moudy Ho
2023-02-08 9:22 ` [PATCH v4 15/16] media: platform: mtk-mdp3: add mt8195 MDP3 component settings Moudy Ho
2023-02-08 9:22 ` [PATCH v4 16/16] media: platform: mtk-mdp3: add support for parallel pipe to improve FPS Moudy Ho
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=20230208092209.19472-4-moudy.ho@mediatek.com \
--to=moudy.ho@mediatek.com \
--cc=Project_Global_Chrome_Upstream_Group@mediatek.com \
--cc=devicetree@vger.kernel.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=matthias.bgg@gmail.com \
--cc=mchehab@kernel.org \
--cc=robh+dt@kernel.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