From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 9ACF281FE7 for ; Thu, 15 Dec 2016 17:48:26 -0800 (PST) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga105.jf.intel.com with ESMTP; 15 Dec 2016 17:48:26 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,355,1477983600"; d="scan'208";a="912741011" Received: from shwdeftian.ccr.corp.intel.com ([10.239.158.36]) by orsmga003.jf.intel.com with ESMTP; 15 Dec 2016 17:48:25 -0800 From: Feng Tian To: edk2-devel@lists.01.org Date: Fri, 16 Dec 2016 09:48:11 +0800 Message-Id: X-Mailer: git-send-email 2.7.1.windows.2 Subject: [patch 0/4] Add STM (Smi Tranfer Monitor) support X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 16 Dec 2016 01:48:26 -0000 This patch series is used to add STM support to UefiCpuPkg. More details about STM are described in: http://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-manual-325462.pdf https://firmware.intel.com/sites/default/files/STM_User_Guide-001.pdf https://firmware.intel.com/sites/default/files/A_Tour_Beyond_BIOS_Launching_STM_to_Monitor_SMM_in_EFI_Developer_Kit_II.pdf Michael Kinney (4): UefiCpuPkg/Include: Update MSEG structure comments UefiCpuPkg: Add STM GUIDs, Protocols, and PCDs UefiCpuPkg/SmmCpuFeaturesLib: Split into two files UefiCpuPkg/SmmCpuFeaturesLibStm: Add STM library instance UefiCpuPkg/Include/Guid/MsegSmram.h | 30 + UefiCpuPkg/Include/Protocol/SmMonitorInit.h | 141 +++ UefiCpuPkg/Include/Register/ArchitecturalMsr.h | 25 +- UefiCpuPkg/Include/Register/StmApi.h | 954 ++++++++++++++ .../Include/Register/StmResourceDescriptor.h | 228 ++++ UefiCpuPkg/Include/Register/StmStatusCode.h | 78 ++ .../Library/SmmCpuFeaturesLib/Ia32/SmiEntry.S | 278 +++++ .../Library/SmmCpuFeaturesLib/Ia32/SmiEntry.asm | 285 +++++ .../Library/SmmCpuFeaturesLib/Ia32/SmiEntry.nasm | 271 ++++ .../Library/SmmCpuFeaturesLib/Ia32/SmiException.S | 174 +++ .../SmmCpuFeaturesLib/Ia32/SmiException.asm | 170 +++ .../SmmCpuFeaturesLib/Ia32/SmiException.nasm | 176 +++ .../Library/SmmCpuFeaturesLib/Ia32/SmmStmSupport.c | 83 ++ .../Library/SmmCpuFeaturesLib/SmmCpuFeaturesLib.c | 77 +- .../SmmCpuFeaturesLib/SmmCpuFeaturesLib.inf | 3 +- .../SmmCpuFeaturesLib/SmmCpuFeaturesLibNoStm.c | 89 ++ .../SmmCpuFeaturesLib/SmmCpuFeaturesLibStm.inf | 88 ++ UefiCpuPkg/Library/SmmCpuFeaturesLib/SmmStm.c | 1299 ++++++++++++++++++++ UefiCpuPkg/Library/SmmCpuFeaturesLib/SmmStm.h | 176 +++ .../Library/SmmCpuFeaturesLib/X64/SmiEntry.S | 282 +++++ .../Library/SmmCpuFeaturesLib/X64/SmiEntry.asm | 281 +++++ .../Library/SmmCpuFeaturesLib/X64/SmiEntry.nasm | 263 ++++ .../Library/SmmCpuFeaturesLib/X64/SmiException.S | 178 +++ .../Library/SmmCpuFeaturesLib/X64/SmiException.asm | 178 +++ .../SmmCpuFeaturesLib/X64/SmiException.nasm | 179 +++ .../Library/SmmCpuFeaturesLib/X64/SmmStmSupport.c | 95 ++ UefiCpuPkg/UefiCpuPkg.dec | 12 + UefiCpuPkg/UefiCpuPkg.dsc | 8 + 28 files changed, 6036 insertions(+), 65 deletions(-) create mode 100644 UefiCpuPkg/Include/Guid/MsegSmram.h create mode 100644 UefiCpuPkg/Include/Protocol/SmMonitorInit.h create mode 100644 UefiCpuPkg/Include/Register/StmApi.h create mode 100644 UefiCpuPkg/Include/Register/StmResourceDescriptor.h create mode 100644 UefiCpuPkg/Include/Register/StmStatusCode.h create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiEntry.S create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiEntry.asm create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiEntry.nasm create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiException.S create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiException.asm create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmiException.nasm create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/Ia32/SmmStmSupport.c create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLibNoStm.c create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/SmmCpuFeaturesLibStm.inf create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/SmmStm.c create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/SmmStm.h create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/X64/SmiEntry.S create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/X64/SmiEntry.asm create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/X64/SmiEntry.nasm create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/X64/SmiException.S create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/X64/SmiException.asm create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/X64/SmiException.nasm create mode 100644 UefiCpuPkg/Library/SmmCpuFeaturesLib/X64/SmmStmSupport.c -- 2.7.1.windows.2