Message ID | 20230602090227.7264-1-yong.wu@mediatek.com |
---|---|
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:994d:0:b0:3d9:f83d:47d9 with SMTP id k13csp890792vqr; Fri, 2 Jun 2023 02:09:33 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ62BQSxDKevMtEWPKiWTV0BMK1gBa5QZETcyF6He7I7W/DcAMEhaLbARGfQHEiI1j6rydJv X-Received: by 2002:a05:620a:470c:b0:75b:23a0:debe with SMTP id bs12-20020a05620a470c00b0075b23a0debemr15057288qkb.60.1685696973501; Fri, 02 Jun 2023 02:09:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1685696973; cv=none; d=google.com; s=arc-20160816; b=wMWz8F2j76/UHA391KaYgtPxfg3Ytpj5Q+zf5SMi07hzOKooADnRgOQkp6WPEimtVz YhbRJMUMHeu56YuEQdKzgDEWikhUlO20F1pgmIVdVwuZT5tmxeFdyfW5JUOztXOLbI9h LJt7D971UjyYHZDendAXlT/KVs3vKiwdbxxwGI2t0gKP0Rz4d1bHm9mrP5NedXgVKh0a jsJyrkNzo8U6NDUWOd3DQ2G+FXneSJ3nP8hd8dIda+UPkWdb6rzFqHehS1rUSfa4wJ8w lN0Hc3X4Btow2+YyFCGOR8eR5aJx2xz6V5F2HOyTwiWw89tfOoVi7nb9fdSxI6mkBHIf WX3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=tkXvsKWiCiKvGwn/DYFIYckSfCXc3Ts7n72TyGWrQmc=; b=jP4XmVy7FhjX0w9lJbJrp9NF7agFF9X48V6nzUYpjLaaV1VIQfOsVw+4+6LDzP7nyd yd4FFIq+CSyZuMJWpUH+lxBkt1oR1pp4EFPSi1c6Yg10AHQU8v1zT19f5csVMdqRLMmQ RzVc+9vXU2iBs/HWKZUo6ZAtEUWPezHEoP6szShuosqMbQrZqBIBP9pZMOPUGXoDlvSO zeLtuhNFoaaRL7WzXlOFu1lmVr1S38t3SK2vYvrcWkDjU1k1ipx6nM9rhKZbBQ+3tJzX ckUOXQKU8wRtjcS9B5/LwgOiajJyTc0OvetvDG5jLUG6tKnuRiw2FxauMXJp9mKI/lJ5 J5qA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b=FPa4fei4; 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: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id oj3-20020a17090b4d8300b00256b9601cffsi762840pjb.79.2023.06.02.02.09.21; Fri, 02 Jun 2023 02:09:33 -0700 (PDT) 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=FPa4fei4; 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 S234577AbjFBJDX (ORCPT <rfc822;limurcpp@gmail.com> + 99 others); Fri, 2 Jun 2023 05:03:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60366 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234970AbjFBJCz (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Fri, 2 Jun 2023 05:02:55 -0400 Received: from mailgw02.mediatek.com (unknown [210.61.82.184]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C71471BC; Fri, 2 Jun 2023 02:02:42 -0700 (PDT) X-UUID: 35640376012411eeb20a276fd37b9834-20230602 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Type:Content-Transfer-Encoding:MIME-Version:Message-ID:Date:Subject:CC:To:From; bh=tkXvsKWiCiKvGwn/DYFIYckSfCXc3Ts7n72TyGWrQmc=; b=FPa4fei4T/U5nTPHvMgqemEhIBYngoZHYXOhI0j9rFBOBsSz+DT/Agz5odsETxpgpCuHF5k0FzJcwagJJpDda4hUjDWeeknEtUyiUCX+vex0gyDIqKaa8G2rt8/weZxRGuE7l3SM2Rw4NAKj7eAdX9LC7V3pTBV1in65y9frUY0=; X-CID-P-RULE: Release_Ham X-CID-O-INFO: VERSION:1.1.25,REQID:d1b47338-9435-4331-8e3a-64032cf64e36,IP:0,U RL:0,TC:0,Content:-25,EDM:0,RT:0,SF:100,FILE:0,BULK:0,RULE:Release_Ham,ACT ION:release,TS:75 X-CID-INFO: VERSION:1.1.25,REQID:d1b47338-9435-4331-8e3a-64032cf64e36,IP:0,URL :0,TC:0,Content:-25,EDM:0,RT:0,SF:100,FILE:0,BULK:0,RULE:Spam_GS981B3D,ACT ION:quarantine,TS:75 X-CID-META: VersionHash:d5b0ae3,CLOUDID:44b95f3d-7aa7-41f3-a6bd-0433bee822f3,B ulkID:230602170233GFCM3XCM,BulkQuantity:0,Recheck:0,SF:29|28|17|19|48|38,T C:nil,Content:0,EDM:-3,IP:nil,URL:1,File:nil,Bulk:nil,QS:nil,BEC:nil,COL:0 ,OSI:0,OSA:0,AV:0 X-CID-BVR: 0 X-CID-BAS: 0,_,0,_ X-UUID: 35640376012411eeb20a276fd37b9834-20230602 Received: from mtkmbs10n1.mediatek.inc [(172.21.101.34)] by mailgw02.mediatek.com (envelope-from <yong.wu@mediatek.com>) (Generic MTA with TLSv1.2 ECDHE-RSA-AES256-GCM-SHA384 256/256) with ESMTP id 256430585; Fri, 02 Jun 2023 17:02:32 +0800 Received: from mtkmbs11n2.mediatek.inc (172.21.101.187) by mtkmbs10n2.mediatek.inc (172.21.101.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.26; Fri, 2 Jun 2023 17:02:31 +0800 Received: from mhfsdcap04.gcn.mediatek.inc (10.17.3.154) by mtkmbs11n2.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.2.1118.26 via Frontend Transport; Fri, 2 Jun 2023 17:02:30 +0800 From: Yong Wu <yong.wu@mediatek.com> To: Joerg Roedel <joro@8bytes.org>, Will Deacon <will@kernel.org>, Rob Herring <robh+dt@kernel.org>, Matthias Brugger <matthias.bgg@gmail.com> CC: Robin Murphy <robin.murphy@arm.com>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>, Yong Wu <yong.wu@mediatek.com>, AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>, <iommu@lists.linux.dev>, <linux-mediatek@lists.infradead.org>, <devicetree@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <linux-arm-kernel@lists.infradead.org>, <mingyuan.ma@mediatek.com>, <yf.wang@mediatek.com>, <jianjiao.zeng@mediatek.com>, <chengci.xu@mediatek.com> Subject: [PATCH v12 0/7] MT8188 IOMMU SUPPORT Date: Fri, 2 Jun 2023 17:02:20 +0800 Message-ID: <20230602090227.7264-1-yong.wu@mediatek.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-MTK: N X-Spam-Status: No, score=-0.9 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,RDNS_NONE,SPF_HELO_PASS,SPF_PASS,T_SCC_BODY_TEXT_LINE, UNPARSEABLE_RELAY,URIBL_BLOCKED autolearn=no 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: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1767581389821911575?= X-GMAIL-MSGID: =?utf-8?q?1767581389821911575?= |
Series |
MT8188 IOMMU SUPPORT
|
|
Message
Yong Wu
June 2, 2023, 9:02 a.m. UTC
MT8188 have 3 IOMMU HWs. 2 IOMMU HW is for multimedia, and 1 IOMMU HW is for infra-master, like PCIe. About the 2 MM IOMMU HW, the connection could be something like this: IOMMU(VDO) IOMMU(VPP) | | SMI_COMMON(VDO) SMI_COMMON(VPP) --------------- ---------------- | | ... | | ... larb0 larb2 ... larb1 larb3 ... INFRA IOMMU does not have SMI, the master connects to IOMMU directly. Although multiple banks supported in MT8188, we only use one of them, which means PCIe is put in bank0 of INFRA IOMMU. So we have two pgtable for MT8188, specifically, these two MM IOMMU HW share a pgtable while INFRA IOMMU HW use a independent pgtable. Another change is that we add some SMC command for INFRA master to enable INFRA IOMMU in ATF considering security concerns. We also adjust the flow of mtk_iommu_config to reduce indention. Change in v12: - Change nothing. Just rebase on v6.4-rc4 and collect AngeloGioacchino's R-b. change in v11: https://lore.kernel.org/linux-iommu/20230418083514.4379-1-yong.wu@mediatek.com/ - Just add a new entry in MAINTAINERS from AngeloGioacchino. change in v10: https://lore.kernel.org/linux-mediatek/20230417073606.25729-1-yong.wu@mediatek.com/ - Add a Fixes tag for [2/7]. - Rebase on mtk-iommu-dma-range-v7: https://lore.kernel.org/linux-mediatek/20230411093144.2690-1-yong.wu@mediatek.com/ change since v9: https://lore.kernel.org/linux-mediatek/20230317085541.20447-1-yong.wu@mediatek.com/ - Move the patch about setting set_dma_mask out from this patchset. - Add a MAINTAINER patch since the header file was added a prefix "mediatek," change since v8: https://lore.kernel.org/linux-mediatek/20230307080555.14399-1-yong.wu@mediatek.com/ - Base on v6.3-rc1 and mtk-iommu-dma-range-v5: https://lore.kernel.org/linux-mediatek/20230307023507.13306-1-yong.wu@mediatek.com/ - Add a new patch set_dma_mask about since mt8188 support the PA of pgtable 35bits. changes since v7: https://lore.kernel.org/linux-mediatek/20230216053322.11596-1-yong.wu@mediatek.com/ - Base on mtk-iommu-dma-range-v4: https://lore.kernel.org/linux-mediatek/20230215062544.8677-1-yong.wu@mediatek.com/ - Add a new patch for two IOMMU share pagetable issue. - Add a new patch for adding iova_region_larb_msk for mt8188. - Add the comment in the dt-binding header file about larb index. This is for readable when updating the iova_region_larb_msk. Since there is something wrong for chengci's mail account when sending to devicetree mail list, we don't know why. I help send this patchset. https://lore.kernel.org/linux-mediatek/5a916595-12ee-92e6-d380-84146dd75218@linaro.org/ changes since v6: https://lore.kernel.org/linux-mediatek/20221223101439.494-1-chengci.xu@mediatek.com/ - base on tag: next-20221220. - update commit message of patch[2/4]. changes since v5: - base on tag: next-20221205. - add flag PGTABLE_PA_35_EN for all IOMMU in MT8188. - modify the type of "portid_msk" from "u32" to "unsigned long". changes since v4: - base on tag: next-20221018. - add patch[2/4] to reduce indention by adjust mtk_iommu_config flow. changes since v3: - base on tag: next-20220916. - use license "GPL-2.0-only OR BSD-2-Clause" in bingings head file. - drop redundant "portid" assignment when configure infra master. - reduce indentation by using "else if" when config infra master. - update probe flow about "pericfg" for CFG_IFA_MASTER_IN_ATF. - drop unused "pericfg_comp_str" in mt8188_data_infra. - drop words like "This commit/patch". changes since v2: - base on tag: next-20220831. - rename "mt8188-memory-port.h" to "mediatek,mt8188-memory-port.h". - use dual-license in "mediatek,mt8188-memory-port.h" - remove unnecessary "()" when define SMI_LARB_ID changes since v1: - base on tag: next-20220803. - adds MT8188 IOMMU support. Chengci.Xu (5): dt-bindings: mediatek: mt8188: Add binding for MM & INFRA IOMMU iommu/mediatek: Fix two IOMMU share pagetable issue iommu/mediatek: Adjust mtk_iommu_config flow iommu/mediatek: Add enable IOMMU SMC command for INFRA masters iommu/mediatek: Add MT8188 IOMMU Support Yong Wu (2): iommu/mediatek: mt8188: Add iova_region_larb_msk MAINTAINERS: iommu/mediatek: Update the header file name .../bindings/iommu/mediatek,iommu.yaml | 12 +- MAINTAINERS | 1 + drivers/iommu/mtk_iommu.c | 151 ++++-- .../memory/mediatek,mt8188-memory-port.h | 489 ++++++++++++++++++ include/soc/mediatek/smi.h | 1 + 5 files changed, 622 insertions(+), 32 deletions(-) create mode 100644 include/dt-bindings/memory/mediatek,mt8188-memory-port.h
Comments
On Fri, Jun 2, 2023 at 5:03 PM Yong Wu <yong.wu@mediatek.com> wrote: > > MT8188 have 3 IOMMU HWs. 2 IOMMU HW is for multimedia, and 1 IOMMU HW > is for infra-master, like PCIe. > > About the 2 MM IOMMU HW, the connection could be something like this: > > IOMMU(VDO) IOMMU(VPP) > | | > SMI_COMMON(VDO) SMI_COMMON(VPP) > --------------- ---------------- > | | ... | | ... > larb0 larb2 ... larb1 larb3 ... > > INFRA IOMMU does not have SMI, the master connects to IOMMU directly. > > Although multiple banks supported in MT8188, we only use one of them, > which means PCIe is put in bank0 of INFRA IOMMU. > > So we have two pgtable for MT8188, specifically, these two MM IOMMU HW > share a pgtable while INFRA IOMMU HW use a independent pgtable. > > Another change is that we add some SMC command for INFRA master to > enable INFRA IOMMU in ATF considering security concerns. > > We also adjust the flow of mtk_iommu_config to reduce indention. A friendly ping - this series was reviewed, but I'm not sure if it's still on the radar today. This can be cleanly applied on top of next-20230725. To give more confidence, I also tested the basic multimedia and infra functionalities on my MT8188 with this series, so Tested-by: Fei Shao <fshao@chromium.org> to the entire v12 series. Regards, Fei
On Tue, Aug 01, 2023 at 12:53:29PM +0000, Yong Wu (吴勇) wrote:
> Your A-b always is expected before Joerg applies.
It is time to make some progress on the MTK driver patch flow. I just
applied this series, thanks.