]> git.proxmox.com Git - mirror_edk2.git/blobdiff - SecurityPkg/SecurityPkg.dec
SecurityPkg: Add gEdkiiSecureBootModeGuid definition
[mirror_edk2.git] / SecurityPkg / SecurityPkg.dec
index b15cd624010337744757dd6d959c8fc0a2312e1a..d568b4757a0bd01325ee564f5e112198eb3bf708 100644 (file)
@@ -6,6 +6,7 @@
 #  and libraries instances, which are used for those features.\r
 #\r
 # Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.<BR>\r
+# (C) Copyright 2015 Hewlett Packard Enterprise Development LP <BR>\r
 # This program and the accompanying materials are licensed and made available under\r
 # the terms and conditions of the BSD License which accompanies this distribution.\r
 # The full text of the license may be found at\r
@@ -20,8 +21,8 @@
   DEC_SPECIFICATION              = 0x00010005\r
   PACKAGE_NAME                   = SecurityPkg\r
   PACKAGE_UNI_FILE               = SecurityPkg.uni\r
-  PACKAGE_GUID                   = 24369CAC-6AA6-4fb8-88DB-90BF061668AD\r
-  PACKAGE_VERSION                = 0.94\r
+  PACKAGE_GUID                   = 4EFC4F66-6219-4427-B780-FB99F470767F\r
+  PACKAGE_VERSION                = 0.96\r
 \r
 [Includes]\r
   Include\r
   ##  @libraryclass  Provides TPM Interface Specification (TIS) interfaces for TPM command.\r
   #\r
   TpmCommLib|Include/Library/TpmCommLib.h\r
-    \r
-  ##  @libraryclass  Provides common interfaces about TPM measurement for other modules.\r
-  #\r
-  TpmMeasurementLib|Include/Library/TpmMeasurementLib.h\r
   \r
   ##  @libraryclass  Provides interfaces to handle TPM 2.0 request.\r
   #\r
   ##  @libraryclass  Provides support for TrEE PP >= 128 Vendor Specific PPI Operation.\r
   #\r
   TrEEPpVendorLib|Include/Library/TrEEPpVendorLib.h\r
+  \r
+  ##  @libraryclass  Provides support for TCG Physical Presence Interface (PPI) specification \r
+  #   >= 128 Vendor Specific PPI Operation.\r
+  #\r
+  Tcg2PpVendorLib|Include/Library/TcgPpVendorLib.h\r
+  \r
+  ##  @libraryclass  Handle TPM 2.0 physical presence request from OS.\r
+  #\r
+  Tcg2PhysicalPresenceLib|Include/Library/Tcg2PhysicalPresenceLib.h\r
 \r
 [Guids]\r
   ## Security package token space guid.\r
   # Include/Guid/SecurityPkgTokenSpace.h\r
   gEfiSecurityPkgTokenSpaceGuid      = { 0xd3fb176, 0x9569, 0x4d51, { 0xa3, 0xef, 0x7d, 0x61, 0xc6, 0x4f, 0xea, 0xba }}\r
 \r
-  ## Guid acted as the authenticated variable store header's signature, and to specify the variable list entries put in the EFI system table.\r
-  #  Include/Guid/AuthenticatedVariableFormat.h\r
-  gEfiAuthenticatedVariableGuid      = { 0xaaf32c78, 0x947b, 0x439a, { 0xa1, 0x80, 0x2e, 0x14, 0x4e, 0xc3, 0x77, 0x92 } }\r
-\r
   ## GUID used to "SecureBootEnable" variable for the Secure Boot feature enable/disable.\r
   #  This variable is used for allowing a physically present user to disable Secure Boot via firmware setup without the possession of PKpriv.\r
   #  Include/Guid/AuthenticatedVariableFormat.h\r
   ## GUID used to "certdb" variable to store the signer's certificates for common variables with EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS attribute.\r
   #  Include/Guid/AuthenticatedVariableFormat.h\r
   gEfiCertDbGuid                     = { 0xd9bee56e, 0x75dc, 0x49d9, { 0xb4, 0xd7, 0xb5, 0x34, 0x21, 0xf, 0x63, 0x7a } }\r
-  \r
+\r
+  ## GUID used to "SecureBootMode" variable to save platform secure boot mode\r
+  #  Include/Guid/AuthenticatedVariableFormat.h\r
+  gEdkiiSecureBootModeGuid           = { 0xc573b77, 0xeb93, 0x4d3d, { 0xaf, 0xfc, 0x5f, 0xeb, 0xca, 0xfb, 0x65, 0xb0 } }\r
+\r
   ## Hob GUID used to pass a TCG_PCR_EVENT from a TPM PEIM to a TPM DXE Driver.\r
   #  Include/Guid/TcgEventHob.h\r
   gTcgEventEntryHobGuid              = { 0x2b9ffb52, 0x1b13, 0x416f, { 0xa8, 0x7b, 0xbc, 0x93, 0xd, 0xef, 0x92, 0xa8 }}\r
 \r
+  ## Hob GUID used to pass a TCG_PCR_EVENT_2 from a TPM2 PEIM to a TPM2 DXE Driver.\r
+  ## Include/Guid/TcgEventHob.h\r
+  gTcgEvent2EntryHobGuid             = { 0xd26c221e, 0x2430, 0x4c8a, { 0x91, 0x70, 0x3f, 0xcb, 0x45, 0x0, 0x41, 0x3f }}\r
+\r
   ## HOB GUID used to record TPM device error.\r
   #  Include/Guid/TcgEventHob.h\r
   gTpmErrorHobGuid                   = { 0xef598499, 0xb25e, 0x473a, { 0xbf, 0xaf, 0xe7, 0xe5, 0x7d, 0xce, 0x82, 0xc4 }}\r
   #  Include/Guid/PhysicalPresenceData.h\r
   gEfiPhysicalPresenceGuid           = { 0xf6499b1, 0xe9ad, 0x493d, { 0xb9, 0xc2, 0x2f, 0x90, 0x81, 0x5c, 0x6c, 0xbc }}\r
   \r
+  ## GUID used to "Tcg2PhysicalPresence" variable and "Tcg2PhysicalPresenceFlags" variable for TPM2 request and response.\r
+  #  Include/Guid/Tcg2PhysicalPresenceData.h\r
+  gEfiTcg2PhysicalPresenceGuid = { 0xaeb9c5c1, 0x94f1, 0x4d02, { 0xbf, 0xd9, 0x46, 0x2, 0xdb, 0x2d, 0x3c, 0x54 }}\r
+\r
   ## GUID used for form browser, password credential and provider identifier.\r
   # Include/Guid/PwdCredentialProviderHii.h\r
   gPwdCredentialProviderGuid         = { 0x78b9ec8b, 0xc000, 0x46c5, { 0xac, 0x93, 0x24, 0xa0, 0xc1, 0xbb, 0x0, 0xce }}\r
   #  Include/Guid/TcgConfigHii.h\r
   gTcgConfigFormSetGuid              = { 0xb0f901e4, 0xc424, 0x45de, { 0x90, 0x81, 0x95, 0xe2, 0xb, 0xde, 0x6f, 0xb5 }}\r
   \r
+  ## GUID used for FormSet and config variable.\r
+  #  Include/Guid/Tcg2ConfigHii.h\r
+  gTcg2ConfigFormSetGuid    = {0x6339d487, 0x26ba, 0x424b, { 0x9a, 0x5d, 0x68, 0x7e, 0x25, 0xd7, 0x40, 0xbc }}\r
+  \r
   ## GUID used for FormSet.\r
   #  Include/Guid/SecureBootConfigHii.h\r
   gSecureBootConfigFormSetGuid       = { 0x5daf50a5, 0xea81, 0x4de2, {0x8f, 0x9b, 0xca, 0xbd, 0xa9, 0xcf, 0x5c, 0x14}}\r
 # [Error.gEfiSecurityPkgTokenSpaceGuid]\r
 #   0x80000001 | Invalid value provided.\r
 #   0x80000002 | Reserved bits must be set to zero.\r
+#   0x80000003 | Incorrect progress or error code provided.\r
 #\r
 \r
 [PcdsFixedAtBuild, PcdsPatchableInModule]\r
   #  TPM_DEVICE_INTERFACE_NONE means disable.<BR>\r
   #  TPM_DEVICE_INTERFACE_TPM12 means TPM 1.2 DTPM.<BR>\r
   #  TPM_DEVICE_INTERFACE_DTPM2 means TPM 2.0 DTPM.<BR>\r
+  #  Other GUID value means other TPM 2.0 device.<BR>\r
   # @Prompt TPM device type identifier\r
   gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid |{ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }|VOID*|0x0001000F\r
 \r
-  ## This PCD indicates Hash mask for TPM 2.0.<BR><BR>\r
-  #  If this bit is set, that means this algorithm is needed to extend to PCR.<BR>\r
-  #  If this bit is clear, that means this algorithm is NOT needed to extend to PCR.<BR>\r
-  #    BIT0  -  SHA1.<BR>\r
-  #    BIT1  -  SHA256.<BR>\r
-  #    BIT2  -  SHA384.<BR>\r
-  #    BIT3  -  SHA512.<BR>\r
-  # @Prompt Hash mask for TPM 2.0\r
-  # @ValidRange 0x80000001 | 0x00000000 - 0x0000000F \r
-  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2HashMask|0x0000000F|UINT32|0x00010010\r
-\r
   ## This PCD indicates if BIOS auto detect TPM1.2 or dTPM2.0.<BR><BR>\r
   #  FALSE - No auto detection.<BR>\r
   #  TRUE  - Auto detection.<BR>\r
   # @Prompt TPM device address.\r
   gEfiSecurityPkgTokenSpaceGuid.PcdTpmBaseAddress|0xFED40000|UINT64|0x00010012\r
 \r
+  ## This PCR means the OEM configurated number of PCR banks.\r
+  #  0 means dynamic get from supported HASH algorithm\r
+  # @Prompt OEM configurated number of PCR banks.\r
+  gEfiSecurityPkgTokenSpaceGuid.PcdTcg2NumberOfPCRBanks|0x0|UINT32|0x00010015\r
+  \r
   ## Provides one or more SHA 256 Hashes of the RSA 2048 public keys used to verify Recovery and Capsule Update images\r
   #\r
   # @Prompt One or more SHA 256 Hashes of RSA 2048 bit public keys used to verify Recovery and Capsule Update images\r
   #\r
   gEfiSecurityPkgTokenSpaceGuid.PcdRsa2048Sha256PublicKeyBuffer|{0x91, 0x29, 0xc4, 0xbd, 0xea, 0x6d, 0xda, 0xb3, 0xaa, 0x6f, 0x50, 0x16, 0xfc, 0xdb, 0x4b, 0x7e, 0x3c, 0xd6, 0xdc, 0xa4, 0x7a, 0x0e, 0xdd, 0xe6, 0x15, 0x8c, 0x73, 0x96, 0xa2, 0xd4, 0xa6, 0x4d}|VOID*|0x00010013\r
+\r
+[PcdsDynamic, PcdsDynamicEx]\r
+\r
+  ## This PCD indicates Hash mask for TPM 2.0.<BR><BR>\r
+  #  If this bit is set, that means this algorithm is needed to extend to PCR.<BR>\r
+  #  If this bit is clear, that means this algorithm is NOT needed to extend to PCR.<BR>\r
+  #    BIT0  -  SHA1.<BR>\r
+  #    BIT1  -  SHA256.<BR>\r
+  #    BIT2  -  SHA384.<BR>\r
+  #    BIT3  -  SHA512.<BR>\r
+  # @Prompt Hash mask for TPM 2.0\r
+  # @ValidRange 0x80000001 | 0x00000000 - 0x0000000F \r
+  gEfiSecurityPkgTokenSpaceGuid.PcdTpm2HashMask|0x0000000F|UINT32|0x00010010\r
+\r
+  ## This PCD indicated final BIOS supported Hash mask.\r
+  #    Bios may choose to register a subset of PcdTpm2HashMask.\r
+  #    So this PCD is final value of how many hash algo is extended to PCR.\r
+  # @Prompt Hash Algorithm bitmap.\r
+  gEfiSecurityPkgTokenSpaceGuid.PcdTcg2HashAlgorithmBitmap|0xFFFFFFFF|UINT32|0x00010016\r
   \r
 [UserExtensions.TianoCore."ExtraFiles"]\r
   SecurityPkgExtra.uni\r