From patchwork Thu Nov 24 12:52:13 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Moudy Ho X-Patchwork-Id: 13054945 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 680C9C43217 for ; Thu, 24 Nov 2022 12:52:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229818AbiKXMwf (ORCPT ); Thu, 24 Nov 2022 07:52:35 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36666 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229813AbiKXMwd (ORCPT ); Thu, 24 Nov 2022 07:52:33 -0500 Received: from mailgw01.mediatek.com (unknown [60.244.123.138]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6A90B6570; Thu, 24 Nov 2022 04:52:32 -0800 (PST) X-UUID: 59c180c8c7fa47e1971d7b43d8235852-20221124 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Type:MIME-Version:Message-ID:Date:Subject:CC:To:From; bh=dIlDFzZFBnSE9uDVKb1CWs4x9E8Ao4H4ickzs3UqjcM=; b=m14zb5hLXLiMFkCdhM5XwbF2b40SJgGUf+IavoI1oOzVyFAV8dwa96ELmq+2dnekqhwowkkS75TrdqmLpMAhRJbEloIJDveNYRBY4mBLMBWhWk6qy0yIuVRnplF9PobnBqwXVRPJ+MAM+0dLtJgV16wAsPdACXuI4Gt+labzyY8=; X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.14,REQID:68b9f097-3ac0-49f7-b7ff-e38f9d92048e,IP:0,U RL:0,TC:0,Content:-25,EDM:0,RT:0,SF:0,FILE:0,BULK:0,RULE:Release_Ham,ACTIO N:release,TS:-25 X-CID-META: VersionHash:dcaaed0,CLOUDID:2b17bb2f-2938-482e-aafd-98d66723b8a9,B ulkID:nil,BulkQuantity:0,Recheck:0,SF:102,TC:nil,Content:0,EDM:-3,IP:nil,U RL:1,File:nil,Bulk:nil,QS:nil,BEC:nil,COL:0 X-UUID: 59c180c8c7fa47e1971d7b43d8235852-20221124 Received: from mtkmbs13n2.mediatek.inc [(172.21.101.108)] by mailgw01.mediatek.com (envelope-from ) (Generic MTA with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 2094642625; Thu, 24 Nov 2022 20:52:28 +0800 Received: from mtkmbs11n1.mediatek.inc (172.21.101.185) by mtkmbs10n1.mediatek.inc (172.21.101.34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.792.15; Thu, 24 Nov 2022 20:52:26 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by mtkmbs11n1.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.2.792.15 via Frontend Transport; Thu, 24 Nov 2022 20:52:27 +0800 From: Moudy Ho To: Mauro Carvalho Chehab , Matthias Brugger , Hans Verkuil CC: Chun-Kuang Hu , , , , , Moudy Ho Subject: [PATCH v1 00/12] add support MDP3 on MT8195 platform Date: Thu, 24 Nov 2022 20:52:13 +0800 Message-ID: <20221124125225.24538-1-moudy.ho@mediatek.com> X-Mailer: git-send-email 2.18.0 MIME-Version: 1.0 X-MTK: N Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org Hello, This patch is used to add support for MDP3 on the MT8195 platform that contains more picture quality components, and can arrange more pipelines through two sets of MMSYS and MUTEX respectively. This series are based on following series: [1] MDP3 : https://patchwork.kernel.org/project/linux-mediatek/list/?series=698872 [2] MMSYS/MUTEX: https://patchwork.kernel.org/project/linux-mediatek/list/?series=684959 Moudy Ho (12): dt-binding: mediatek: add bindings for MediaTek 8195 MDP3 components arm64: dts: mediatek: mt8195: add MDP3 nodes media: platform: mtk-mdp3: add support second sets of MMSYS media: platform: mtk-mdp3: add support second sets of MUTEX media: platform: mtk-mdp3: introduce more pipelines from 8195 media: platform: mtk-mdp3: introduce more MDP3 components media: platform: mtk-mdp3: add checks for dummy components media: platform: mtk-mdp3: avoid multiple driver registrations media: platform: mtk-mdp3: extend GCE event waiting in RDMA and WROT media: platform: mtk-mdp3: add 8195 platform configuration media: platform: mtk-mdp3: add 8195 shared memory configurations media: platform: mtk-mdp3: add 8195 component settings .../bindings/media/mediatek,mdp3-aal.yaml | 64 ++ .../bindings/media/mediatek,mdp3-color.yaml | 64 ++ .../bindings/media/mediatek,mdp3-fg.yaml | 64 ++ .../bindings/media/mediatek,mdp3-hdr.yaml | 63 ++ .../bindings/media/mediatek,mdp3-merge.yaml | 64 ++ .../bindings/media/mediatek,mdp3-ovl.yaml | 64 ++ .../bindings/media/mediatek,mdp3-pad.yaml | 64 ++ .../bindings/media/mediatek,mdp3-rdma.yaml | 5 +- .../bindings/media/mediatek,mdp3-split.yaml | 76 ++ .../bindings/media/mediatek,mdp3-stitch.yaml | 64 ++ .../bindings/media/mediatek,mdp3-tcc.yaml | 63 ++ .../bindings/media/mediatek,mdp3-tdshp.yaml | 64 ++ arch/arm64/boot/dts/mediatek/mt8195.dtsi | 398 +++++++++ .../platform/mediatek/mdp3/mdp_reg_aal.h | 25 + .../platform/mediatek/mdp3/mdp_reg_color.h | 31 + .../media/platform/mediatek/mdp3/mdp_reg_fg.h | 23 + .../platform/mediatek/mdp3/mdp_reg_hdr.h | 31 + .../platform/mediatek/mdp3/mdp_reg_merge.h | 25 + .../platform/mediatek/mdp3/mdp_reg_ovl.h | 25 + .../platform/mediatek/mdp3/mdp_reg_pad.h | 21 + .../platform/mediatek/mdp3/mdp_reg_rdma.h | 24 + .../platform/mediatek/mdp3/mdp_reg_rsz.h | 2 + .../platform/mediatek/mdp3/mdp_reg_tdshp.h | 34 + .../platform/mediatek/mdp3/mdp_reg_wrot.h | 8 + .../mediatek/mdp3/mt8183/mdp3-plat-mt8183.h | 46 +- .../mediatek/mdp3/mt8195/mdp3-comp-mt8195.h | 283 ++++++ .../mediatek/mdp3/mt8195/mdp3-plat-mt8195.h | 652 ++++++++++++++ .../platform/mediatek/mdp3/mtk-img-ipi.h | 4 + .../platform/mediatek/mdp3/mtk-mdp3-cmdq.c | 257 +++++- .../platform/mediatek/mdp3/mtk-mdp3-comp.c | 834 +++++++++++++++++- .../platform/mediatek/mdp3/mtk-mdp3-comp.h | 86 +- .../platform/mediatek/mdp3/mtk-mdp3-core.c | 94 +- .../platform/mediatek/mdp3/mtk-mdp3-core.h | 21 + 33 files changed, 3529 insertions(+), 114 deletions(-) create mode 100644 Documentation/devicetree/bindings/media/mediatek,mdp3-aal.yaml create mode 100644 Documentation/devicetree/bindings/media/mediatek,mdp3-color.yaml create mode 100644 Documentation/devicetree/bindings/media/mediatek,mdp3-fg.yaml create mode 100644 Documentation/devicetree/bindings/media/mediatek,mdp3-hdr.yaml create mode 100644 Documentation/devicetree/bindings/media/mediatek,mdp3-merge.yaml create mode 100644 Documentation/devicetree/bindings/media/mediatek,mdp3-ovl.yaml create mode 100644 Documentation/devicetree/bindings/media/mediatek,mdp3-pad.yaml create mode 100644 Documentation/devicetree/bindings/media/mediatek,mdp3-split.yaml create mode 100644 Documentation/devicetree/bindings/media/mediatek,mdp3-stitch.yaml create mode 100644 Documentation/devicetree/bindings/media/mediatek,mdp3-tcc.yaml create mode 100644 Documentation/devicetree/bindings/media/mediatek,mdp3-tdshp.yaml create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_aal.h create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_color.h create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_fg.h create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_hdr.h create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_merge.h create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_ovl.h create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_pad.h create mode 100644 drivers/media/platform/mediatek/mdp3/mdp_reg_tdshp.h create mode 100644 drivers/media/platform/mediatek/mdp3/mt8195/mdp3-comp-mt8195.h create mode 100644 drivers/media/platform/mediatek/mdp3/mt8195/mdp3-plat-mt8195.h