TianoCore EDK2 master
Loading...
Searching...
No Matches
Tcg2ConfigImpl.h File Reference

Go to the source code of this file.

Data Structures

struct  HII_VENDOR_DEVICE_PATH
 
struct  TCG2_CONFIG_PRIVATE_DATA
 

Macros

#define TCG2_PROTOCOL_VERSION_DEFAULT   0x0001
 
#define TCG2_CONFIG_PRIVATE_DATA_SIGNATURE   SIGNATURE_32 ('T', 'r', 'E', 'D')
 
#define TCG2_CONFIG_PRIVATE_DATA_FROM_THIS(a)   CR (a, TCG2_CONFIG_PRIVATE_DATA, ConfigAccess, TCG2_CONFIG_PRIVATE_DATA_SIGNATURE)
 
#define TPM_HID_PNP_SIZE   8
 
#define TPM_HID_ACPI_SIZE   9
 

Functions

EFI_STATUS InstallTcg2ConfigForm (IN OUT TCG2_CONFIG_PRIVATE_DATA *PrivateData)
 
VOID UninstallTcg2ConfigForm (IN OUT TCG2_CONFIG_PRIVATE_DATA *PrivateData)
 
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 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)
 

Variables

UINT8 Tcg2ConfigBin []
 
UINT8 Tcg2ConfigDxeStrings []
 
TCG2_CONFIG_PRIVATE_DATA mTcg2ConfigPrivateDateTemplate
 
TCG2_CONFIG_PRIVATE_DATAmTcg2ConfigPrivateDate
 

Detailed Description

The header file of HII Config Access protocol implementation of TCG2 configuration module.

Copyright (c) 2015 - 2018, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent

Definition in file Tcg2ConfigImpl.h.

Macro Definition Documentation

◆ TCG2_CONFIG_PRIVATE_DATA_FROM_THIS

#define TCG2_CONFIG_PRIVATE_DATA_FROM_THIS (   a)    CR (a, TCG2_CONFIG_PRIVATE_DATA, ConfigAccess, TCG2_CONFIG_PRIVATE_DATA_SIGNATURE)

Definition at line 73 of file Tcg2ConfigImpl.h.

◆ TCG2_CONFIG_PRIVATE_DATA_SIGNATURE

#define TCG2_CONFIG_PRIVATE_DATA_SIGNATURE   SIGNATURE_32 ('T', 'r', 'E', 'D')

Definition at line 72 of file Tcg2ConfigImpl.h.

◆ TCG2_PROTOCOL_VERSION_DEFAULT

#define TCG2_PROTOCOL_VERSION_DEFAULT   0x0001

Definition at line 41 of file Tcg2ConfigImpl.h.

◆ TPM_HID_ACPI_SIZE

#define TPM_HID_ACPI_SIZE   9

Definition at line 76 of file Tcg2ConfigImpl.h.

◆ TPM_HID_PNP_SIZE

#define TPM_HID_PNP_SIZE   8

Definition at line 75 of file Tcg2ConfigImpl.h.

Function Documentation

◆ InstallTcg2ConfigForm()

EFI_STATUS InstallTcg2ConfigForm ( IN OUT TCG2_CONFIG_PRIVATE_DATA PrivateData)

This function publish the TCG2 configuration Form for TPM device.

Parameters
[in,out]PrivateDataPoints to TCG2 configuration private data.
Return values
EFI_SUCCESSHII Form is installed for this network device.
EFI_OUT_OF_RESOURCESNot enough resource for HII Form installation.
OthersOther errors as indicated.

Definition at line 825 of file Tcg2ConfigImpl.c.

◆ 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.

Parameters
[in]ThisPoints to the EFI_HII_CONFIG_ACCESS_PROTOCOL.
[in]ActionSpecifies the type of action taken by the browser.
[in]QuestionIdA unique value which is sent to the original exporting driver so that it can identify the type of data to expect.
[in]TypeThe type of value for the question.
[in]ValueA pointer to the data being sent to the original exporting driver.
[out]ActionRequestOn return, points to the action requested by the callback function.
Return values
EFI_SUCCESSThe callback successfully handled the action.
EFI_OUT_OF_RESOURCESNot enough storage is available to hold the variable and its data.
EFI_DEVICE_ERRORThe variable could not be saved.
EFI_UNSUPPORTEDThe specified Action is not supported by the callback.

Definition at line 529 of file Tcg2ConfigImpl.c.

◆ Tcg2ExtractConfig()

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.

Parameters
[in]ThisPoints to the EFI_HII_CONFIG_ACCESS_PROTOCOL.
[in]RequestA null-terminated Unicode string in <ConfigRequest> format.
[out]ProgressOn 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]ResultsA 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.
Return values
EFI_SUCCESSThe Results is filled with the requested values.
EFI_OUT_OF_RESOURCESNot enough memory to store the results.
EFI_INVALID_PARAMETERRequest is illegal syntax, or unknown name.
EFI_NOT_FOUNDRouting data doesn't match any storage in this driver.

Definition at line 202 of file Tcg2ConfigImpl.c.

◆ Tcg2RouteConfig()

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.

Parameters
[in]ThisPoints to the EFI_HII_CONFIG_ACCESS_PROTOCOL.
[in]ConfigurationA null-terminated Unicode string in <ConfigResp> format.
[out]ProgressA 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.
Return values
EFI_SUCCESSThe Results is processed successfully.
EFI_INVALID_PARAMETERConfiguration is NULL.
EFI_NOT_FOUNDRouting data doesn't match any storage in this driver.

Definition at line 339 of file Tcg2ConfigImpl.c.

◆ UninstallTcg2ConfigForm()

VOID UninstallTcg2ConfigForm ( IN OUT TCG2_CONFIG_PRIVATE_DATA PrivateData)

This function removes TCG2 configuration Form.

Parameters
[in,out]PrivateDataPoints to TCG2 configuration private data.

Definition at line 1034 of file Tcg2ConfigImpl.c.

Variable Documentation

◆ mTcg2ConfigPrivateDate

TCG2_CONFIG_PRIVATE_DATA* mTcg2ConfigPrivateDate
extern

Definition at line 25 of file Tcg2ConfigImpl.c.

◆ mTcg2ConfigPrivateDateTemplate

TCG2_CONFIG_PRIVATE_DATA mTcg2ConfigPrivateDateTemplate
extern

Definition at line 26 of file Tcg2ConfigImpl.c.