Defines | |
#define | EFI_TCG2_EVENT_LOG_FORMAT_ALL (EFI_TCG2_EVENT_LOG_FORMAT_TCG_1_2 | EFI_TCG2_EVENT_LOG_FORMAT_TCG_2) |
Functions | |
EFI_STATUS EFIAPI | Tcg2ExtractConfig (IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL *This, IN CONST EFI_STRING Request, OUT EFI_STRING *Progress, OUT EFI_STRING *Results) |
EFI_STATUS | SaveTcg2PpRequest (IN UINT8 PpRequest) |
EFI_STATUS | SaveTcg2PpRequestParameter (IN UINT32 PpRequestParameter) |
EFI_STATUS | SaveTcg2PCRBanksRequest (IN UINTN PCRBankIndex, IN BOOLEAN Enable) |
EFI_STATUS EFIAPI | Tcg2RouteConfig (IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL *This, IN CONST EFI_STRING Configuration, OUT EFI_STRING *Progress) |
EFI_STATUS EFIAPI | Tcg2Callback (IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL *This, IN EFI_BROWSER_ACTION Action, IN EFI_QUESTION_ID QuestionId, IN UINT8 Type, IN EFI_IFR_TYPE_VALUE *Value, OUT EFI_BROWSER_ACTION_REQUEST *ActionRequest) |
VOID | AppendBufferWithTpmAlgHash (IN UINT16 *Buffer, IN UINTN BufferSize, IN UINT32 TpmAlgHash) |
VOID | FillBufferWithBootHashAlg (IN UINT16 *Buffer, IN UINTN BufferSize, IN UINT32 BootHashAlg) |
VOID | FillBufferWithTCG2EventLogFormat (IN UINT16 *Buffer, IN UINTN BufferSize, IN UINT32 TCG2EventLogFormat) |
BOOLEAN | IsZeroBuffer (IN VOID *Buffer, IN UINTN BufferSize) |
EFI_STATUS | InstallTcg2ConfigForm (IN OUT TCG2_CONFIG_PRIVATE_DATA *PrivateData) |
VOID | UninstallTcg2ConfigForm (IN OUT TCG2_CONFIG_PRIVATE_DATA *PrivateData) |
Variables | |
TPM_INSTANCE_ID | mTpmInstanceId [TPM_DEVICE_MAX+1] = TPM_INSTANCE_ID_LIST |
TCG2_CONFIG_PRIVATE_DATA * | mTcg2ConfigPrivateDate |
TCG2_CONFIG_PRIVATE_DATA | mTcg2ConfigPrivateDateTemplate |
HII_VENDOR_DEVICE_PATH | mTcg2HiiVendorDevicePath |
UINT8 | mCurrentPpRequest |
Copyright (c) 2015, Intel 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.
#define EFI_TCG2_EVENT_LOG_FORMAT_ALL (EFI_TCG2_EVENT_LOG_FORMAT_TCG_1_2 | EFI_TCG2_EVENT_LOG_FORMAT_TCG_2) |
Referenced by FillBufferWithTCG2EventLogFormat().
VOID AppendBufferWithTpmAlgHash | ( | IN UINT16 * | Buffer, | |
IN UINTN | BufferSize, | |||
IN UINT32 | TpmAlgHash | |||
) |
Append Buffer With TpmAlgHash.
[in] | Buffer | Buffer to be appended. |
[in] | BufferSize | Size of buffer. |
[in] | TpmAlgHash | TpmAlgHash. |
Referenced by InstallTcg2ConfigForm().
VOID FillBufferWithBootHashAlg | ( | IN UINT16 * | Buffer, | |
IN UINTN | BufferSize, | |||
IN UINT32 | BootHashAlg | |||
) |
Fill Buffer With BootHashAlg.
[in] | Buffer | Buffer to be filled. |
[in] | BufferSize | Size of buffer. |
[in] | BootHashAlg | BootHashAlg. |
Referenced by InstallTcg2ConfigForm().
VOID FillBufferWithTCG2EventLogFormat | ( | IN UINT16 * | Buffer, | |
IN UINTN | BufferSize, | |||
IN UINT32 | TCG2EventLogFormat | |||
) |
Fill Buffer With TCG2EventLogFormat.
[in] | Buffer | Buffer to be filled. |
[in] | BufferSize | Size of buffer. |
[in] | TCG2EventLogFormat | TCG2EventLogFormat. |
References EFI_TCG2_EVENT_LOG_FORMAT_ALL, EFI_TCG2_EVENT_LOG_FORMAT_TCG_1_2, and EFI_TCG2_EVENT_LOG_FORMAT_TCG_2.
Referenced by InstallTcg2ConfigForm().
EFI_STATUS InstallTcg2ConfigForm | ( | IN OUT TCG2_CONFIG_PRIVATE_DATA * | PrivateData | ) |
This function publish the TCG2 configuration Form for TPM device.
[in,out] | PrivateData | Points to TCG2 configuration private data. |
EFI_SUCCESS | HII Form is installed for this network device. | |
EFI_OUT_OF_RESOURCES | Not enough resource for HII Form installation. | |
Others | Other errors as indicated. |
References AppendBufferWithTpmAlgHash(), EFI_STATUS(), FillBufferWithBootHashAlg(), FillBufferWithTCG2EventLogFormat(), gTcg2ConfigFormSetGuid, IsZeroBuffer(), Tcg2ConfigBin, Tcg2ConfigDxeStrings, Tpm2GetCapabilityPcrs(), TPM_DEVICE_1_2, TPM_DEVICE_2_0_DTPM, TPM_DEVICE_NULL, and UINTN().
Referenced by Tcg2ConfigDriverEntryPoint().
BOOLEAN IsZeroBuffer | ( | IN VOID * | Buffer, | |
IN UINTN | BufferSize | |||
) |
Check if buffer is all zero.
[in] | Buffer | Buffer to be checked. |
[in] | BufferSize | Size of buffer to be checked. |
TRUE | Buffer is all zero. | |
FALSE | Buffer is not all zero. |
Referenced by DriverEntry(), InstallTcg2ConfigForm(), and SetTpm2HashMask().
EFI_STATUS SaveTcg2PCRBanksRequest | ( | IN UINTN | PCRBankIndex, | |
IN BOOLEAN | Enable | |||
) |
Save Tcg2 PCR Banks request request to variable space.
[in] | PCRBankIndex | PCR Bank Index. |
[in] | Enable | Enable or disable this PCR Bank. |
EFI_SUCCESS | The operation is finished successfully. | |
Others | Other errors as indicated. |
References EFI_STATUS(), TCG2_CONFIG_PRIVATE_DATA::PCRBanksDesired, Tcg2PhysicalPresenceLibSubmitRequestToPreOSFunction(), TCG_PP_SUBMIT_REQUEST_TO_PREOS_GENERAL_FAILURE, TCG_PP_SUBMIT_REQUEST_TO_PREOS_NOT_IMPLEMENTED, and TCG_PP_SUBMIT_REQUEST_TO_PREOS_SUCCESS.
Referenced by Tcg2Callback().
EFI_STATUS SaveTcg2PpRequest | ( | IN UINT8 | PpRequest | ) |
Save TPM request to variable space.
[in] | PpRequest | Physical Presence request command. |
EFI_SUCCESS | The operation is finished successfully. | |
Others | Other errors as indicated. |
References EFI_STATUS(), Tcg2PhysicalPresenceLibSubmitRequestToPreOSFunction(), TCG_PP_SUBMIT_REQUEST_TO_PREOS_GENERAL_FAILURE, TCG_PP_SUBMIT_REQUEST_TO_PREOS_NOT_IMPLEMENTED, and TCG_PP_SUBMIT_REQUEST_TO_PREOS_SUCCESS.
Referenced by Tcg2Callback().
EFI_STATUS SaveTcg2PpRequestParameter | ( | IN UINT32 | PpRequestParameter | ) |
Save TPM request to variable space.
[in] | PpRequestParameter | Physical Presence request parameter. |
EFI_SUCCESS | The operation is finished successfully. | |
Others | Other errors as indicated. |
References EFI_STATUS(), Tcg2PhysicalPresenceLibSubmitRequestToPreOSFunction(), TCG_PP_SUBMIT_REQUEST_TO_PREOS_GENERAL_FAILURE, TCG_PP_SUBMIT_REQUEST_TO_PREOS_NOT_IMPLEMENTED, and TCG_PP_SUBMIT_REQUEST_TO_PREOS_SUCCESS.
Referenced by Tcg2Callback().
EFI_STATUS EFIAPI Tcg2Callback | ( | IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL * | This, | |
IN EFI_BROWSER_ACTION | Action, | |||
IN EFI_QUESTION_ID | QuestionId, | |||
IN UINT8 | Type, | |||
IN EFI_IFR_TYPE_VALUE * | Value, | |||
OUT EFI_BROWSER_ACTION_REQUEST * | ActionRequest | |||
) |
This function processes the results of changes in configuration.
[in] | This | Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL. |
[in] | Action | Specifies the type of action taken by the browser. |
[in] | QuestionId | A unique value which is sent to the original exporting driver so that it can identify the type of data to expect. |
[in] | Type | The type of value for the question. |
[in] | Value | A pointer to the data being sent to the original exporting driver. |
[out] | ActionRequest | On return, points to the action requested by the callback function. |
EFI_SUCCESS | The callback successfully handled the action. | |
EFI_OUT_OF_RESOURCES | Not enough storage is available to hold the variable and its data. | |
EFI_DEVICE_ERROR | The variable could not be saved. | |
EFI_UNSUPPORTED | The specified Action is not supported by the callback. |
References KEY_TPM2_OPERATION, KEY_TPM2_OPERATION_PARAMETER, KEY_TPM2_PCR_BANKS_REQUEST_0, KEY_TPM2_PCR_BANKS_REQUEST_4, KEY_TPM_DEVICE, SaveTcg2PCRBanksRequest(), SaveTcg2PpRequest(), and SaveTcg2PpRequestParameter().
EFI_STATUS EFIAPI Tcg2ExtractConfig | ( | IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL * | This, | |
IN CONST EFI_STRING | Request, | |||
OUT EFI_STRING * | Progress, | |||
OUT EFI_STRING * | Results | |||
) |
This function allows a caller to extract the current configuration for one or more named elements from the target driver.
[in] | This | Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL. |
[in] | Request | A null-terminated Unicode string in <ConfigRequest> format. |
[out] | Progress | On return, points to a character in the Request string. Points to the string's null terminator if request was successful. Points to the most recent '&' before the first failing name/value pair (or the beginning of the string if the failure is in the first name/value pair) if the request was not successful. |
[out] | Results | A null-terminated Unicode string in <ConfigAltResp> format which has all values filled in for the names in the Request string. String to be allocated by the called function. |
EFI_SUCCESS | The Results is filled with the requested values. | |
EFI_OUT_OF_RESOURCES | Not enough memory to store the results. | |
EFI_INVALID_PARAMETER | Request is illegal syntax, or unknown name. | |
EFI_NOT_FOUND | Routing data doesn't match any storage in this driver. |
EFI_STATUS EFIAPI Tcg2RouteConfig | ( | IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL * | This, | |
IN CONST EFI_STRING | Configuration, | |||
OUT EFI_STRING * | Progress | |||
) |
This function processes the results of changes in configuration.
[in] | This | Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL. |
[in] | Configuration | A null-terminated Unicode string in <ConfigResp> format. |
[out] | Progress | A pointer to a string filled in with the offset of the most recent '&' before the first failing name/value pair (or the beginning of the string if the failure is in the first name/value pair) or the terminating NULL if all was successful. |
EFI_SUCCESS | The Results is processed successfully. | |
EFI_INVALID_PARAMETER | Configuration is NULL. | |
EFI_NOT_FOUND | Routing data doesn't match any storage in this driver. |
VOID UninstallTcg2ConfigForm | ( | IN OUT TCG2_CONFIG_PRIVATE_DATA * | PrivateData | ) |
This function removes TCG2 configuration Form.
[in,out] | PrivateData | Points to TCG2 configuration private data. |
Referenced by Tcg2ConfigDriverEntryPoint(), and Tcg2ConfigDriverUnload().
UINT8 mCurrentPpRequest |
Initial value:
Referenced by Tcg2ConfigDriverEntryPoint().
Initial value:
{ { { HARDWARE_DEVICE_PATH, HW_VENDOR_DP, { (UINT8) (sizeof (VENDOR_DEVICE_PATH)), (UINT8) ((sizeof (VENDOR_DEVICE_PATH)) >> 8) } }, TCG2_CONFIG_FORM_SET_GUID }, { END_DEVICE_PATH_TYPE, END_ENTIRE_DEVICE_PATH_SUBTYPE, { (UINT8) (END_DEVICE_PATH_LENGTH), (UINT8) ((END_DEVICE_PATH_LENGTH) >> 8) } } }
TPM_INSTANCE_ID mTpmInstanceId[TPM_DEVICE_MAX+1] = TPM_INSTANCE_ID_LIST |