Add TCG/TPM internal PPI and Protocol
authorlgao4 <lgao4@de2fecce-e211-0410-80a6-f3fac2684e05>
Wed, 2 Jan 2008 06:48:16 +0000 (06:48 +0000)
committerlgao4 <lgao4@de2fecce-e211-0410-80a6-f3fac2684e05>
Wed, 2 Jan 2008 06:48:16 +0000 (06:48 +0000)
git-svn-id: https://edk2.tianocore.org/svn/edk2/trunk@4463 de2fecce-e211-0410-80a6-f3fac2684e05

edk2/MdeModulePkg/Include/Ppi/OperatorPresence.h [new file with mode: 0644]
edk2/MdeModulePkg/Include/Protocol/TcgPlatform.h [new file with mode: 0644]
edk2/MdeModulePkg/MdeModulePkg.dec

diff --git a/edk2/MdeModulePkg/Include/Ppi/OperatorPresence.h b/edk2/MdeModulePkg/Include/Ppi/OperatorPresence.h
new file mode 100644 (file)
index 0000000..7e42ed4
--- /dev/null
@@ -0,0 +1,36 @@
+/*++\r
+\r
+Copyright (c) 2006, Intel Corporation                                                         \r
+All rights reserved. This program and the accompanying materials                          \r
+are licensed and made available under the terms and conditions of the BSD License         \r
+which accompanies this distribution.  The full text of the license may be found at        \r
+http://opensource.org/licenses/bsd-license.php                                            \r
+                                                                                          \r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.            \r
+\r
+Module Name:\r
+\r
+  OperatorPresence.h\r
+\r
+Abstract:\r
+\r
+  PPI published by the PEIM who's responsible for detecting operator presence\r
+\r
+--*/\r
+\r
+#ifndef _PEI_OPERATOR_PRESENCE_H_\r
+#define _PEI_OPERATOR_PRESENCE_H_\r
+\r
+#define PEI_OPERATOR_PRESENCE_PPI_GUID  \\r
+  { 0x20a7378c, 0xaa83, 0x4ce1, {0x82, 0x1f, 0x47, 0x40, 0xee, 0x1b, 0x3f, 0x9f } }\r
+\r
+typedef struct _PEI_OPERATOR_PRESENCE_PPI PEI_OPERATOR_PRESENCE_PPI;\r
+\r
+struct _PEI_OPERATOR_PRESENCE_PPI {\r
+  BOOLEAN                           OperatorPresent;\r
+};\r
+\r
+extern EFI_GUID                     gPeiOperatorPresencePpiGuid;\r
+\r
+#endif  //  _PEI_OPERATOR_PRESENCE_H_\r
diff --git a/edk2/MdeModulePkg/Include/Protocol/TcgPlatform.h b/edk2/MdeModulePkg/Include/Protocol/TcgPlatform.h
new file mode 100644 (file)
index 0000000..20f8075
--- /dev/null
@@ -0,0 +1,57 @@
+/*++\r
+\r
+Copyright (c) 2006, Intel Corporation                                                         \r
+All rights reserved. This program and the accompanying materials                          \r
+are licensed and made available under the terms and conditions of the BSD License         \r
+which accompanies this distribution.  The full text of the license may be found at        \r
+http://opensource.org/licenses/bsd-license.php                                            \r
+                                                                                          \r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     \r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.             \r
+\r
+Module Name:\r
+\r
+  TcgPlatform.h\r
+\r
+Abstract:\r
+  Tcg addtional services to measure PeImage and ActionString\r
+\r
+--*/\r
+\r
+#ifndef _TCG_PLATFORM_PROTOCOL_H_\r
+#define _TCG_PLATFORM_PROTOCOL_H_\r
+\r
+#define EFI_TCG_PLATFORM_PROTOCOL_GUID  \\r
+  { 0x8c4c9a41, 0xbf56, 0x4627, { 0x9e, 0xa, 0xc8, 0x38, 0x6d, 0x66, 0x11, 0x5c } }\r
+\r
+typedef struct tdEFI_TCG_PLATFORM_PROTOCOL EFI_TCG_PLATFORM_PROTOCOL;\r
+\r
+//\r
+// EFI TCG Platform Protocol\r
+//\r
+typedef\r
+EFI_STATUS\r
+(EFIAPI *EFI_TCG_MEASURE_PE_IMAGE) (\r
+  IN      BOOLEAN                   BootPolicy,\r
+  IN      EFI_PHYSICAL_ADDRESS      ImageAddress,\r
+  IN      UINTN                     ImageSize,\r
+  IN      UINTN                     LinkTimeBase,\r
+  IN      UINT16                    ImageType,\r
+  IN      EFI_HANDLE                DeviceHandle,\r
+  IN      EFI_DEVICE_PATH_PROTOCOL  *FilePath\r
+  );\r
+\r
+typedef\r
+EFI_STATUS\r
+(EFIAPI *EFI_TCG_MEASURE_ACTION) (\r
+  IN      CHAR8                     *ActionString\r
+  );\r
+\r
+struct tdEFI_TCG_PLATFORM_PROTOCOL {\r
+  EFI_TCG_MEASURE_PE_IMAGE          MeasurePeImage;\r
+  EFI_TCG_MEASURE_ACTION            MeasureAction;\r
+};\r
+\r
+extern EFI_GUID                     gEfiTcgPlatformProtocolGuid;\r
+\r
+#endif\r
index 7b27660..dadf7a6 100644 (file)
   gEfiPxeDhcp4CallbackProtocolGuid = {0xc1544c01, 0x92a4, 0x4198, {0x8a, 0x84, 0x77, 0x85, 0x83, 0xc2, 0x36, 0x21 }}\r
   gEfiPxeDhcp4ProtocolGuid       = {0x03c4e624, 0xac28, 0x11d3, { 0x9a, 0x2d, 0x00, 0x90, 0x29, 0x3f, 0xc1, 0x4d }}\r
   gEfiDpcProtocolGuid            = {0x480f8ae9, 0xc46, 0x4aa9,  { 0xbc, 0x89, 0xdb, 0x9f, 0xba, 0x61, 0x98, 0x6 }}\r
+  gEfiTcgPlatformProtocolGuid    = { 0x8c4c9a41, 0xbf56, 0x4627, { 0x9e, 0xa, 0xc8, 0x38, 0x6d, 0x66, 0x11, 0x5c }}\r
 \r
 [Ppis.common]\r
   gPeiBaseMemoryTestPpiGuid      = { 0xB6EC423C, 0x21D2, 0x490D, { 0x85, 0xC6, 0xDD, 0x58, 0x64, 0xEA, 0xA6, 0x74 }}\r
 \r
   ##gPeiFlashMapPpiGuid will be removed in future\r
   gPeiFlashMapPpiGuid            = { 0xf34c2fa0, 0xde88, 0x4270, {0x84, 0x14, 0x96, 0x12, 0x22, 0xf4, 0x52, 0x1c } }\r
+  \r
+  gPeiOperatorPresencePpiGuid    = { 0x20a7378c, 0xaa83, 0x4ce1, {0x82, 0x1f, 0x47, 0x40, 0xee, 0x1b, 0x3f, 0x9f } }\r
 \r
 [PcdsFeatureFlag.common]\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdSupportUpdateCapsuleRest|FALSE|BOOLEAN|0x0001001d\r