# If 1, TCG platform type is server.\r
gEfiSecurityPkgTokenSpaceGuid.PcdTpmPlatformClass|0|UINT8|0x00000006\r
\r
- ## The PCD is used to control whether to support hiding the TPM.\r
- # If TRUE, PcdHideTpm controls whether to hide the TPM.\r
- # This pcd is only for validation purpose. It should be set to false in production.\r
- gEfiSecurityPkgTokenSpaceGuid.PcdHideTpmSupport|FALSE|BOOLEAN|0x00000007\r
- \r
[PcdsDynamic, PcdsDynamicEx]\r
- ## The PCD is used to control whether to hide the TPM.\r
- gEfiSecurityPkgTokenSpaceGuid.PcdHideTpm|FALSE|BOOLEAN|0x00010002\r
-\r
[PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]\r
## This PCD indicates the presence or absence of the platform operator.\r
gEfiSecurityPkgTokenSpaceGuid.PcdTpmPhysicalPresence|TRUE|BOOLEAN|0x00010001\r
/** @file\r
VFR file used by the TCG configuration component.\r
\r
-Copyright (c) 2011 - 2012, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>\r
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
endcheckbox;\r
endif;\r
\r
- suppressif TRUE;\r
- checkbox varid = TCG_CONFIGURATION.OriginalHideTpm,\r
- prompt = STRING_TOKEN(STR_NULL),\r
- help = STRING_TOKEN(STR_NULL),\r
- endcheckbox;\r
- endif;\r
-\r
text\r
help = STRING_TOKEN(STR_TPM_STATE_HELP),\r
text = STRING_TOKEN(STR_TPM_STATE_PROMPT),\r
\r
subtitle text = STRING_TOKEN(STR_NULL);\r
\r
- label LABEL_TCG_CONFIGURATION_HIDETPM;\r
-\r
- checkbox varid = TCG_CONFIGURATION.HideTpm,\r
- questionid = KEY_HIDE_TPM,\r
- prompt = STRING_TOKEN(STR_HIDE_TPM_PROMPT),\r
- help = STRING_TOKEN(STR_HIDE_TPM_HELP),\r
- flags = RESET_REQUIRED,\r
- endcheckbox;\r
-\r
- label LABEL_END;\r
-\r
- grayoutif ideqval TCG_CONFIGURATION.OriginalHideTpm == 1;\r
oneof varid = TCG_CONFIGURATION.TpmOperation,\r
questionid = KEY_TPM_ACTION,\r
prompt = STRING_TOKEN(STR_TPM_OPERATION),\r
\r
subtitle text = STRING_TOKEN(STR_NULL);\r
\r
- endif;\r
-\r
endform;\r
\r
endformset;\r
/** @file\r
The module entry point for Tcg configuration module.\r
\r
-Copyright (c) 2011 - 2013, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>\r
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
}\r
\r
PrivateData->TcgProtocol = TcgProtocol;\r
- PrivateData->HideTpm = (BOOLEAN) (PcdGetBool (PcdHideTpmSupport) && PcdGetBool (PcdHideTpm));\r
\r
//\r
// Install TCG configuration form\r
## @file\r
# Component name for Tcg configuration module.\r
#\r
-# Copyright (c) 2011 - 2013, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>\r
# 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
gEfiHiiConfigRoutingProtocolGuid ## CONSUMES\r
gEfiTcgProtocolGuid ## CONSUMES\r
\r
-[FixedPcd]\r
- gEfiSecurityPkgTokenSpaceGuid.PcdHideTpmSupport\r
-\r
[Pcd]\r
- gEfiSecurityPkgTokenSpaceGuid.PcdHideTpm\r
gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid\r
\r
[Depex]\r
/** @file\r
HII Config Access protocol implementation of TCG configuration module.\r
\r
-Copyright (c) 2011 - 2012, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>\r
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
ZeroMem (&Configuration, sizeof (TCG_CONFIGURATION));\r
\r
Configuration.TpmOperation = PHYSICAL_PRESENCE_ENABLE;\r
- Configuration.HideTpm = (BOOLEAN) (PcdGetBool (PcdHideTpmSupport) && PcdGetBool (PcdHideTpm));\r
- //\r
- // Read the original value of HideTpm from PrivateData which won't be changed by Setup in this boot.\r
- //\r
- Configuration.OriginalHideTpm = PrivateData->HideTpm;\r
\r
//\r
// Display current TPM state.\r
return Status;\r
}\r
\r
- PcdSetBool (PcdHideTpm, TcgConfiguration.HideTpm);\r
-\r
return EFI_SUCCESS;\r
}\r
\r
EFI_STATUS Status;\r
EFI_HII_HANDLE HiiHandle;\r
EFI_HANDLE DriverHandle;\r
- VOID *StartOpCodeHandle;\r
- VOID *EndOpCodeHandle;\r
- EFI_IFR_GUID_LABEL *StartLabel;\r
- EFI_IFR_GUID_LABEL *EndLabel;\r
-\r
EFI_HII_CONFIG_ACCESS_PROTOCOL *ConfigAccess;\r
\r
DriverHandle = NULL;\r
\r
PrivateData->HiiHandle = HiiHandle;\r
\r
- //\r
- // Remove the Hide TPM question from the IFR\r
- //\r
- if (!PcdGetBool (PcdHideTpmSupport)) {\r
- //\r
- // Allocate space for creation of UpdateData Buffer\r
- //\r
- StartOpCodeHandle = HiiAllocateOpCodeHandle ();\r
- ASSERT (StartOpCodeHandle != NULL);\r
-\r
- EndOpCodeHandle = HiiAllocateOpCodeHandle ();\r
- ASSERT (EndOpCodeHandle != NULL);\r
-\r
- //\r
- // Create Hii Extend Label OpCode as the start opcode\r
- //\r
- StartLabel = (EFI_IFR_GUID_LABEL *) HiiCreateGuidOpCode (StartOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof (EFI_IFR_GUID_LABEL));\r
- StartLabel->ExtendOpCode = EFI_IFR_EXTEND_OP_LABEL;\r
- StartLabel->Number = LABEL_TCG_CONFIGURATION_HIDETPM;\r
-\r
- //\r
- // Create Hii Extend Label OpCode as the end opcode\r
- //\r
- EndLabel = (EFI_IFR_GUID_LABEL *) HiiCreateGuidOpCode (EndOpCodeHandle, &gEfiIfrTianoGuid, NULL, sizeof (EFI_IFR_GUID_LABEL));\r
- EndLabel->ExtendOpCode = EFI_IFR_EXTEND_OP_LABEL;\r
- EndLabel->Number = LABEL_END;\r
- \r
- HiiUpdateForm (HiiHandle, NULL, TCG_CONFIGURATION_FORM_ID, StartOpCodeHandle, EndOpCodeHandle);\r
-\r
- HiiFreeOpCodeHandle (StartOpCodeHandle);\r
- HiiFreeOpCodeHandle (EndOpCodeHandle);\r
- }\r
-\r
return EFI_SUCCESS; \r
}\r
\r
The header file of HII Config Access protocol implementation of TCG\r
configuration module.\r
\r
-Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>\r
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
EFI_HANDLE DriverHandle; \r
\r
EFI_TCG_PROTOCOL *TcgProtocol;\r
-\r
- BOOLEAN HideTpm;\r
} TCG_CONFIG_PRIVATE_DATA;\r
\r
extern TCG_CONFIG_PRIVATE_DATA mTcgConfigPrivateDateTemplate;\r
/** @file\r
Header file for NV data structure definition.\r
\r
-Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2011 - 2014, Intel Corporation. All rights reserved.<BR>\r
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
#define TCG_CONFIGURATION_VARSTORE_ID 0x0001\r
#define TCG_CONFIGURATION_FORM_ID 0x0001\r
\r
-#define KEY_HIDE_TPM 0x2000\r
-#define KEY_TPM_ACTION 0x3000\r
-#define KEY_TPM_MOR_ENABLE 0x4000\r
+#define KEY_TPM_ACTION 0x3000\r
\r
-#define LABEL_TCG_CONFIGURATION_HIDETPM 0x0001\r
-#define LABEL_END 0xffff\r
+#define LABEL_TCG_CONFIGURATION_TPM_OPERATION 0x0001\r
+#define LABEL_END 0xffff\r
\r
//\r
// Nv Data structure referenced by IFR\r
//\r
typedef struct {\r
- BOOLEAN HideTpm;\r
- BOOLEAN OriginalHideTpm;\r
UINT8 TpmOperation;\r
BOOLEAN TpmEnable;\r
BOOLEAN TpmActivate;\r
/** @file\r
Initialize TPM device and measure FVs before handing off control to DXE.\r
\r
-Copyright (c) 2005 - 2013, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2005 - 2014, Intel Corporation. All rights reserved.<BR>\r
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
return EFI_UNSUPPORTED;\r
}\r
\r
- if (PcdGetBool (PcdHideTpmSupport) && PcdGetBool (PcdHideTpm)) {\r
- return EFI_UNSUPPORTED;\r
- }\r
-\r
//\r
// Initialize TPM device\r
//\r
## @file\r
# This module will initialize TPM device and measure FVs in PEI phase.\r
#\r
-# Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>\r
# 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
gEfiEndOfPeiSignalPpiGuid\r
\r
[Pcd]\r
- gEfiSecurityPkgTokenSpaceGuid.PcdHideTpm\r
gEfiSecurityPkgTokenSpaceGuid.PcdPhysicalPresenceLifetimeLock\r
gEfiSecurityPkgTokenSpaceGuid.PcdPhysicalPresenceCmdEnable\r
gEfiSecurityPkgTokenSpaceGuid.PcdPhysicalPresenceHwEnable\r
gEfiSecurityPkgTokenSpaceGuid.PcdTpmScrtmPolicy\r
\r
[FixedPcd]\r
- gEfiSecurityPkgTokenSpaceGuid.PcdHideTpmSupport\r
gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported ## CONSUMES\r
\r
[Depex]\r
/** @file\r
TPM1.2/dTPM2.0 auto detection.\r
\r
-Copyright (c) 2013, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.<BR>\r
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
EFI_PEI_READ_ONLY_VARIABLE2_PPI *VariablePpi;\r
UINTN Size;\r
\r
- if (PcdGetBool (PcdHideTpmSupport) && PcdGetBool (PcdHideTpm)) {\r
- DEBUG ((EFI_D_ERROR, "DetectTpmDevice: Tpm is hide\n"));\r
- return TPM_DEVICE_NULL;\r
- }\r
-\r
Status = PeiServicesGetBootMode (&BootMode);\r
ASSERT_EFI_ERROR (Status);\r
\r
# Component name for TrEE configuration module.\r
# NOTE: This module is only for reference only, each platform should have its own setup page.\r
#\r
-# Copyright (c) 2013, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.<BR>\r
# 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
[Ppis]\r
gEfiPeiReadOnlyVariable2PpiGuid\r
\r
-[FixedPcd]\r
- gEfiSecurityPkgTokenSpaceGuid.PcdHideTpmSupport\r
-\r
[Pcd]\r
gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid\r
- gEfiSecurityPkgTokenSpaceGuid.PcdHideTpm\r
gEfiSecurityPkgTokenSpaceGuid.PcdTpmInitializationPolicy\r
gEfiSecurityPkgTokenSpaceGuid.PcdTpmAutoDetection\r
gEfiSecurityPkgTokenSpaceGuid.PcdTpmBaseAddress\r
/** @file\r
Initialize TPM2 device and measure FVs before handing off control to DXE.\r
\r
-Copyright (c) 2013, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.<BR>\r
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
return EFI_UNSUPPORTED;\r
}\r
\r
- if (PcdGetBool (PcdHideTpmSupport) && PcdGetBool (PcdHideTpm)) {\r
- return EFI_UNSUPPORTED;\r
- }\r
-\r
//\r
// Update for Performance optimization\r
//\r
## @file\r
# This module will initialize TPM2 device and measure FVs in PEI phase.\r
#\r
-# Copyright (c) 2013, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2013 - 2014, Intel Corporation. All rights reserved.<BR>\r
# 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
gEfiEndOfPeiSignalPpiGuid\r
\r
[Pcd]\r
- gEfiSecurityPkgTokenSpaceGuid.PcdHideTpm\r
gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString ## CONSUMES\r
gEfiSecurityPkgTokenSpaceGuid.PcdTpmInstanceGuid\r
gEfiSecurityPkgTokenSpaceGuid.PcdTpm2InitializationPolicy\r
gEfiSecurityPkgTokenSpaceGuid.PcdTpm2ScrtmPolicy\r
\r
[FixedPcd]\r
- gEfiSecurityPkgTokenSpaceGuid.PcdHideTpmSupport\r
gEfiMdeModulePkgTokenSpaceGuid.PcdPeiCoreMaxFvSupported ## CONSUMES\r
\r
[Depex]\r