Message ID | 20230922072116.11009-13-moudy.ho@mediatek.com |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:172:b0:3f2:4152:657d with SMTP id h50csp5415639vqi; Fri, 22 Sep 2023 01:51:36 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFq7cvdr3BsYaM73/KbI3IjxMnqezYp+P+vnmUSZM7RUSzVI1FXZ3bJH0d8vTn+4Ut6j0Mt X-Received: by 2002:a05:6a21:19f:b0:134:70b7:2386 with SMTP id le31-20020a056a21019f00b0013470b72386mr3296034pzb.9.1695372695762; Fri, 22 Sep 2023 01:51:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1695372695; cv=none; d=google.com; s=arc-20160816; b=cLRPIq2XYARrvpqU+gwignkvH6hbH4m/ekAus20BvsMSmwBcpGLNLsZEtxzsVBdNFG IlJbKrjiFidVUK9At3x+6uNZ0qJ8PsEtDuJw4Fp2HPnb2pTobPxHdoqXWe1sMpyR0CTx nIq0q2O5mpBIEZDFh2WnxWlKsr+eT6KybTOzjyzrPyKlqcdYyecS8XC0pKZxWygIpKpi B2ERq8pLFW3CIMyt0fvvD5igOjp9Bnwe277XIzBNLeBtzcnRgJ4EhzT9i2g9C47laeQq 1QcNt/Ie/P00Ul+V+fUNe+ypFRScqUUAD734L6NUyKQe/mSaIvXMH+1EPrCM9Yx6xcJ1 3ubw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=JrscK/Pmn31vq3QueZS+3DmRlbk4U+Q1tcQcWf83jFU=; fh=SE8P9IcxtB2Gz/wdtSbGJFl2wIf8TbeQx856Bu5KJOQ=; b=CMb0z4bokuipwJ+ofjBJUH6/aumPX0dae24+15TPRVU+ds9vNovBaNGQHTaFx14z/+ JERgnJhM359kvmCSsty8mCxp2i8ZQbs7CYZTU8+GVPzmH6Y2lQgWkCLD8qu94jQawzzK KMN2GwaT6R8PI2K/2xUlEx2XIBfU5hv/o7pAswb695od5aiIHLJ7srLG2gOU0ZVpU4bI 4MhYYPZ04m7skCVHAlWNjFHcLTAhrH9PvQS/W4VRe4qN+/Hkk3FpoNYAuyte6sjTPJM1 gZAoZbvNE//p3/OxOXZlcf6I8GxzMecUGneANNJ0Zu3wdeJJVolFzXep+hFeLkVwkGYx vXMg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b=WkVYWrtx; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=mediatek.com Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id s196-20020a6377cd000000b00577723d24b0si3405653pgc.46.2023.09.22.01.51.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 22 Sep 2023 01:51:35 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b=WkVYWrtx; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=mediatek.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id 51A53836723F; Fri, 22 Sep 2023 00:22:26 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231545AbjIVHWC (ORCPT <rfc822;chrisfriedt@gmail.com> + 30 others); Fri, 22 Sep 2023 03:22:02 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58456 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231128AbjIVHVi (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Fri, 22 Sep 2023 03:21:38 -0400 Received: from mailgw02.mediatek.com (unknown [210.61.82.184]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BE35D1A8; Fri, 22 Sep 2023 00:21:27 -0700 (PDT) X-UUID: a03d6722591811ee8051498923ad61e6-20230922 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Type:MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:CC:To:From; bh=JrscK/Pmn31vq3QueZS+3DmRlbk4U+Q1tcQcWf83jFU=; b=WkVYWrtxju5d0hEq2u8QEA4nZeXxEodQmuIBDJvEztazkN8wZJg3WRIXZB07iTqoFlr04oZnJSEzcrh58Qe2t1Ney249hXnvjzQfoOpC3qwuihbCZ9TcgGMGlFqJS0LceF4BZeygvoZ9oaEL5j3uWOnXlkElahclLh2GEPX8ffc=; X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.32,REQID:1a119c55-0d1b-41f1-8406-d077f1bbf5e2,IP:0,U RL:0,TC:0,Content:0,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTION: release,TS:0 X-CID-META: VersionHash:5f78ec9,CLOUDID:7c5a3e14-4929-4845-9571-38c601e9c3c9,B ulkID:nil,BulkQuantity:0,Recheck:0,SF:102,TC:nil,Content:0,EDM:-3,IP:nil,U RL:0,File:nil,Bulk:nil,QS:nil,BEC:nil,COL:0,OSI:0,OSA:0,AV:0,LES:1,SPR:NO, DKR:0,DKP:0,BRR:0,BRE:0 X-CID-BVR: 0,NGT X-CID-BAS: 0,NGT,0,_ X-CID-FACTOR: TF_CID_SPAM_SNR X-UUID: a03d6722591811ee8051498923ad61e6-20230922 Received: from mtkmbs13n1.mediatek.inc [(172.21.101.193)] by mailgw02.mediatek.com (envelope-from <moudy.ho@mediatek.com>) (Generic MTA with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 68253862; Fri, 22 Sep 2023 15:21:19 +0800 Received: from mtkmbs13n2.mediatek.inc (172.21.101.108) by mtkmbs13n2.mediatek.inc (172.21.101.108) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.26; Fri, 22 Sep 2023 15:21:19 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by mtkmbs13n2.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.2.1118.26 via Frontend Transport; Fri, 22 Sep 2023 15:21:19 +0800 From: Moudy Ho <moudy.ho@mediatek.com> To: Chun-Kuang Hu <chunkuang.hu@kernel.org>, Philipp Zabel <p.zabel@pengutronix.de>, David Airlie <airlied@gmail.com>, Daniel Vetter <daniel@ffwll.ch>, Rob Herring <robh+dt@kernel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>, Conor Dooley <conor+dt@kernel.org>, Mauro Carvalho Chehab <mchehab@kernel.org>, Matthias Brugger <matthias.bgg@gmail.com>, AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>, Hans Verkuil <hverkuil-cisco@xs4all.nl> CC: <dri-devel@lists.freedesktop.org>, <linux-mediatek@lists.infradead.org>, <devicetree@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <linux-media@vger.kernel.org>, <linux-arm-kernel@lists.infradead.org>, Moudy Ho <moudy.ho@mediatek.com> Subject: [PATCH v6 12/16] dt-bindings: display: mediatek: color: add compatible for MT8195 Date: Fri, 22 Sep 2023 15:21:12 +0800 Message-ID: <20230922072116.11009-13-moudy.ho@mediatek.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20230922072116.11009-1-moudy.ho@mediatek.com> References: <20230922072116.11009-1-moudy.ho@mediatek.com> MIME-Version: 1.0 Content-Type: text/plain X-MTK: N X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Fri, 22 Sep 2023 00:22:26 -0700 (PDT) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1777727120138509943 X-GMAIL-MSGID: 1777727120138509943 |
Series |
introduce more MDP3 components in MT8195
|
|
Commit Message
Moudy Ho (何宗原)
Sept. 22, 2023, 7:21 a.m. UTC
Add a compatible string for the COLOR block in MediaTek MT8195 that
is controlled by MDP3.
Signed-off-by: Moudy Ho <moudy.ho@mediatek.com>
---
.../devicetree/bindings/display/mediatek/mediatek,color.yaml | 1 +
1 file changed, 1 insertion(+)
Comments
On Fri, Sep 22, 2023 at 03:21:12PM +0800, Moudy Ho wrote: > Add a compatible string for the COLOR block in MediaTek MT8195 that > is controlled by MDP3. > > Signed-off-by: Moudy Ho <moudy.ho@mediatek.com> > --- > .../devicetree/bindings/display/mediatek/mediatek,color.yaml | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml > index f21e44092043..b886ca0d89ea 100644 > --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml > +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml > @@ -26,6 +26,7 @@ properties: > - mediatek,mt2701-disp-color > - mediatek,mt8167-disp-color > - mediatek,mt8173-disp-color > + - mediatek,mt8195-mdp3-color How come this one is a "mdp3" not a "disp"? > - items: > - enum: > - mediatek,mt7623-disp-color > -- > 2.18.0 >
On Fri, Sep 22, 2023 at 04:49:14PM +0100, Conor Dooley wrote: > On Fri, Sep 22, 2023 at 03:21:12PM +0800, Moudy Ho wrote: > > Add a compatible string for the COLOR block in MediaTek MT8195 that > > is controlled by MDP3. > > > > Signed-off-by: Moudy Ho <moudy.ho@mediatek.com> > > --- > > .../devicetree/bindings/display/mediatek/mediatek,color.yaml | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml > > index f21e44092043..b886ca0d89ea 100644 > > --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml > > +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml > > @@ -26,6 +26,7 @@ properties: > > - mediatek,mt2701-disp-color > > - mediatek,mt8167-disp-color > > - mediatek,mt8173-disp-color > > + - mediatek,mt8195-mdp3-color > > How come this one is a "mdp3" not a "disp"? I don't know what mdp3 means & googling gives me no answers. What's the "disp" one controlled by, since it isn't controlled by mdp3? > > > - items: > > - enum: > > - mediatek,mt7623-disp-color > > -- > > 2.18.0 > >
On Fri, 2023-09-22 at 16:51 +0100, Conor Dooley wrote: > On Fri, Sep 22, 2023 at 04:49:14PM +0100, Conor Dooley wrote: > > On Fri, Sep 22, 2023 at 03:21:12PM +0800, Moudy Ho wrote: > > > Add a compatible string for the COLOR block in MediaTek MT8195 > > > that > > > is controlled by MDP3. > > > > > > Signed-off-by: Moudy Ho <moudy.ho@mediatek.com> > > > --- > > > .../devicetree/bindings/display/mediatek/mediatek,color.yaml > > > | 1 + > > > 1 file changed, 1 insertion(+) > > > > > > diff --git > > > a/Documentation/devicetree/bindings/display/mediatek/mediatek,col > > > or.yaml > > > b/Documentation/devicetree/bindings/display/mediatek/mediatek,col > > > or.yaml > > > index f21e44092043..b886ca0d89ea 100644 > > > --- > > > a/Documentation/devicetree/bindings/display/mediatek/mediatek,col > > > or.yaml > > > +++ > > > b/Documentation/devicetree/bindings/display/mediatek/mediatek,col > > > or.yaml > > > @@ -26,6 +26,7 @@ properties: > > > - mediatek,mt2701-disp-color > > > - mediatek,mt8167-disp-color > > > - mediatek,mt8173-disp-color > > > + - mediatek,mt8195-mdp3-color > > > > How come this one is a "mdp3" not a "disp"? > > I don't know what mdp3 means & googling gives me no answers. What's > the > "disp" one controlled by, since it isn't controlled by mdp3? > Hi Conor, Mediatek's Media Data Path ver.3 (MDP3) is associated with MMSYS and acts as an independent driver that operates between VDEC and DISP. By controlling multiple components, it carries out tasks like converting color formats, resizing, and applying specific Picture Quality (PQ) effects. The driver can be found at "driver/media/platform/mediatek/mdp3". Since the same hardware components are configured in both MDP3 and DISP, considering previous discussions, I attemped to integrate into a single binding, named after the controlling user. Sincerely, Moudy > > > > > - items: > > > - enum: > > > - mediatek,mt7623-disp-color > > > -- > > > 2.18.0 > > > > >
On Wed, Sep 27, 2023 at 07:19:28AM +0000, Moudy Ho (何宗原) wrote: > On Fri, 2023-09-22 at 16:51 +0100, Conor Dooley wrote: > > On Fri, Sep 22, 2023 at 04:49:14PM +0100, Conor Dooley wrote: > > > On Fri, Sep 22, 2023 at 03:21:12PM +0800, Moudy Ho wrote: > > > > Add a compatible string for the COLOR block in MediaTek MT8195 > > > > that > > > > is controlled by MDP3. > > > > > > > > Signed-off-by: Moudy Ho <moudy.ho@mediatek.com> > > > > --- > > > > .../devicetree/bindings/display/mediatek/mediatek,color.yaml > > > > | 1 + > > > > 1 file changed, 1 insertion(+) > > > > > > > > diff --git > > > > a/Documentation/devicetree/bindings/display/mediatek/mediatek,col > > > > or.yaml > > > > b/Documentation/devicetree/bindings/display/mediatek/mediatek,col > > > > or.yaml > > > > index f21e44092043..b886ca0d89ea 100644 > > > > --- > > > > a/Documentation/devicetree/bindings/display/mediatek/mediatek,col > > > > or.yaml > > > > +++ > > > > b/Documentation/devicetree/bindings/display/mediatek/mediatek,col > > > > or.yaml > > > > @@ -26,6 +26,7 @@ properties: > > > > - mediatek,mt2701-disp-color > > > > - mediatek,mt8167-disp-color > > > > - mediatek,mt8173-disp-color > > > > + - mediatek,mt8195-mdp3-color > > > > > > How come this one is a "mdp3" not a "disp"? > > > > I don't know what mdp3 means & googling gives me no answers. What's > > the > > "disp" one controlled by, since it isn't controlled by mdp3? > > > > Hi Conor, > > Mediatek's Media Data Path ver.3 (MDP3) is associated with MMSYS and > acts as an independent driver that operates between VDEC and DISP. > By controlling multiple components, it carries out tasks like > converting color formats, resizing, and applying specific Picture > Quality (PQ) effects. > The driver can be found at "driver/media/platform/mediatek/mdp3". > Since the same hardware components are configured in both MDP3 and > DISP, considering previous discussions, I attemped to integrate into a > single binding, named after the controlling user. I'm still kinda struggling to understand this. Do you mean that the hardware can be controlled by either of the disp and mdp3 drivers, and a compatible containing "disp" would use one driver, and one containing "mdp3" would use another?
On Wed, 2023-09-27 at 10:47 +0100, Conor Dooley wrote: > On Wed, Sep 27, 2023 at 07:19:28AM +0000, Moudy Ho (何宗原) wrote: > > On Fri, 2023-09-22 at 16:51 +0100, Conor Dooley wrote: > > > On Fri, Sep 22, 2023 at 04:49:14PM +0100, Conor Dooley wrote: > > > > On Fri, Sep 22, 2023 at 03:21:12PM +0800, Moudy Ho wrote: > > > > > Add a compatible string for the COLOR block in MediaTek > > > > > MT8195 > > > > > that > > > > > is controlled by MDP3. > > > > > > > > > > Signed-off-by: Moudy Ho <moudy.ho@mediatek.com> > > > > > --- > > > > > .../devicetree/bindings/display/mediatek/mediatek,color.yaml > > > > > > > > > > | 1 + > > > > > 1 file changed, 1 insertion(+) > > > > > > > > > > diff --git > > > > > a/Documentation/devicetree/bindings/display/mediatek/mediatek > > > > > ,col > > > > > or.yaml > > > > > b/Documentation/devicetree/bindings/display/mediatek/mediatek > > > > > ,col > > > > > or.yaml > > > > > index f21e44092043..b886ca0d89ea 100644 > > > > > --- > > > > > a/Documentation/devicetree/bindings/display/mediatek/mediatek > > > > > ,col > > > > > or.yaml > > > > > +++ > > > > > b/Documentation/devicetree/bindings/display/mediatek/mediatek > > > > > ,col > > > > > or.yaml > > > > > @@ -26,6 +26,7 @@ properties: > > > > > - mediatek,mt2701-disp-color > > > > > - mediatek,mt8167-disp-color > > > > > - mediatek,mt8173-disp-color > > > > > + - mediatek,mt8195-mdp3-color > > > > > > > > How come this one is a "mdp3" not a "disp"? > > > > > > I don't know what mdp3 means & googling gives me no answers. > > > What's > > > the > > > "disp" one controlled by, since it isn't controlled by mdp3? > > > > > > > Hi Conor, > > > > Mediatek's Media Data Path ver.3 (MDP3) is associated with MMSYS > > and > > acts as an independent driver that operates between VDEC and DISP. > > By controlling multiple components, it carries out tasks like > > converting color formats, resizing, and applying specific Picture > > Quality (PQ) effects. > > The driver can be found at "driver/media/platform/mediatek/mdp3". > > Since the same hardware components are configured in both MDP3 and > > DISP, considering previous discussions, I attemped to integrate > > into a > > single binding, named after the controlling user. > > I'm still kinda struggling to understand this. Do you mean that the > hardware can be controlled by either of the disp and mdp3 drivers, > and > a compatible containing "disp" would use one driver, and one > containing > "mdp3" would use another? > Hi Conor, Sorry for any confusion caused by the software information. In the video pipeline, after decoding, the data flows sequentially through two subsystems: MDP and DISP. Each subsystems has multiple IPs, with some serving the same functionality as COLOR mentioned here. However, these IPs cannot be controlled by different subsystems. Therefore, I included the name of the subsystem after SoC to identify the configuration's location. Is this approach feasible? Sincerely, Moudy
On Thu, Sep 28, 2023 at 02:52:23AM +0000, Moudy Ho (何宗原) wrote: > On Wed, 2023-09-27 at 10:47 +0100, Conor Dooley wrote: > > On Wed, Sep 27, 2023 at 07:19:28AM +0000, Moudy Ho (何宗原) wrote: > > > On Fri, 2023-09-22 at 16:51 +0100, Conor Dooley wrote: > > > > On Fri, Sep 22, 2023 at 04:49:14PM +0100, Conor Dooley wrote: > > > > > On Fri, Sep 22, 2023 at 03:21:12PM +0800, Moudy Ho wrote: > > > > > > Add a compatible string for the COLOR block in MediaTek > > > > > > MT8195 > > > > > > that > > > > > > is controlled by MDP3. > > > > > > > > > > > > Signed-off-by: Moudy Ho <moudy.ho@mediatek.com> > > > > > > --- > > > > > > .../devicetree/bindings/display/mediatek/mediatek,color.yaml > > > > > > > > > > > > | 1 + > > > > > > 1 file changed, 1 insertion(+) > > > > > > > > > > > > diff --git > > > > > > a/Documentation/devicetree/bindings/display/mediatek/mediatek > > > > > > ,col > > > > > > or.yaml > > > > > > b/Documentation/devicetree/bindings/display/mediatek/mediatek > > > > > > ,col > > > > > > or.yaml > > > > > > index f21e44092043..b886ca0d89ea 100644 > > > > > > --- > > > > > > a/Documentation/devicetree/bindings/display/mediatek/mediatek > > > > > > ,col > > > > > > or.yaml > > > > > > +++ > > > > > > b/Documentation/devicetree/bindings/display/mediatek/mediatek > > > > > > ,col > > > > > > or.yaml > > > > > > @@ -26,6 +26,7 @@ properties: > > > > > > - mediatek,mt2701-disp-color > > > > > > - mediatek,mt8167-disp-color > > > > > > - mediatek,mt8173-disp-color > > > > > > + - mediatek,mt8195-mdp3-color > > > > > > > > > > How come this one is a "mdp3" not a "disp"? > > > > > > > > I don't know what mdp3 means & googling gives me no answers. > > > > What's > > > > the > > > > "disp" one controlled by, since it isn't controlled by mdp3? > > > > > > > Mediatek's Media Data Path ver.3 (MDP3) is associated with MMSYS > > > and > > > acts as an independent driver that operates between VDEC and DISP. > > > By controlling multiple components, it carries out tasks like > > > converting color formats, resizing, and applying specific Picture > > > Quality (PQ) effects. > > > The driver can be found at "driver/media/platform/mediatek/mdp3". > > > Since the same hardware components are configured in both MDP3 and > > > DISP, considering previous discussions, I attemped to integrate > > > into a > > > single binding, named after the controlling user. > > > > I'm still kinda struggling to understand this. Do you mean that the > > hardware can be controlled by either of the disp and mdp3 drivers, > > and > > a compatible containing "disp" would use one driver, and one > > containing > > "mdp3" would use another? > > > Sorry for any confusion caused by the software information. In the > video pipeline, after decoding, the data flows sequentially through two > subsystems: MDP and DISP. Each subsystems has multiple IPs, with some > serving the same functionality as COLOR mentioned here. However, these > IPs cannot be controlled by different subsystems. Therefore, I included > the name of the subsystem after SoC to identify the configuration's > location. Is this approach feasible? I'll have to leave things to the likes of Laurent to comment here I think. I don't understand this hardware well enough to have a useful opinion. It would seem like a different part of the datapath is a different device that should be documented separately, but I don't know enough to say for sure, sorry.
Il 28/09/23 18:49, Conor Dooley ha scritto: > On Thu, Sep 28, 2023 at 02:52:23AM +0000, Moudy Ho (何宗原) wrote: >> On Wed, 2023-09-27 at 10:47 +0100, Conor Dooley wrote: >>> On Wed, Sep 27, 2023 at 07:19:28AM +0000, Moudy Ho (何宗原) wrote: >>>> On Fri, 2023-09-22 at 16:51 +0100, Conor Dooley wrote: >>>>> On Fri, Sep 22, 2023 at 04:49:14PM +0100, Conor Dooley wrote: >>>>>> On Fri, Sep 22, 2023 at 03:21:12PM +0800, Moudy Ho wrote: >>>>>>> Add a compatible string for the COLOR block in MediaTek >>>>>>> MT8195 >>>>>>> that >>>>>>> is controlled by MDP3. >>>>>>> >>>>>>> Signed-off-by: Moudy Ho <moudy.ho@mediatek.com> >>>>>>> --- >>>>>>> .../devicetree/bindings/display/mediatek/mediatek,color.yaml >>>>>>> >>>>>>> | 1 + >>>>>>> 1 file changed, 1 insertion(+) >>>>>>> >>>>>>> diff --git >>>>>>> a/Documentation/devicetree/bindings/display/mediatek/mediatek >>>>>>> ,col >>>>>>> or.yaml >>>>>>> b/Documentation/devicetree/bindings/display/mediatek/mediatek >>>>>>> ,col >>>>>>> or.yaml >>>>>>> index f21e44092043..b886ca0d89ea 100644 >>>>>>> --- >>>>>>> a/Documentation/devicetree/bindings/display/mediatek/mediatek >>>>>>> ,col >>>>>>> or.yaml >>>>>>> +++ >>>>>>> b/Documentation/devicetree/bindings/display/mediatek/mediatek >>>>>>> ,col >>>>>>> or.yaml >>>>>>> @@ -26,6 +26,7 @@ properties: >>>>>>> - mediatek,mt2701-disp-color >>>>>>> - mediatek,mt8167-disp-color >>>>>>> - mediatek,mt8173-disp-color >>>>>>> + - mediatek,mt8195-mdp3-color >>>>>> >>>>>> How come this one is a "mdp3" not a "disp"? >>>>> >>>>> I don't know what mdp3 means & googling gives me no answers. >>>>> What's >>>>> the >>>>> "disp" one controlled by, since it isn't controlled by mdp3? >>>>> > >>>> Mediatek's Media Data Path ver.3 (MDP3) is associated with MMSYS >>>> and >>>> acts as an independent driver that operates between VDEC and DISP. >>>> By controlling multiple components, it carries out tasks like >>>> converting color formats, resizing, and applying specific Picture >>>> Quality (PQ) effects. >>>> The driver can be found at "driver/media/platform/mediatek/mdp3". >>>> Since the same hardware components are configured in both MDP3 and >>>> DISP, considering previous discussions, I attemped to integrate >>>> into a >>>> single binding, named after the controlling user. >>> >>> I'm still kinda struggling to understand this. Do you mean that the >>> hardware can be controlled by either of the disp and mdp3 drivers, >>> and >>> a compatible containing "disp" would use one driver, and one >>> containing >>> "mdp3" would use another? >>> > >> Sorry for any confusion caused by the software information. In the >> video pipeline, after decoding, the data flows sequentially through two >> subsystems: MDP and DISP. Each subsystems has multiple IPs, with some >> serving the same functionality as COLOR mentioned here. However, these >> IPs cannot be controlled by different subsystems. Therefore, I included >> the name of the subsystem after SoC to identify the configuration's >> location. Is this approach feasible? > > I'll have to leave things to the likes of Laurent to comment here I > think. I don't understand this hardware well enough to have a useful > opinion. It would seem like a different part of the datapath is a > different device that should be documented separately, but I don't know > enough to say for sure, sorry. Hardware speaking, it's not a different device: those all reside in the same block, except they are configured to route their I/O *either* to the display pipeline, *or* to the MDP3 pipeline. I would agree though in that this could be more flexible, as in, not having a requirement to say "mdp3" or "disp", and managing the COLOR blocks generically and letting the drivers to choose the actual path transparently from what the devicetree compatible is, but there's no practical point in doing this in the end, because there is an enough number of (for example, COLOR) blocks such that one can be completely reserved to MDP3 and one completely reserved to DISP. So, we don't *need* this flexibility, but would be nice to have for different (unexistant, basically) usecases... The thing is, if we go for the maximum flexibility, the drawback is that we'd see a number of nodes like shared_block: something@somewhere { compatible = "mediatek,something"; } mdp3: dma-controller@14001000 { ...... mediatek,color = <&color0>; mediatek,stitch = <&stitch0>; mediatek,hdr = <&hdr0>; mediatek,aal = <&aal0>; .... long list of another 10 components } display: something@somewhere { ...... an even longer list than the MDP3 one } ...or perhaps even a graph, which is even longer in the end. I'm not against this kind of structure, but I wonder if it's worth it. Cheers, Angelo
On Fri, Sep 29, 2023 at 10:42:58AM +0200, AngeloGioacchino Del Regno wrote: > Il 28/09/23 18:49, Conor Dooley ha scritto: > > On Thu, Sep 28, 2023 at 02:52:23AM +0000, Moudy Ho (何宗原) wrote: > > > On Wed, 2023-09-27 at 10:47 +0100, Conor Dooley wrote: > > > > On Wed, Sep 27, 2023 at 07:19:28AM +0000, Moudy Ho (何宗原) wrote: > > > > > On Fri, 2023-09-22 at 16:51 +0100, Conor Dooley wrote: > > > > > > On Fri, Sep 22, 2023 at 04:49:14PM +0100, Conor Dooley wrote: > > > > > > > On Fri, Sep 22, 2023 at 03:21:12PM +0800, Moudy Ho wrote: > > > > > > > > Add a compatible string for the COLOR block in MediaTek > > > > > > > > MT8195 > > > > > > > > that > > > > > > > > is controlled by MDP3. > > > > > > > > > > > > > > > > Signed-off-by: Moudy Ho <moudy.ho@mediatek.com> > > > > > > > > --- > > > > > > > > .../devicetree/bindings/display/mediatek/mediatek,color.yaml > > > > > > > > | 1 + > > > > > > > > 1 file changed, 1 insertion(+) > > > > > > > > > > > > > > > > diff --git > > > > > > > > a/Documentation/devicetree/bindings/display/mediatek/mediatek > > > > > > > > ,col > > > > > > > > or.yaml > > > > > > > > b/Documentation/devicetree/bindings/display/mediatek/mediatek > > > > > > > > ,col > > > > > > > > or.yaml > > > > > > > > index f21e44092043..b886ca0d89ea 100644 > > > > > > > > --- > > > > > > > > a/Documentation/devicetree/bindings/display/mediatek/mediatek > > > > > > > > ,col > > > > > > > > or.yaml > > > > > > > > +++ > > > > > > > > b/Documentation/devicetree/bindings/display/mediatek/mediatek > > > > > > > > ,col > > > > > > > > or.yaml > > > > > > > > @@ -26,6 +26,7 @@ properties: > > > > > > > > - mediatek,mt2701-disp-color > > > > > > > > - mediatek,mt8167-disp-color > > > > > > > > - mediatek,mt8173-disp-color > > > > > > > > + - mediatek,mt8195-mdp3-color > > > > > > > > > > > > > > How come this one is a "mdp3" not a "disp"? > > > > > > > > > > > > I don't know what mdp3 means & googling gives me no answers. > > > > > > What's > > > > > > the > > > > > > "disp" one controlled by, since it isn't controlled by mdp3? > > > > > > > > > > > > > Mediatek's Media Data Path ver.3 (MDP3) is associated with MMSYS > > > > > and > > > > > acts as an independent driver that operates between VDEC and DISP. > > > > > By controlling multiple components, it carries out tasks like > > > > > converting color formats, resizing, and applying specific Picture > > > > > Quality (PQ) effects. > > > > > The driver can be found at "driver/media/platform/mediatek/mdp3". > > > > > Since the same hardware components are configured in both MDP3 and > > > > > DISP, considering previous discussions, I attemped to integrate > > > > > into a > > > > > single binding, named after the controlling user. > > > > > > > > I'm still kinda struggling to understand this. Do you mean that the > > > > hardware can be controlled by either of the disp and mdp3 drivers, > > > > and > > > > a compatible containing "disp" would use one driver, and one > > > > containing > > > > "mdp3" would use another? > > > > > > > > > Sorry for any confusion caused by the software information. In the > > > video pipeline, after decoding, the data flows sequentially through two > > > subsystems: MDP and DISP. Each subsystems has multiple IPs, with some > > > serving the same functionality as COLOR mentioned here. However, these > > > IPs cannot be controlled by different subsystems. Therefore, I included > > > the name of the subsystem after SoC to identify the configuration's > > > location. Is this approach feasible? > > > > I'll have to leave things to the likes of Laurent to comment here I > > think. I don't understand this hardware well enough to have a useful > > opinion. It would seem like a different part of the datapath is a > > different device that should be documented separately, but I don't know > > enough to say for sure, sorry. > > Hardware speaking, it's not a different device: those all reside in the > same block, except they are configured to route their I/O *either* to the > display pipeline, *or* to the MDP3 pipeline. Is it runtime configurable? > I would agree though in that this could be more flexible, as in, not > having a requirement to say "mdp3" or "disp", and managing the COLOR > blocks generically and letting the drivers to choose the actual path > transparently from what the devicetree compatible is, but there's no > practical point in doing this in the end, because there is an enough > number of (for example, COLOR) blocks such that one can be completely > reserved to MDP3 and one completely reserved to DISP. > > So, we don't *need* this flexibility, but would be nice to have for > different (unexistant, basically) usecases... > > The thing is, if we go for the maximum flexibility, the drawback is > that we'd see a number of nodes like > > shared_block: something@somewhere { > compatible = "mediatek,something"; > } > > mdp3: dma-controller@14001000 { > ...... > mediatek,color = <&color0>; > mediatek,stitch = <&stitch0>; > mediatek,hdr = <&hdr0>; > mediatek,aal = <&aal0>; > .... > long list of another 10 components > } > > display: something@somewhere { > ...... > an even longer list than the MDP3 one > } > > ...or perhaps even a graph, which is even longer in the end. > > I'm not against this kind of structure, but I wonder if it's worth it. I have no idea, but it sounds like it isn't. Really what happened here, is not me having a particular thing I want to see, is getting a response that implied that there were two different compatibles for the same hardware, controlled by different drivers. It does seem to be that way at present, and this is not something I am willing to ack etc. That's not to say that I am _nacking_ it, just that I don't understand this enough to ack something that we usually tell people not to do.
diff --git a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml index f21e44092043..b886ca0d89ea 100644 --- a/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml +++ b/Documentation/devicetree/bindings/display/mediatek/mediatek,color.yaml @@ -26,6 +26,7 @@ properties: - mediatek,mt2701-disp-color - mediatek,mt8167-disp-color - mediatek,mt8173-disp-color + - mediatek,mt8195-mdp3-color - items: - enum: - mediatek,mt7623-disp-color