X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=SecurityPkg%2FSecurityPkg.dec;h=87b1fbad8056db76b0f2d4b11e2d35ccc380eeb6;hb=7601b251fd5cfd6cd70d40bc9c88b3b371143654;hp=8d64b4fefe7d4c74ab717f869ba0e2a301c174f4;hpb=b3548d32ddb553a9e95503457c66d11462622d16;p=mirror_edk2.git diff --git a/SecurityPkg/SecurityPkg.dec b/SecurityPkg/SecurityPkg.dec index 8d64b4fefe..87b1fbad80 100644 --- a/SecurityPkg/SecurityPkg.dec +++ b/SecurityPkg/SecurityPkg.dec @@ -5,16 +5,10 @@ # It also provides the definitions(including PPIs/PROTOCOLs/GUIDs and library classes) # and libraries instances, which are used for those features. # -# Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.
+# Copyright (c) 2009 - 2019, Intel Corporation. All rights reserved.
# (C) Copyright 2015 Hewlett Packard Enterprise Development LP
-# Copyright (c) 2017, Microsoft Corporation. All rights reserved.
-# This program and the accompanying materials are licensed and made available under -# the terms and conditions of the BSD License which accompanies this distribution. -# The full text of the license may be found at -# http://opensource.org/licenses/bsd-license.php -# -# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, -# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +# Copyright (c) Microsoft Corporation.
+# SPDX-License-Identifier: BSD-2-Clause-Patent # ## @@ -68,20 +62,28 @@ ## @libraryclass Provides support for TCG Physical Presence Interface (PPI) specification # >= 128 Vendor Specific PPI Operation. # - Tcg2PpVendorLib|Include/Library/TcgPpVendorLib.h + Tcg2PpVendorLib|Include/Library/Tcg2PpVendorLib.h ## @libraryclass Handle TPM 2.0 physical presence request from OS. # Tcg2PhysicalPresenceLib|Include/Library/Tcg2PhysicalPresenceLib.h - ## @libraryclass Provides interfaces about TCG storage generic commond. + ## @libraryclass Provides interfaces about TCG storage generic command. # TcgStorageCoreLib|Include/Library/TcgStorageCoreLib.h - ## @libraryclass Provides interfaces about TCG storage Opal generic commond. + ## @libraryclass Provides interfaces about TCG storage Opal generic command. # TcgStorageOpalLib|Include/Library/TcgStorageOpalLib.h + ## @libraryclass Provides interfaces to access RPMC device. + # + RpmcLib|Include/Library/RpmcLib.h + + ## @libraryclass Provides interfaces to access variable root key. + # + VariableKeyLib|Include/Library/VariableKeyLib.h + [Guids] ## Security package token space guid. # Include/Guid/SecurityPkgTokenSpace.h @@ -127,6 +129,10 @@ ## Include/Guid/TcgEventHob.h gTpm2StartupLocalityHobGuid = { 0x397b0c9, 0x22e8, 0x459e, { 0xa4, 0xff, 0x99, 0xbc, 0x65, 0x27, 0x9, 0x29 }} + ## HOB GUID used to record TCG 800-155 PlatformId Event + ## Include/Guid/TcgEventHob.h + gTcg800155PlatformIdEventHobGuid = { 0xe2c3bc69, 0x615c, 0x4b5b, { 0x8e, 0x5c, 0xa0, 0x33, 0xa9, 0xc2, 0x5e, 0xd6 }} + ## HOB GUID used to pass all PEI measured FV info to DXE Driver. # Include/Guid/MeasuredFvHob.h gMeasuredFvHobGuid = { 0xb2360b42, 0x7173, 0x420a, { 0x86, 0x96, 0x46, 0xca, 0x6b, 0xab, 0x10, 0x60 }} @@ -139,22 +145,10 @@ # Include/Guid/Tcg2PhysicalPresenceData.h gEfiTcg2PhysicalPresenceGuid = { 0xaeb9c5c1, 0x94f1, 0x4d02, { 0xbf, 0xd9, 0x46, 0x2, 0xdb, 0x2d, 0x3c, 0x54 }} - ## GUID used for form browser, password credential and provider identifier. - # Include/Guid/PwdCredentialProviderHii.h - gPwdCredentialProviderGuid = { 0x78b9ec8b, 0xc000, 0x46c5, { 0xac, 0x93, 0x24, 0xa0, 0xc1, 0xbb, 0x0, 0xce }} - - ## GUID used for form browser, USB credential and provider identifier. - # Include/Guid/UsbCredentialProviderHii.h - gUsbCredentialProviderGuid = { 0xd0849ed1, 0xa88c, 0x4ba6, { 0xb1, 0xd6, 0xab, 0x50, 0xe2, 0x80, 0xb7, 0xa9 }} - ## GUID used for FormSet guid and user profile variable. # Include/Guid/UserIdentifyManagerHii.h gUserIdentifyManagerGuid = { 0x3ccd3dd8, 0x8d45, 0x4fed, { 0x96, 0x2d, 0x2b, 0x38, 0xcd, 0x82, 0xb3, 0xc4 }} - ## GUID used for FormSet. - # Include/Guid/UserProfileManagerHii.h - gUserProfileManagerGuid = { 0xc35f272c, 0x97c2, 0x465a, { 0xa2, 0x16, 0x69, 0x6b, 0x66, 0x8a, 0x8c, 0xfe }} - ## GUID used for FormSet. # Include/Guid/TcgConfigHii.h gTcgConfigFormSetGuid = { 0xb0f901e4, 0xc424, 0x45de, { 0x90, 0x81, 0x95, 0xe2, 0xb, 0xde, 0x6f, 0xb5 }} @@ -206,6 +200,9 @@ ## Include/Ppi/FirmwareVolumeInfoPrehashedFV.h gEdkiiPeiFirmwareVolumeInfoPrehashedFvPpiGuid = { 0x3ce1e631, 0x7008, 0x477c, { 0xad, 0xa7, 0x5d, 0xcf, 0xc7, 0xc1, 0x49, 0x4b } } + ## Include/Ppi/FirmwareVolumeInfoStoredHashFv.h + gEdkiiPeiFirmwareVolumeInfoStoredHashFvPpiGuid = {0x7f5e4e31, 0x81b1, 0x47e5, { 0x9e, 0x21, 0x1e, 0x4b, 0x5b, 0xc2, 0xf6, 0x1d } } + # # [Error.gEfiSecurityPkgTokenSpaceGuid] # 0x80000001 | Invalid value provided. @@ -275,6 +272,18 @@ # @ValidList 0x80000003 | 0x010D0000 gEfiSecurityPkgTokenSpaceGuid.PcdStatusCodeSubClassTpmDevice|0x010D0000|UINT32|0x00000007 + ## Defines the IO port used to trigger a software System Management Interrupt (SMI).

+ # Used as the SMI Command IO port by security functionality that triggers a software SMI such + # as Physical Presence Interface (PPI).
+ # @Prompt SMI Command IO port. + gEfiSecurityPkgTokenSpaceGuid.PcdSmiCommandIoPort|0xB2|UINT16|0x00000009 + + ## Progress Code for FV verification result.

+ # (EFI_SOFTWARE_PEI_MODULE | EFI_SUBCLASS_SPECIFIC | XXX) + # @Prompt Status Code for FV verification result + gEfiSecurityPkgTokenSpaceGuid.PcdStatusCodeFvVerificationPass|0x0303100A|UINT32|0x00010030 + gEfiSecurityPkgTokenSpaceGuid.PcdStatusCodeFvVerificationFail|0x0303100B|UINT32|0x00010031 + [PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx] ## Image verification policy for OptionRom. Only following values are valid:

# NOTE: Do NOT use 0x5 and 0x2 since it violates the UEFI specification and has been removed.
@@ -378,9 +387,9 @@ # @Prompt TPM device address. gEfiSecurityPkgTokenSpaceGuid.PcdTpmBaseAddress|0xFED40000|UINT64|0x00010012 - ## This PCR means the OEM configurated number of PCR banks. + ## This PCR means the OEM configured number of PCR banks. # 0 means dynamic get from supported HASH algorithm - # @Prompt OEM configurated number of PCR banks. + # @Prompt OEM configured number of PCR banks. gEfiSecurityPkgTokenSpaceGuid.PcdTcg2NumberOfPCRBanks|0x0|UINT32|0x00010015 ## Provides one or more SHA 256 Hashes of the RSA 2048 public keys used to verify Recovery and Capsule Update images @@ -417,7 +426,7 @@ # @Prompt A physical presence user status gEfiSecurityPkgTokenSpaceGuid.PcdUserPhysicalPresence|FALSE|BOOLEAN|0x00010019 - ## Indicate the TPM2 ACPI table revision. Rev 4 is defined in TCG ACPI Specification Rev 00.37.

+ ## Indicate the TPM2 ACPI table revision. Rev 4 has been defined since TCG ACPI Specification Rev 00.37.

# To support configuring from setup page, this PCD can be DynamicHii type and map to a setup option.
# For example, map to TCG2_VERSION.Tpm2AcpiTableRev to be configured by Tcg2ConfigDxe driver.
# gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableRev|L"TCG2_VERSION"|gTcg2ConfigFormSetGuid|0x8|3|NV,BS
@@ -428,7 +437,7 @@ # PCD can be configured for different settings in different scenarios # Default setting is TCG2_BIOS_TPM_MANAGEMENT_FLAG_DEFAULT | TCG2_BIOS_STORAGE_MANAGEMENT_FLAG_DEFAULT # @Prompt Initial setting of TCG2 Persistent Firmware Management Flags - gEfiSecurityPkgTokenSpaceGuid.PcdTcg2PhysicalPresenceFlags|0x300E2|UINT32|0x0001001B + gEfiSecurityPkgTokenSpaceGuid.PcdTcg2PhysicalPresenceFlags|0x700E2|UINT32|0x0001001B ## Indicate current TPM2 Interrupt Number reported by _CRS control method.

# TPM2 Interrupt feature is disabled If the pcd is set to 0.
@@ -440,6 +449,18 @@ # @Prompt Possible TPM2 Interrupt Number buffer gEfiSecurityPkgTokenSpaceGuid.PcdTpm2PossibleIrqNumBuf|{0x00, 0x00, 0x00, 0x00}|VOID*|0x0001001D + ## Indicates if Opal DXE driver skip password prompt.

+ # TRUE - Skip password prompt.
+ # FALSE - Does not skip password prompt.
+ # @Prompt Skip Opal DXE driver password prompt. + gEfiSecurityPkgTokenSpaceGuid.PcdSkipOpalPasswordPrompt|FALSE|BOOLEAN|0x00010020 + + ## Indicates if Hdd Password driver skip password prompt.

+ # TRUE - Skip password prompt.
+ # FALSE - Does not skip password prompt.
+ # @Prompt Skip Hdd Password prompt. + gEfiSecurityPkgTokenSpaceGuid.PcdSkipHddPasswordPrompt|FALSE|BOOLEAN|0x00010021 + [PcdsDynamic, PcdsDynamicEx] ## This PCD indicates Hash mask for TPM 2.0. Bit definition strictly follows TCG Algorithm Registry.

@@ -450,9 +471,10 @@ # BIT1 - SHA256.
# BIT2 - SHA384.
# BIT3 - SHA512.
+ # BIT4 - SM3_256.
# @Prompt Hash mask for TPM 2.0 - # @ValidRange 0x80000001 | 0x00000000 - 0x0000000F - gEfiSecurityPkgTokenSpaceGuid.PcdTpm2HashMask|0x0000000F|UINT32|0x00010010 + # @ValidRange 0x80000001 | 0x00000000 - 0x0000001F + gEfiSecurityPkgTokenSpaceGuid.PcdTpm2HashMask|0x0000001F|UINT32|0x00010010 ## This PCD indicated final BIOS supported Hash mask. # Bios may choose to register a subset of PcdTpm2HashMask. @@ -465,7 +487,7 @@ gEfiSecurityPkgTokenSpaceGuid.PcdTcg2HashAlgorithmBitmap|0xFFFFFFFF|UINT32|0x00010016 ## This PCD indicates current active TPM interface type. - # Accodingt to TCG PTP spec 1.3, there are 3 types defined in TPM2_PTP_INTERFACE_TYPE.
+ # According to TCG PTP spec 1.3, there are 3 types defined in TPM2_PTP_INTERFACE_TYPE.
# 0x00 - FIFO interface as defined in TIS 1.3 is active.
# 0x01 - FIFO interface as defined in PTP for TPM 2.0 is active.
# 0x02 - CRB interface is active.
@@ -474,15 +496,23 @@ # @Prompt current active TPM interface type. gEfiSecurityPkgTokenSpaceGuid.PcdActiveTpmInterfaceType|0xFF|UINT8|0x0001001E - ## This PCD records IdleByass status supported by current active TPM interface. - # Accodingt to TCG PTP spec 1.3, TPM with CRB interface can skip idle state and - # diretcly move to CmdReady state.
+ ## This PCD records IdleBypass status supported by current active TPM interface. + # According to TCG PTP spec 1.3, TPM with CRB interface can skip idle state and + # directly move to CmdReady state.
# 0x00 - Do not support IdleByPass.
# 0x01 - Support IdleByPass.
# 0xFF - IdleByPass State is not synced with TPM hardware.
# - # @Prompt IdleByass status supported by current active TPM interface. + # @Prompt IdleBypass status supported by current active TPM interface. gEfiSecurityPkgTokenSpaceGuid.PcdCRBIdleByPass|0xFF|UINT8|0x0001001F + ## This PCD records LAML field in TPM2 ACPI table. + # @Prompt Tpm2AcpiTableLaml LAML field in TPM2 ACPI table. + gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableLaml|0|UINT32|0x00010022 + + ## This PCD records LASA field in TPM2 ACPI table. + # @Prompt Tpm2AcpiTableLasa LASA field in TPM2 ACPI table. + gEfiSecurityPkgTokenSpaceGuid.PcdTpm2AcpiTableLasa|0|UINT64|0x00010023 + [UserExtensions.TianoCore."ExtraFiles"] SecurityPkgExtra.uni