Received: by 2002:a05:6a10:1287:0:0:0:0 with SMTP id d7csp3246174pxv; Sun, 18 Jul 2021 16:24:16 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxV2moVq9Yv9ps3k7qGpnHcQ7M8IGe1Xtp8M9MK20d9eexvAkz9vBB269QQ8D2E0oGachpo X-Received: by 2002:a17:906:28d1:: with SMTP id p17mr22979069ejd.130.1626650656229; Sun, 18 Jul 2021 16:24:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626650656; cv=none; d=google.com; s=arc-20160816; b=laBEQPwZ0CBq2IIxEW2O+0wzVMq7aP5To9Vj9k9B5q69y5rf5JjoQAe35zT2xKJi3X gouC5N4RJzzUrct6fu6rKp4xZMKhHcAnG9innzMOLBSklyGCbSIoiBP/JhJY/DkAo7wz 9SZ06+9dE0uo7RmuLSXU+zdIFh0hWcRfgh/obNoHdYo3iVztVOIyBA7o7nBRekiKfWgt /xM2zQKcXjAqFll/gUx4+Tb1l3mZ6ubjXCQCADZEjYdsb+2AFxZ70GzL2lPC/BigL8Kt tS1PMYz62CXx2b+5vGi++EStS6k+TxBbtLWsZToqjpcTiXmBbCqWwOEytzSH1ZgdhgOE SU8Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=FJEyleHinlBGj1I5avow0ODPiGbhcVMIj0fBY1L1qcY=; b=zFnuB6Qg7A/IuVctj+sT2P7NXLgZts+dr6/0XeSiBOnW3w57j90/wwbNzsIBDgQxrR MVF94bAjd25XyndPs/bIda/D6ai1Nmf9TPEVBubpi646nGQrcMJOJ2/2aDy41W60B9qr shy1BFOEnMoD7frRqBI5H6No6mf+Yo6RJC7435FgD5G33yavJKnBGvp9++HkciPh3z+w aDIufqcgNYMBx/8kj4QIOHf8j8uLRgYfurIz3oNYr+Yj3i/PI7H3rFSK4h4OgoUxecTU 1PL+3eJErLopEtJaQa6SL98nlXqkRW99ykT55mIGoZCYXMll4ZSrUihbQlqvnYb2kwMz Iuhg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=byKOgNCk; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id j24si2611413edt.93.2021.07.18.16.23.53; Sun, 18 Jul 2021 16:24:16 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=byKOgNCk; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233569AbhGRXZ4 (ORCPT + 99 others); Sun, 18 Jul 2021 19:25:56 -0400 Received: from mail.kernel.org ([198.145.29.99]:32890 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231846AbhGRXZz (ORCPT ); Sun, 18 Jul 2021 19:25:55 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id A7A7061166; Sun, 18 Jul 2021 23:22:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1626650576; bh=+cIz9IsxTWX0flU1vqzo73L/SPqQutS6FLX3yWrvH3A=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=byKOgNCkjolptKZ8o4CD5FZBcRQ66Zn6YY6qX6/BlieuaheftSXku3KUimj07pzTB SLqyZ4X/+BGySRyq/eQfKJ4SqH5zlC23/VZQJQ3fVM7Jwv9imG53OIhZeTn0ubpFNc 1utIgSgZ2Xf+yaSC5uCFz2t2K96DR5cvDP/nBWkp6cx8zVEm/00vl47M7j5d4wnDR3 vOExrMrFKqfnKtqOStC9N/6uQ9dYPIBLOLssRuX+YJaYXH2yXlLnpj+773iajx0gNd dlYIqv2R8RXkiVtzueGVwC7MJZS2G+iX4Jt0b5KZcimPGnV/CsxFUeFa3XvWVaVLdb Jtt5mFre8vCmg== Received: by mail-ed1-f52.google.com with SMTP id v1so21243941edt.6; Sun, 18 Jul 2021 16:22:56 -0700 (PDT) X-Gm-Message-State: AOAM532X6lIBOVR7MNbP2LFUhWcSkG5q3TihJ85cbmulF2YoDcb7Ip8N fUyCS8KUYplvsRspm+pIHPc/1IrhF+jSUID3UA== X-Received: by 2002:aa7:d353:: with SMTP id m19mr31865120edr.162.1626650575251; Sun, 18 Jul 2021 16:22:55 -0700 (PDT) MIME-Version: 1.0 References: <20210717090408.28283-1-nancy.lin@mediatek.com> <20210717090408.28283-2-nancy.lin@mediatek.com> In-Reply-To: <20210717090408.28283-2-nancy.lin@mediatek.com> From: Chun-Kuang Hu Date: Mon, 19 Jul 2021 07:22:43 +0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v1 01/10] dt-bindings: mediatek: add pseudo-ovl definition for mt8195 To: "Nancy.Lin" Cc: CK Hu , Chun-Kuang Hu , Philipp Zabel , David Airlie , Daniel Vetter , Rob Herring , Matthias Brugger , "jason-jh . lin" , Yongqiang Niu , DRI Development , "moderated list:ARM/Mediatek SoC support" , DTML , linux-kernel , Linux ARM , singo.chang@mediatek.com, srv_heupstream Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, Nancy: Nancy.Lin =E6=96=BC 2021=E5=B9=B47=E6=9C=8817=E6= =97=A5 =E9=80=B1=E5=85=AD =E4=B8=8B=E5=8D=885:04=E5=AF=AB=E9=81=93=EF=BC=9A > > 1. Add pseudo-ovl definition file for mt8195 display. > 2. Add mediatek,pseudo-ovl.yaml to decribe pseudo-ovl module in details. > > Signed-off-by: Nancy.Lin > --- > .../display/mediatek/mediatek,disp.yaml | 5 + > .../display/mediatek/mediatek,pseudo-ovl.yaml | 105 ++++++++++++++++++ > 2 files changed, 110 insertions(+) > create mode 100644 Documentation/devicetree/bindings/display/mediatek/me= diatek,pseudo-ovl.yaml > > diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,= disp.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,dis= p.yaml > index aac1796e3f6b..bb6d28572b48 100644 > --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,disp.ya= ml > +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,disp.ya= ml > @@ -230,6 +230,11 @@ properties: > - items: > - const: mediatek,mt8173-disp-od > > + # PSEUDO-OVL: see Documentation/devicetree/bindings/display/mediat= ek/mediatek,pseudo-ovl.yaml > + # for details. > + - items: > + - const: mediatek,mt8195-disp-pseudo-ovl > + > reg: > description: Physical base address and length of the function block = register space. > > diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,= pseudo-ovl.yaml b/Documentation/devicetree/bindings/display/mediatek/mediat= ek,pseudo-ovl.yaml > new file mode 100644 > index 000000000000..9059d96ce70e > --- /dev/null > +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,pseudo-= ovl.yaml > @@ -0,0 +1,105 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/display/mediatek/mediatek,pseudo-ovl.= yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: mediatek pseudo ovl Device Tree Bindings > + > +maintainers: > + - CK Hu > + - Nancy.Lin > + > +description: | > + The Mediatek pseudo ovl function block is composed of eight RDMA and > + four MERGE devices. It's encapsulated as an overlay device, which supp= orts > + 4 layers. > + > +properties: > + compatible: > + oneOf: > + # pseudo ovl controller > + - items: > + - const: mediatek,mt8195-disp-pseudo-ovl > + # RDMA: read DMA > + - items: > + - const: mediatek,mt8195-vdo1-rdma > + # MERGE: merge streams from two RDMA sources > + - items: > + - const: mediatek,mt8195-vdo1-merge > + reg: > + maxItems: 1 > + interrupts: > + maxItems: 1 > + iommus: > + description: The compatible property is DMA function blocks. > + Should point to the respective IOMMU block with master port as arg= ument, > + see Documentation/devicetree/bindings/iommu/mediatek,iommu.yaml fo= r > + details. > + maxItems: 1 > + clocks: > + maxItems: 2 > + clock-names: > + maxItems: 2 > + power-domains: > + maxItems: 1 > + mediatek,gce-client-reg: > + $ref: /schemas/types.yaml#/definitions/phandle-array > + description: The register of display function block to be set by gce= . > + There are 4 arguments in this property, gce node, subsys id, offse= t and > + register size. The subsys id is defined in the gce header of each = chips > + include/include/dt-bindings/gce/-gce.h, mapping to the regis= ter of > + display function block. > + > +allOf: > + - if: > + properties: > + compatible: > + contains: > + const: > + - mediatek,mt8195-vdo1-merge > + > + then: > + properties: > + clocks: > + items: > + - description: merge clock > + - description: merge async clock > + clock-names: > + items: > + - const: merge > + - const: merge_async > + > +required: > + - compatible > + - reg > + - clocks > + > +additionalProperties: false > + > +examples: > + - | > + > + vdo1_rdma@1c104000 { > + compatible =3D "mediatek,mt8195-vdo1-rdma", > + "mediatek,mt8195-disp-pseudo-ovl"; Do not create pseudo or virtual device, so just leave the "mediatek,mt8195-vdo1-rdma". Regards, Chun-Kuang. > + reg =3D <0 0x1c104000 0 0x1000>; > + interrupts =3D ; > + clocks =3D <&vdosys1 CLK_VDO1_MDP_RDMA0>; > + power-domains =3D <&spm MT8195_POWER_DOMAIN_VDOSYS1>; > + iommus =3D <&iommu_vdo M4U_PORT_L2_MDP_RDMA0>; > + mediatek,gce-client-reg =3D <&gce1 SUBSYS_1c10XXXX 0x4000 0x= 1000>; > + }; > + > + disp_vpp_merge@1c10c000 { > + compatible =3D "mediatek,mt8195-vdo1-merge"; > + reg =3D <0 0x1c10c000 0 0x1000>; > + interrupts =3D ; > + clocks =3D <&vdosys1 CLK_VDO1_VPP_MERGE0>, > + <&vdosys1 CLK_VDO1_MERGE0_DL_ASYNC>; > + clock-names =3D "merge","merge_async"; > + power-domains =3D <&spm MT8195_POWER_DOMAIN_VDOSYS1>; > + mediatek,gce-client-reg =3D <&gce1 SUBSYS_1c10XXXX 0xc000 0x= 1000>; > + }; > + > +... > -- > 2.18.0 >