From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 134.134.136.126, mailfrom: eric.dong@intel.com) Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by groups.io with SMTP; Mon, 08 Jul 2019 07:01:35 -0700 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga106.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Jul 2019 07:01:34 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.63,466,1557212400"; d="scan'208";a="167684516" Received: from ydong10-win10.ccr.corp.intel.com ([10.239.158.133]) by orsmga003.jf.intel.com with ESMTP; 08 Jul 2019 07:01:33 -0700 From: "Dong, Eric" To: devel@edk2.groups.io Cc: Ray Ni , Laszlo Ersek Subject: [Patch v4 0/2] Enable new MM MP protocol Date: Mon, 8 Jul 2019 22:01:28 +0800 Message-Id: <20190708140130.10632-1-eric.dong@intel.com> X-Mailer: git-send-email 2.21.0.windows.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit V4 changes: 1. Use link list to save the used tokens. v3 changes: 1. Fix Token clean up too early caused CheckProcedure return error. https://bugzilla.tianocore.org/show_bug.cgi?id=1937 PI spec added a new protocol named MM MP protocol. This protocol allows for better remote queuing of execution of procedures on an AP. This extends the existing procedures to allow: 1. A function to be called in blocking and non-blocking manner explicitly 2. Allow broadcasts. 3. Allow execution of a procedure when a processor powers up. This patch serial enable this new protocol. Cc: Ray Ni Cc: Laszlo Ersek Eric Dong (2): MdePkg: Add new MM MP Protocol definition. UefiCpuPkg/PiSmmCpuDxeSmm: Enable MM MP Protocol. MdePkg/Include/Pi/PiMultiPhase.h | 16 + MdePkg/Include/Protocol/MmMp.h | 333 +++++++++++ MdePkg/MdePkg.dec | 3 + UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c | 558 ++++++++++++++++++- UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.c | 16 + UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.h | 175 +++++- UefiCpuPkg/PiSmmCpuDxeSmm/PiSmmCpuDxeSmm.inf | 3 + UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.c | 376 +++++++++++++ UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.h | 286 ++++++++++ 9 files changed, 1744 insertions(+), 22 deletions(-) create mode 100644 MdePkg/Include/Protocol/MmMp.h create mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.c create mode 100644 UefiCpuPkg/PiSmmCpuDxeSmm/SmmMp.h -- 2.21.0.windows.1