summaryrefslogtreecommitdiff
path: root/Board/EM/TCG2/Common/Setup/TcgSetup.sd
diff options
context:
space:
mode:
Diffstat (limited to 'Board/EM/TCG2/Common/Setup/TcgSetup.sd')
-rw-r--r--Board/EM/TCG2/Common/Setup/TcgSetup.sd672
1 files changed, 672 insertions, 0 deletions
diff --git a/Board/EM/TCG2/Common/Setup/TcgSetup.sd b/Board/EM/TCG2/Common/Setup/TcgSetup.sd
new file mode 100644
index 0000000..fe83c2d
--- /dev/null
+++ b/Board/EM/TCG2/Common/Setup/TcgSetup.sd
@@ -0,0 +1,672 @@
+//**********************************************************************
+//**********************************************************************
+//** **
+//** (C)Copyright 1985-2010, American Megatrends, Inc. **
+//** **
+//** All Rights Reserved. **
+//** **
+//** 5555 Oakbrook Pkwy, Suite 200, Norcross, GA 30093 **
+//** **
+//** Phone: (770)-246-8600 **
+//** **
+//**********************************************************************
+//**********************************************************************
+
+//**********************************************************************
+// $Header: /Alaska/SOURCE/Modules/TCG2/Common/TcgSetup/TcgSetup.sd 1 4/21/14 2:18p Fredericko $
+//
+// $Revision: 1 $
+//
+// $Date: 4/21/14 2:18p $
+//**********************************************************************
+// Revision History
+// ----------------
+// $Log: /Alaska/SOURCE/Modules/TCG2/Common/TcgSetup/TcgSetup.sd $
+//
+// 1 4/21/14 2:18p Fredericko
+//
+// 2 3/17/14 3:22p Fredericko
+//
+// 1 10/08/13 12:05p Fredericko
+// Initial Check-In for Tpm-Next module
+//
+// 2 10/03/13 2:45p Fredericko
+//
+// 1 7/10/13 5:57p Fredericko
+// [TAG] EIP120969
+// [Category] New Feature
+// [Description] TCG (TPM20)
+//
+// 6 9/28/11 6:33p Fredericko
+// [TAG] EIPEIP000000
+// [Category] Improvement
+// [Description] Provide a way to destroy TPM support without modifying
+// SDL token
+// [Files] TcgSetup.sd
+//
+// 5 9/07/11 9:31p Fredericko
+//
+// 4 8/29/11 6:52p Fredericko
+// [TAG] EIP00000
+// [Category] Improvement
+// [Description] Tcg Setup Improvement for Tpm status reporting
+// [Files] TcgSetup.sd
+//
+// 3 8/23/11 1:38a Fredericko
+// [TAG] EIP48182
+// [Category] Improvement
+// [Description] Changes to adopted setup customization.
+// [Files] TcgSetup.sd
+//
+// 19 5/19/10 6:24p Fredericko
+// Updated AMI copyright header
+//
+// 18 4/10/10 9:42p Fredericko
+// setup display operations on TPM operations
+//
+// 17 3/19/10 5:26p Fredericko
+// modified for legacy IO interface support
+//
+// 16 11/09/09 12:08p Fredericko
+// Checked in changes for UEFI 2.1. Also backward compatible with UEFI
+// 2.0. Please note that tools update might be required. Should build fine
+// with Tools Version 28.
+//
+// 15 4/30/09 6:26p Fredericko
+// Updated Header Date
+//
+// 14 4/30/09 5:46p Fredericko
+// AMI company Header Address changed
+//
+// 13 12/17/08 8:44p Rameshraju
+// Tpmenableold variable moved out from the Setup structure. EIP 17549
+//
+// 12 8/12/08 12:14p Fasihm
+// Added the Manufacturing flag to all the setup questions.
+//
+// 11 6/25/08 6:23p Fredericko
+// TXT related setup questions and information added.
+//
+// 10 1/04/08 3:51p Fredericko
+// Remove #define in Setup variables since it can cause Setup Size
+// problems in relation to the compiler
+//
+// 9 10/08/07 9:21a Fredericko
+//
+// 7 8/09/07 11:01a Pats
+// Modified to support password authentication, and to reset system if TPM
+// State is changed.
+//
+// 6 6/08/07 6:39p Fredericko
+// New TPm feature to allow disabling/Enabling TPM support. Status display
+// changes.
+//
+// 5 5/24/07 11:32a Fredericko
+// Improve Aesthetic value of TPM module in setup
+//
+// 4 5/22/07 7:21p Fredericko
+//
+// 3 5/22/07 4:00p Fredericko
+// TPM setup display status feature added
+//
+// 2 3/12/07 11:46a Fredericko
+// Feature: Grayout Setup operation if TCG is disabled in setup.
+//
+// 1 10/06/06 5:15p Andriyn
+//
+//**********************************************************************
+//<AMI_FHDR_START>
+//
+// Name: TCG.sd
+//
+// Description: TCG Form Template
+//
+//<AMI_FHDR_END>
+//**********************************************************************
+
+#ifdef SETUP_DATA_DEFINITION
+/***********************************************************/
+/* Put NVRAM data definitions here.
+/* For example: UINT8 Data1;
+/* These definitions will be converted by the build process
+/* to a definitions of SETUP_DATA fields.
+/***********************************************************/
+ UINT8 TpmEnable;
+ UINT8 TpmOperation;
+ UINT8 TpmEnaDisable;
+ UINT8 TpmActDeact;
+ UINT8 TpmOwnedUnowned;
+ UINT8 TpmSupport;
+ UINT8 TcgSupportEnabled;
+ UINT8 TcmSupport;
+ UINT8 TpmHrdW;
+ UINT8 TpmAuthenticate;
+ UINT8 SuppressTcg;
+ UINT8 TpmError;
+ UINT8 Tpm20Device;
+ UINT8 ShaPolicy;
+#endif
+
+#if defined(VFRCOMPILE) && !defined(CONTROLS_ARE_DEFINED)
+#define CONTROL_DEFINITION
+#endif
+#ifdef CONTROL_DEFINITION
+
+#define TCG_ONEOF_TPMSUPPORT\
+ oneof varid = SETUP_DATA.TpmSupport,\
+ prompt = STRING_TOKEN(STR_TPM_SUPPORT_PROMPT ),\
+ help = STRING_TOKEN(STR_TPMSUPPORT_HELP),\
+ option text = STRING_TOKEN(STR_TPM_DISABLE), value = 0, flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN(STR_TPM_ENABLE), value = 1, flags = RESET_REQUIRED | MANUFACTURING | DEFAULT;\
+ endoneof;
+
+
+#define TCG_ONEOF_TCMSUPPORT\
+ oneof varid = SETUP_DATA.TpmSupport,\
+ prompt = STRING_TOKEN(STR_TCM_SUPPORT_PROMPT ),\
+ help = STRING_TOKEN(STR_TPMSUPPORT_HELP),\
+ option text = STRING_TOKEN(STR_TPM_DISABLE), value = 0, flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN(STR_TPM_ENABLE), value = 1, flags = RESET_REQUIRED | MANUFACTURING | DEFAULT;\
+ endoneof;
+
+#define TCG_ONEOF_TPMAUTHENTICATE\
+ oneof varid = SETUP_DATA.TpmAuthenticate,\
+ prompt = STRING_TOKEN(STR_TPM_PASS_PROMPT),\
+ help = STRING_TOKEN(STR_TPM_PASS_HELP),\
+ option text = STRING_TOKEN(STR_TPM_DISABLE), value = 0, flags = RESET_REQUIRED | MANUFACTURING | DEFAULT;\
+ option text = STRING_TOKEN(STR_TPM_ENABLE), value = 1, flags = RESET_REQUIRED;\
+ endoneof;
+
+#define TCG_ONEOF_TPMENABLE\
+ oneof varid = SETUP_DATA.TpmEnable,\
+ prompt = STRING_TOKEN(STR_TPM_PROMPT),\
+ help = STRING_TOKEN(STR_TPM_HELP),\
+ option text = STRING_TOKEN(STR_TPM_DISABLED), value = 0, flags = RESET_REQUIRED | MANUFACTURING | DEFAULT;\
+ option text = STRING_TOKEN(STR_TPM_ENABLED), value = 1, flags = RESET_REQUIRED;\
+ endoneof;
+
+#define TCG_ONEOF_TCMENABLE\
+ oneof varid = SETUP_DATA.TpmEnable,\
+ prompt = STRING_TOKEN(STR_TCM_PROMPT),\
+ help = STRING_TOKEN(STR_TPM_HELP),\
+ option text = STRING_TOKEN(STR_TPM_DISABLED), value = 0, flags = RESET_REQUIRED | MANUFACTURING | DEFAULT;\
+ option text = STRING_TOKEN(STR_TPM_ENABLED), value = 1, flags = RESET_REQUIRED;\
+ endoneof;
+
+#define TCG_ONEOF_TPMOPERATION\
+ oneof varid = SETUP_DATA.TpmOperation,\
+ prompt = STRING_TOKEN(STR_TPMOP_PROMPT),\
+ help = STRING_TOKEN(STR_TPMOP_HELP),\
+ option text = STRING_TOKEN(STR_TPM_NONE), value = 0, flags = RESET_REQUIRED | MANUFACTURING | DEFAULT;\
+ option text = STRING_TOKEN(STR_TPM_OWNER), value = TCPA_PPIOP_OWNER_ON, flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN(STR_TPM_NOOWNER), value = TCPA_PPIOP_OWNER_OFF, flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN(STR_TPM_CLEAR), value = TCPA_PPIOP_CLEAR, flags = RESET_REQUIRED;\
+ endoneof;
+
+
+#define TCG_ONEOF_TCMOPERATION\
+ oneof varid = SETUP_DATA.TpmOperation,\
+ prompt = STRING_TOKEN(STR_TPMOP_PROMPT),\
+ help = STRING_TOKEN(STR_TPMOP_HELP),\
+ option text = STRING_TOKEN(STR_TPM_NONE), value = 0, flags = RESET_REQUIRED | MANUFACTURING | DEFAULT;\
+ option text = STRING_TOKEN(STR_TPM_OWNER), value = TCPA_PPIOP_OWNER_ON, flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN(STR_TPM_NOOWNER), value = TCPA_PPIOP_OWNER_OFF, flags = RESET_REQUIRED;\
+ option text = STRING_TOKEN(STR_TCM_CLEAR), value = TCPA_PPIOP_CLEAR, flags = RESET_REQUIRED;\
+ endoneof;
+
+#define TCG_ONEOF_HASHPOLICY\
+ oneof varid = SETUP_DATA.ShaPolicy,\
+ prompt = STRING_TOKEN(STR_HASHPOLICY),\
+ help = STRING_TOKEN(STR_HASHPOLICY_HELP),\
+ option text = STRING_TOKEN(STR_SHA1), value = 0, flags = RESET_REQUIRED | MANUFACTURING | DEFAULT;\
+ endoneof;
+
+
+
+#define TCG_ONEOF_TPMENADISABLE\
+ oneof varid = SETUP_DATA.TpmEnaDisable,\
+ prompt = STRING_TOKEN(STR_ENABLED_PROMPT),\
+ help = STRING_TOKEN(STR_ONOFFSTATE_HELP),\
+ option text = STRING_TOKEN(STR_TPMDISABLED), value = 1, flags = DEFAULT | MANUFACTURING;\
+ option text = STRING_TOKEN(STR_TPMENABLED), value = 0, flags = 0;\
+ endoneof;
+
+#define TCG_ONEOF_TCMENADISABLE\
+ oneof varid = SETUP_DATA.TpmEnaDisable,\
+ prompt = STRING_TOKEN(STR_TCM_ENABLED_PROMPT),\
+ help = STRING_TOKEN(STR_ONOFFSTATE_HELP),\
+ option text = STRING_TOKEN(STR_TPMDISABLED), value = 1, flags = DEFAULT | MANUFACTURING;\
+ option text = STRING_TOKEN(STR_TPMENABLED), value = 0, flags = 0;\
+ endoneof;
+
+#define TCG_ONEOF_TPMACTDEACT\
+ oneof varid = SETUP_DATA.TpmActDeact,\
+ prompt = STRING_TOKEN(STR_ACTIVATE_PROMPT),\
+ help = STRING_TOKEN(STR_ONOFFSTATE_HELP),\
+ option text = STRING_TOKEN(STR_TPMDEACTIVATED), value = 1, flags = DEFAULT | MANUFACTURING;\
+ option text = STRING_TOKEN(STR_TPMACTIVATED), value = 0, flags = 0;\
+ endoneof;
+
+#define TCG_ONEOF_TCMACTDEACT\
+ oneof varid = SETUP_DATA.TpmActDeact,\
+ prompt = STRING_TOKEN(STR_TCM_ACTIVATE_PROMPT),\
+ help = STRING_TOKEN(STR_ONOFFSTATE_HELP),\
+ option text = STRING_TOKEN(STR_TPMDEACTIVATED), value = 1, flags = DEFAULT |MANUFACTURING;\
+ option text = STRING_TOKEN(STR_TPMACTIVATED), value = 0, flags = 0;\
+ endoneof;
+
+#define TCG_ONEOF_TPMOWNEDUNOWNED\
+ oneof varid = SETUP_DATA.TpmOwnedUnowned,\
+ prompt = STRING_TOKEN(STR_OWNED_OR_UNOWNED_PROMPT),\
+ help = STRING_TOKEN(STR_OWNED_OR_UNOWNED_HELP),\
+ option text = STRING_TOKEN(STR_OWNED), value = 1, flags = 0;\
+ option text = STRING_TOKEN(STR_UNOWNED), value = 0, flags = DEFAULT | MANUFACTURING;\
+ endoneof;
+
+#define TCG_ONEOF_TCMOWNEDUNOWNED\
+ oneof varid = SETUP_DATA.TpmOwnedUnowned,\
+ prompt = STRING_TOKEN(STR_TCM_OWNED_OR_UNOWNED_PROMPT),\
+ help = STRING_TOKEN(STR_OWNED_OR_UNOWNED_HELP),\
+ option text = STRING_TOKEN(STR_OWNED), value = 1, flags = 0;\
+ option text = STRING_TOKEN(STR_UNOWNED), value = 0, flags = DEFAULT |MANUFACTURING;\
+ endoneof;
+
+#endif //#ifdef CONTROL_DEFINITION
+
+#ifdef CONTROLS_WITH_DEFAULTS
+ TCG_ONEOF_TPMSUPPORT
+ TCG_ONEOF_TCMSUPPORT
+ TCG_ONEOF_TPMAUTHENTICATE
+ TCG_ONEOF_TPMENABLE
+ TCG_ONEOF_TCMENABLE
+ TCG_ONEOF_TPMOPERATION
+ TCG_ONEOF_TCMOPERATION
+ TCG_ONEOF_TPMENADISABLE
+ TCG_ONEOF_TCMENADISABLE
+ TCG_ONEOF_TPMACTDEACT
+ TCG_ONEOF_TCMACTDEACT
+ TCG_ONEOF_TPMOWNEDUNOWNED
+ TCG_ONEOF_TCMOWNEDUNOWNED
+#endif //#ifdef CONTROLS_WITH_DEFAULTS
+
+#ifdef FORM_SET_TYPEDEF
+ #include <TcgSetupBoard.h>
+ #include <token.h>
+#endif // FORM_SET_TYPEDEF
+
+#ifdef ADVANCED_FORM_SET
+ #ifndef SUPPRESS_GRAYOUT_ENDIF //old Core
+ #define SUPPRESS_GRAYOUT_ENDIF endif;
+ #endif
+
+ #ifdef FORM_SET_ITEM
+ // Define controls to be added to the main page of the formset
+ #endif
+
+ #ifdef FORM_SET_GOTO
+ // Define goto commands for the forms defined in this file
+ suppressif ideqval SETUP_DATA.SuppressTcg == 1;
+ suppressif ideqval SETUP_DATA.Tpm20Device == 1;
+ goto TCG_FORM_ID,
+ prompt = STRING_TOKEN(STR_TCG_FORM),
+ help = STRING_TOKEN(STR_TCG_FORM_HELP);
+ endif;
+ suppressif ideqval SETUP_DATA.Tpm20Device == 0;
+ goto TCG20_FORM_ID,
+ prompt = STRING_TOKEN(STR_TCG_FORM),
+ help = STRING_TOKEN(STR_TCG_FORM_HELP);
+ endif;
+ endif;
+ #endif
+
+#ifdef FORM_SET_FORM
+
+ #ifndef TCG_FORM_TCG
+ #define TCG_FORM_TCG
+
+ // Define forms
+ form formid = AUTO_ID(TCG_FORM_ID),
+ title = STRING_TOKEN(STR_TCG_FORM);
+
+
+ SUBTITLE(STRING_TOKEN(STR_TPM_CONFIGURATION))
+
+#if TPM_PASSWORD_AUTHENTICATION
+
+ suppressif ideqval SETUP_DATA.TcmSupport == 1;
+ grayoutif ideqval SYSTEM_ACCESS.Access == SYSTEM_PASSWORD_USER AND
+ ideqval SETUP_DATA.TpmAuthenticate == 1;
+
+ TCG_ONEOF_TPMSUPPORT
+
+ SUPPRESS_GRAYOUT_ENDIF // suppress-grayout
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval AMITSESETUP.AdminPassword == 0 OR
+ ideqval SETUP_DATA.TcmSupport == 1 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SYSTEM_ACCESS.Access == SYSTEM_PASSWORD_USER;
+
+ TCG_ONEOF_TPMAUTHENTICATE
+
+ SUPPRESS_GRAYOUT_ENDIF // suppress-grayout
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval SETUP_DATA.TcmSupport == 1 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SYSTEM_ACCESS.Access == SYSTEM_PASSWORD_USER AND
+ ideqval SETUP_DATA.TpmAuthenticate == 1;
+
+ TCG_ONEOF_TPMENABLE
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval SETUP_DATA.TcmSupport == 1 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SYSTEM_ACCESS.Access == SYSTEM_PASSWORD_USER AND
+ ideqval SETUP_DATA.TpmAuthenticate == 1 OR
+ ideqval SETUP_DATA.TpmActDeact == 1 OR
+ ideqval SETUP_DATA.TpmEnable == 0;
+
+ TCG_ONEOF_TPMOPERATION
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+ suppressif ideqval SETUP_DATA.TcmSupport == 0;
+ grayoutif ideqval SYSTEM_ACCESS.Access == SYSTEM_PASSWORD_USER AND
+ ideqval SETUP_DATA.TpmAuthenticate == 1;
+
+ TCG_ONEOF_TCMSUPPORT
+
+ SUPPRESS_GRAYOUT_ENDIF // suppress-grayout
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval AMITSESETUP.AdminPassword == 0 OR
+ ideqval SETUP_DATA.TcmSupport == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SYSTEM_ACCESS.Access == SYSTEM_PASSWORD_USER;
+
+ TCG_ONEOF_TPMAUTHENTICATE
+
+ SUPPRESS_GRAYOUT_ENDIF // suppress-grayout
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval SETUP_DATA.TcmSupport == 0 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SYSTEM_ACCESS.Access == SYSTEM_PASSWORD_USER AND
+ ideqval SETUP_DATA.TpmAuthenticate == 1;
+
+ TCG_ONEOF_TCMENABLE
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval SETUP_DATA.TcmSupport == 0 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SYSTEM_ACCESS.Access == SYSTEM_PASSWORD_USER AND
+ ideqval SETUP_DATA.TpmAuthenticate == 1 OR
+ ideqval SETUP_DATA.TpmActDeact == 1 OR
+ ideqval SETUP_DATA.TpmEnable == 0;
+
+ TCG_ONEOF_TPMOPERATION
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+#if DISPLAY_TPM_SETUP_ERROR == 1
+ suppressif ideqval SETUP_DATA.TpmError == 0;
+ text
+ help = STRING_TOKEN(STR_EMPTY),
+ text = STRING_TOKEN(STR_TPM_SETUP_ERROR),
+ text = STRING_TOKEN(STR_EMPTY),
+ flags = 0,
+ key = 0;
+ endif;
+#endif
+
+#else
+
+ suppressif ideqval SETUP_DATA.TcmSupport == 1;
+ grayoutif ideqval SYSTEM_ACCESS.Access == SYSTEM_PASSWORD_USER;
+
+ TCG_ONEOF_TPMSUPPORT
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval SETUP_DATA.TcmSupport == 1 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SYSTEM_ACCESS.Access == SYSTEM_PASSWORD_USER;
+
+ TCG_ONEOF_TPMENABLE
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval SETUP_DATA.TcmSupport == 1 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SYSTEM_ACCESS.Access == SYSTEM_PASSWORD_USER OR
+ ideqval SETUP_DATA.TpmActDeact == 1 OR
+ ideqval SETUP_DATA.TpmEnable == 0;
+
+ TCG_ONEOF_TPMOPERATION
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+
+ suppressif ideqval SETUP_DATA.TcmSupport == 0;
+ grayoutif ideqval SYSTEM_ACCESS.Access == SYSTEM_PASSWORD_USER;
+
+ TCG_ONEOF_TCMSUPPORT
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval SETUP_DATA.TcmSupport == 0 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SYSTEM_ACCESS.Access == SYSTEM_PASSWORD_USER;
+
+ TCG_ONEOF_TCMENABLE
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval SETUP_DATA.TcmSupport == 0 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SYSTEM_ACCESS.Access == SYSTEM_PASSWORD_USER OR
+ ideqval SETUP_DATA.TpmActDeact == 1 OR
+ ideqval SETUP_DATA.TpmEnable == 0;
+
+ TCG_ONEOF_TPMOPERATION
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+#endif
+
+ SEPARATOR
+ SEPARATOR
+
+ SUBTITLE(STRING_TOKEN(STR_TPM_STATUS_INFO))
+
+#if TCG_LEGACY == 0
+ suppressif ideqval SETUP_DATA.TpmHrdW == 0 OR
+ ideqval SETUP_DATA.TpmHrdW == 2;
+ text
+ help = STRING_TOKEN(STR_EMPTY),
+ text = STRING_TOKEN(STR_TPMHARDWARE),
+ text = STRING_TOKEN(STR_EMPTY),
+ flags = 0,
+ key = 0;
+ endif;
+
+ suppressif ideqval SETUP_DATA.TcgSupportEnabled == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2;
+ text
+ help = STRING_TOKEN(STR_EMPTY),
+ text = STRING_TOKEN(STR_TPMSUPP),
+ text = STRING_TOKEN(STR_EMPTY),
+ flags = 0,
+ key = 0;
+ endif;
+
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 0 OR
+ ideqval SETUP_DATA.TpmHrdW == 1;
+ text
+ help = STRING_TOKEN(STR_EMPTY),
+ text = STRING_TOKEN(STR_TPMOPTIMIZE),
+ text = STRING_TOKEN(STR_EMPTY),
+ flags = 0,
+ key = 0;
+ endif;
+#endif
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval SETUP_DATA.TcmSupport == 1 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SETUP_DATA.TpmEnable == 0 OR
+ ideqval SETUP_DATA.TpmEnable == 1;
+
+ TCG_ONEOF_TPMENADISABLE
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval SETUP_DATA.TcmSupport == 1 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SETUP_DATA.TpmEnable == 0 OR
+ ideqval SETUP_DATA.TpmEnable == 1;
+
+ TCG_ONEOF_TPMACTDEACT
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval SETUP_DATA.TcmSupport == 1 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SETUP_DATA.TpmEnable == 0 OR
+ ideqval SETUP_DATA.TpmEnable == 1;
+
+ TCG_ONEOF_TPMOWNEDUNOWNED
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval SETUP_DATA.TcmSupport == 0 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SETUP_DATA.TpmEnable == 0 OR
+ ideqval SETUP_DATA.TpmEnable == 1;
+
+ TCG_ONEOF_TCMENADISABLE
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval SETUP_DATA.TcmSupport == 0 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SETUP_DATA.TpmEnable == 0 OR
+ ideqval SETUP_DATA.TpmEnable == 1;
+
+ TCG_ONEOF_TCMACTDEACT
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+ suppressif ideqval SETUP_DATA.TpmHrdW == 1 OR
+ ideqval SETUP_DATA.TpmHrdW == 2 OR
+ ideqval SETUP_DATA.TcmSupport == 0 OR
+ ideqval SETUP_DATA.TcgSupportEnabled == 0 OR
+ ideqval SETUP_DATA.TpmSupport == 0;
+ grayoutif ideqval SETUP_DATA.TpmEnable == 0 OR
+ ideqval SETUP_DATA.TpmEnable == 1;
+
+ TCG_ONEOF_TCMOWNEDUNOWNED
+
+ SUPPRESS_GRAYOUT_ENDIF
+
+#if DISPLAY_TPM_SETUP_ERROR == 1
+ suppressif ideqval SETUP_DATA.TpmError == 0;
+ text
+ help = STRING_TOKEN(STR_EMPTY),
+ text = STRING_TOKEN(STR_TPM_SETUP_ERROR),
+ text = STRING_TOKEN(STR_EMPTY),
+ flags = 0,
+ key = 0;
+ endif;
+#endif
+ endform;
+ #endif // #ifndef TCG_FORM_TCG
+
+#ifdef FORM_SET_FORM
+
+ #ifndef TCG20_FORM_TCG
+ #define TCG20_FORM_TCG
+
+ // Define forms
+ form formid = AUTO_ID(TCG20_FORM_ID),
+ title = STRING_TOKEN(STR_TCG_FORM);
+
+ SEPARATOR
+ SEPARATOR
+
+ TCG_ONEOF_TPMSUPPORT
+
+ SEPARATOR
+
+ SUBTITLE(STRING_TOKEN(STR_TPM_20_DEVICE))
+
+ grayoutif ideqval SETUP_DATA.CsmLaunchPolicy == 1;
+ TCG_ONEOF_HASHPOLICY
+ endif;
+
+ endform;
+ #endif
+#endif //end TCG20_FORM
+
+ #endif
+#endif // ADVANCED_FORM_SET
+//**********************************************************************
+//**********************************************************************
+//** **
+//** (C)Copyright 1985-2010, American Megatrends, Inc. **
+//** **
+//** All Rights Reserved. **
+//** **
+//** 5555 Oakbrook Pkwy, Suite 200, Norcross, GA 30093 **
+//** **
+//** Phone: (770)-246-8600 **
+//** **
+//**********************************************************************
+//**********************************************************************