From: Rob Herring <robh@kernel.org>
To: Moudy Ho <moudy.ho@mediatek.com>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Matthias Brugger <matthias.bgg@gmail.com>,
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
Subject: Re: [PATCH v4 03/16] dt-binding: mediatek: add MediaTek mt8195 MDP3 components
Date: Thu, 9 Feb 2023 12:01:25 -0600 [thread overview]
Message-ID: <20230209180125.GA557423-robh@kernel.org> (raw)
In-Reply-To: <20230208092209.19472-4-moudy.ho@mediatek.com>
On Wed, Feb 08, 2023 at 05:21:56PM +0800, Moudy Ho wrote:
> Adds support for MT8195 MDP3 RDMA, and introduce more MDP3 components
> present in MT8195.
I'm sure I asked this before, but how are these blocks different from
what we already have in bindings/display/mediatek/. It's all the same
block names. If they are the same/similar h/w, then it should be 1
binding even if you have different consumers in the kernel.
If my questions aren't answered in the patches, then I'll just keep
asking because I won't remember...
>
> 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.
Each block likely needs its own schema.
> +
> +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
Given these match up to reg values, I'm really wondering why we have
this.
> + 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
You have to define what each clock is which probably depends on each
block.
Rob
WARNING: multiple messages have this Message-ID (diff)
From: Rob Herring <robh@kernel.org>
To: Moudy Ho <moudy.ho@mediatek.com>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Matthias Brugger <matthias.bgg@gmail.com>,
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
Subject: Re: [PATCH v4 03/16] dt-binding: mediatek: add MediaTek mt8195 MDP3 components
Date: Thu, 9 Feb 2023 12:01:25 -0600 [thread overview]
Message-ID: <20230209180125.GA557423-robh@kernel.org> (raw)
In-Reply-To: <20230208092209.19472-4-moudy.ho@mediatek.com>
On Wed, Feb 08, 2023 at 05:21:56PM +0800, Moudy Ho wrote:
> Adds support for MT8195 MDP3 RDMA, and introduce more MDP3 components
> present in MT8195.
I'm sure I asked this before, but how are these blocks different from
what we already have in bindings/display/mediatek/. It's all the same
block names. If they are the same/similar h/w, then it should be 1
binding even if you have different consumers in the kernel.
If my questions aren't answered in the patches, then I'll just keep
asking because I won't remember...
>
> 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.
Each block likely needs its own schema.
> +
> +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
Given these match up to reg values, I'm really wondering why we have
this.
> + 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
You have to define what each clock is which probably depends on each
block.
Rob
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2023-02-09 18:02 UTC|newest]
Thread overview: 40+ 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 ` Moudy Ho
2023-02-08 9:21 ` [PATCH v4 01/16] dt-binding: mediatek: correct MDP3 node with generic names Moudy Ho
2023-02-08 9:21 ` Moudy Ho
2023-02-09 17:46 ` Rob Herring
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
2023-02-08 9:21 ` [PATCH v4 03/16] dt-binding: mediatek: add MediaTek mt8195 MDP3 components Moudy Ho
2023-02-08 9:21 ` Moudy Ho
2023-02-09 18:01 ` Rob Herring [this message]
2023-02-09 18:01 ` Rob Herring
2023-02-10 6:51 ` Moudy Ho (何宗原)
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 ` 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 ` 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:21 ` 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 ` 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 ` 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 ` 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 ` 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 ` 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 ` 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 ` 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 ` 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 ` 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
2023-02-08 9:22 ` 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=20230209180125.GA557423-robh@kernel.org \
--to=robh@kernel.org \
--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=moudy.ho@mediatek.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.