Received: by 2002:a05:6358:a55:b0:ec:fcf4:3ecf with SMTP id 21csp602536rwb; Fri, 13 Jan 2023 01:41:58 -0800 (PST) X-Google-Smtp-Source: AMrXdXuOR2gd/WVIJ+Mip18RDAP4edCy4lELMdAvodog1seljtshj+zqXrIdfEZJoR4rYh2dOYKw X-Received: by 2002:a17:907:8810:b0:7c1:18b1:fd93 with SMTP id ro16-20020a170907881000b007c118b1fd93mr2710486ejc.44.1673602918674; Fri, 13 Jan 2023 01:41:58 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1673602918; cv=none; d=google.com; s=arc-20160816; b=lwXbpDMW41hVffmXkoI/52KlZG/HMVnWOml/aJIgocUrGd/kzXospHDmE9SuhtS5nr ylvDkmF+L081IYR5smATt5sGF3vNhVE3+WQL6T67N3Y1k0f22TcVcFKeJGdV3jvF95zu P3rSUF9gCw7SeXYuIGj4P4z87C0AJEvEqe8E7/1cJWNzqxEhIsvBS8Eql1AAsuzEVIj8 Gk6bFzcvme9EmG9/F5Fc/XU8m+LUea/YbH3Njoqbxu4npV7CJNEE3LLB73vyyw3E/XfM TofdaFDusaN7/zD3TODiaGUlphOwcDX1po3NbBbTQbrE+NiZ5JtZdPdfLw02IYEli30e cJfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:message-id:date:subject:cc:to:from :dkim-signature; bh=Gg8bWb1FimtqSa/S00NIuzeLTb9/WRlCLgNfTbeYtTQ=; b=O3kg4XKMrg+dL57Rqekelh0mYifFULi/jXAZY030E9Pcj3orxL8+UjQM1WQQNphhfC Fu09fT22YQY/86kJLjqzAKBl8gDImiPGjLmKSKjo3pgZJYrDmOuwI1y2IJacckBLjDx3 WHBQqwvT7Qp+0TVYJDVrZJqGpMBcpwbmFCSi7s8oIz5PL6tJ80gdmTsbjN68RaXFKObC bgr5qPZmtoZtirOx9KAz0b4lQz8inkkzPEiSYkUmpmQsQKSZD2GgoQTh4xtW1FZ7SUHC jSJ7gINgPO6BvwXMjih7l+SGQvWVjPnTTSmXK17cedUvg0eGMLq31GHAQI/EdENcUOM5 Taew== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b=pWV3Umt9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=mediatek.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id p20-20020a1709060dd400b007c0a88076d5si15704577eji.818.2023.01.13.01.41.46; Fri, 13 Jan 2023 01:41:58 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b=pWV3Umt9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=mediatek.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239755AbjAMJDm (ORCPT + 51 others); Fri, 13 Jan 2023 04:03:42 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35518 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235451AbjAMJDa (ORCPT ); Fri, 13 Jan 2023 04:03:30 -0500 Received: from mailgw01.mediatek.com (unknown [60.244.123.138]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3E5BD25C4; Fri, 13 Jan 2023 01:03:28 -0800 (PST) X-UUID: 2272fd24932111eda06fc9ecc4dadd91-20230113 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=Gg8bWb1FimtqSa/S00NIuzeLTb9/WRlCLgNfTbeYtTQ=; b=pWV3Umt9NNcfcJwv1tSGe+bJogH9+aDxCuO0R9nmQdVictclFwDFTATK/vYJZxOUTvut8f3WZVugjSNzutIPIIC6BtZ99izlKVl6I8h6I5u7qYwqmDXZ0qAAso7zfr3dgHDOu/QSFlPBwy9+ihJK920URaMAC5xkJ0DfUkZ1LGA=; X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.17,REQID:daf139c1-7b45-4710-91a4-c0d0d4a116a1,IP:0,U RL:0,TC:0,Content:-25,EDM:0,RT:0,SF:95,FILE:0,BULK:0,RULE:Release_Ham,ACTI ON:release,TS:70 X-CID-INFO: VERSION:1.1.17,REQID:daf139c1-7b45-4710-91a4-c0d0d4a116a1,IP:0,URL :0,TC:0,Content:-25,EDM:0,RT:0,SF:95,FILE:0,BULK:0,RULE:Spam_GS981B3D,ACTI ON:quarantine,TS:70 X-CID-META: VersionHash:543e81c,CLOUDID:0174baf5-ff42-4fb0-b929-626456a83c14,B ulkID:230113170324PQERBQG7,BulkQuantity:0,Recheck:0,SF:38|28|17|19|48,TC:n il,Content:0,EDM:-3,IP:nil,URL:1,File:nil,Bulk:nil,QS:nil,BEC:nil,COL:0,OS I:0,OSA:0 X-CID-APTURL: Status:success,Category:nil,Trust:0,Unknown:4,Malicious:0 X-CID-BVR: 0,NGT X-UUID: 2272fd24932111eda06fc9ecc4dadd91-20230113 Received: from mtkmbs10n1.mediatek.inc [(172.21.101.34)] by mailgw01.mediatek.com (envelope-from ) (Generic MTA with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 1168271827; Fri, 13 Jan 2023 17:03:23 +0800 Received: from mtkmbs13n1.mediatek.inc (172.21.101.193) by mtkmbs11n1.mediatek.inc (172.21.101.185) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.792.15; Fri, 13 Jan 2023 17:03:22 +0800 Received: from mtksdccf07.mediatek.inc (172.21.84.99) by mtkmbs13n1.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.2.792.15 via Frontend Transport; Fri, 13 Jan 2023 17:03:22 +0800 From: Moudy Ho To: Mauro Carvalho Chehab , Matthias Brugger , Hans Verkuil CC: Chun-Kuang Hu , , , , , Moudy Ho Subject: [PATCH v3 00/13] add support MDP3 on MT8195 platform Date: Fri, 13 Jan 2023 17:03:08 +0800 Message-ID: <20230113090321.25128-1-moudy.ho@mediatek.com> X-Mailer: git-send-email 2.18.0 MIME-Version: 1.0 Content-Type: text/plain X-MTK: N X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS, SPF_PASS,UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Changes since v2: - Depend on : [1] MMSYS/MUTEX: https://patchwork.kernel.org/project/linux-mediatek/list/?series=711592 [2] MDP3: https://patchwork.kernel.org/project/linux-mediatek/list/?series=711618 - Suggested by Rob to revise MDP3 bindings to pass dtbs check - Add parallel paths feature. - Add blended components settings. Changes since v1: - Depend on : [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 - Fix compilation failure due to use of undeclared identifier in file "mtk-mdp3-cmdq.c" 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. Moudy Ho (13): dt-binding: mediatek: add bindings for MediaTek mt8195 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 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 the blend of component in MUTEX MOD media: platform: mtk-mdp3: add mt8195 platform configuration media: platform: mtk-mdp3: add mt8195 shared memory configurations media: platform: mtk-mdp3: add mt8195 MDP3 component settings media: platform: mtk-mdp3: add support for parallel pipe to improve FPS .../bindings/media/mediatek,mdp3-aal.yaml | 63 ++ .../bindings/media/mediatek,mdp3-color.yaml | 63 ++ .../bindings/media/mediatek,mdp3-fg.yaml | 63 ++ .../bindings/media/mediatek,mdp3-hdr.yaml | 62 ++ .../bindings/media/mediatek,mdp3-merge.yaml | 63 ++ .../bindings/media/mediatek,mdp3-ovl.yaml | 63 ++ .../bindings/media/mediatek,mdp3-pad.yaml | 63 ++ .../bindings/media/mediatek,mdp3-rdma.yaml | 30 +- .../bindings/media/mediatek,mdp3-rsz.yaml | 11 +- .../bindings/media/mediatek,mdp3-split.yaml | 75 ++ .../bindings/media/mediatek,mdp3-stitch.yaml | 63 ++ .../bindings/media/mediatek,mdp3-tcc.yaml | 62 ++ .../bindings/media/mediatek,mdp3-tdshp.yaml | 63 ++ arch/arm64/boot/dts/mediatek/mt8195.dtsi | 420 +++++++++ .../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 | 38 +- .../mediatek/mdp3/mt8195/mdp3-comp-mt8195.h | 283 ++++++ .../mediatek/mdp3/mt8195/mdp3-plat-mt8195.h | 669 ++++++++++++++ .../platform/mediatek/mdp3/mtk-img-ipi.h | 4 + .../platform/mediatek/mdp3/mtk-mdp3-cmdq.c | 453 +++++++--- .../platform/mediatek/mdp3/mtk-mdp3-cmdq.h | 1 + .../platform/mediatek/mdp3/mtk-mdp3-comp.c | 834 +++++++++++++++++- .../platform/mediatek/mdp3/mtk-mdp3-comp.h | 92 +- .../platform/mediatek/mdp3/mtk-mdp3-core.c | 115 ++- .../platform/mediatek/mdp3/mtk-mdp3-core.h | 33 +- .../platform/mediatek/mdp3/mtk-mdp3-m2m.c | 15 + .../platform/mediatek/mdp3/mtk-mdp3-regs.c | 18 + .../platform/mediatek/mdp3/mtk-mdp3-regs.h | 1 + .../platform/mediatek/mdp3/mtk-mdp3-vpu.c | 3 +- 39 files changed, 3791 insertions(+), 181 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 -- 2.18.0