From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by mx.groups.io with SMTP id smtpd.web11.10258.1670227745000185904 for ; Mon, 05 Dec 2022 00:09:05 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=L9PPziJb; spf=pass (domain: intel.com, ip: 134.134.136.126, mailfrom: min.m.xu@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1670227744; x=1701763744; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=+nB0QpXrx/UITiu04izDlKQZSo0Gvg9Uts9B3/89lyo=; b=L9PPziJbuhJ4gFh1fhwSYOT94q4GxmspyrxuozxgdaaZ1//bwa+V+qix DbNSYA8n4NG+rhLDD5koIfWPoOo3t0L5ibzhopxI+w7IDoIXHVpkIFM4Q MJNgFRREo5FneWq5Tl6j9e+5scCBdJ/AfYz9SaDgjY26rl2LUZrfa8oRI K3uF8LG8nKLKfKL+Ipj0oa6LTn4wuAUNvbJUCiwhczgZaYlsr2ZMmD+e/ n0hTpENL+9AdvCNLn19U+tbT3HnFljul6GOM8BVvQ9Abiqx1aj7o/fa6l fCKCWuJcVOslkTwlJxt1//STDGRZqryzfyemkGrM0tGv9WYSQh95nPkwQ A==; X-IronPort-AV: E=McAfee;i="6500,9779,10551"; a="299716402" X-IronPort-AV: E=Sophos;i="5.96,218,1665471600"; d="scan'208";a="299716402" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Dec 2022 00:09:04 -0800 X-IronPort-AV: E=McAfee;i="6500,9779,10551"; a="770268618" X-IronPort-AV: E=Sophos;i="5.96,218,1665471600"; d="scan'208";a="770268618" Received: from mxu9-mobl1.ccr.corp.intel.com ([10.238.3.24]) by orsmga004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Dec 2022 00:09:02 -0800 From: "Min Xu" To: devel@edk2.groups.io Cc: Min Xu , Erdem Aktas , James Bottomley , Jiewen Yao , Tom Lendacky , Gerd Hoffmann , Michael D Kinney , Liming Gao Subject: [PATCH V1 0/3] Reserve shared memory for DMA operation Date: Mon, 5 Dec 2022 16:08:50 +0800 Message-Id: <20221205080853.356-1-min.m.xu@intel.com> X-Mailer: git-send-email 2.29.2.windows.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=4171 This patch-set introduces the feature of reserving shared memory for DMA operation. Its intention is to reduce the allocation and conversion of private/shared memory, so that boot performance can be improved significantly. Detailed information is in Patch#1. Patch#2 renames AmdSevIoMmu.* to CcIoMmu.* because these 2 files support both SEV and TDX guest. Patch#3 updates the related section in Maintainers.txt. Code: https://github.com/mxu9/edk2/tree/IoMmu.v1 Cc: Erdem Aktas Cc: James Bottomley Cc: Jiewen Yao Cc: Tom Lendacky Cc: Gerd Hoffmann Cc: Michael D Kinney Cc: Liming Gao Signed-off-by: Min Xu Min M Xu (3): OvmfPkg/IoMmuDxe: Reserve shared memory region for DMA operation OvmfPkg/IoMmuDxe: Rename AmdSevIoMmu to CcIoMmu Maintainers: Update OvmfPkg/IoMmuDxe Maintainers.txt | 2 +- OvmfPkg/IoMmuDxe/{AmdSevIoMmu.c => CcIoMmu.c} | 144 +++--- OvmfPkg/IoMmuDxe/{AmdSevIoMmu.h => CcIoMmu.h} | 0 OvmfPkg/IoMmuDxe/IoMmuBuffer.c | 425 ++++++++++++++++++ OvmfPkg/IoMmuDxe/IoMmuDxe.c | 2 +- OvmfPkg/IoMmuDxe/IoMmuDxe.inf | 6 +- OvmfPkg/IoMmuDxe/IoMmuInternal.h | 179 ++++++++ 7 files changed, 681 insertions(+), 77 deletions(-) rename OvmfPkg/IoMmuDxe/{AmdSevIoMmu.c => CcIoMmu.c} (88%) rename OvmfPkg/IoMmuDxe/{AmdSevIoMmu.h => CcIoMmu.h} (100%) create mode 100644 OvmfPkg/IoMmuDxe/IoMmuBuffer.c create mode 100644 OvmfPkg/IoMmuDxe/IoMmuInternal.h -- 2.29.2.windows.2