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

Go to the source code of this file.

Data Structures

struct  HII_VENDOR_DEVICE_PATH
 
struct  BOOT_MANAGER_CALLBACK_DATA
 

Macros

#define BOOT_MANAGER_FORMSET_GUID
 
#define BOOT_MANAGER_FORM_ID   0x1000
 
#define LABEL_BOOT_OPTION   0x00
 
#define LABEL_BOOT_OPTION_END   0x01
 
#define MAX_STRING_LEN   200
 
#define VAR_FLAG   EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_NON_VOLATILE
 
#define BOOT_MANAGER_CALLBACK_DATA_SIGNATURE   SIGNATURE_32 ('B', 'M', 'C', 'B')
 

Functions

EFI_STATUS EFIAPI BootManagerCallback (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)
 
EFI_STATUS EFIAPI BootManagerExtractConfig (IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL *This, IN CONST EFI_STRING Request, OUT EFI_STRING *Progress, OUT EFI_STRING *Results)
 
EFI_STATUS EFIAPI BootManagerRouteConfig (IN CONST EFI_HII_CONFIG_ACCESS_PROTOCOL *This, IN CONST EFI_STRING Configuration, OUT EFI_STRING *Progress)
 

Variables

UINT8 BootManagerVfrBin []
 

Detailed Description

The boot manager reference implementation

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

Definition in file BootManager.h.

Macro Definition Documentation

◆ BOOT_MANAGER_CALLBACK_DATA_SIGNATURE

#define BOOT_MANAGER_CALLBACK_DATA_SIGNATURE   SIGNATURE_32 ('B', 'M', 'C', 'B')

Definition at line 65 of file BootManager.h.

◆ BOOT_MANAGER_FORM_ID

#define BOOT_MANAGER_FORM_ID   0x1000

Definition at line 49 of file BootManager.h.

◆ BOOT_MANAGER_FORMSET_GUID

#define BOOT_MANAGER_FORMSET_GUID
Value:
{ \
0x847bc3fe, 0xb974, 0x446d, {0x94, 0x49, 0x5a, 0xd5, 0x41, 0x2e, 0x99, 0x3b} \
}

Definition at line 44 of file BootManager.h.

◆ LABEL_BOOT_OPTION

#define LABEL_BOOT_OPTION   0x00

Definition at line 51 of file BootManager.h.

◆ LABEL_BOOT_OPTION_END

#define LABEL_BOOT_OPTION_END   0x01

Definition at line 52 of file BootManager.h.

◆ MAX_STRING_LEN

#define MAX_STRING_LEN   200

Definition at line 53 of file BootManager.h.

◆ VAR_FLAG

#define VAR_FLAG   EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_NON_VOLATILE

Definition at line 58 of file BootManager.h.

Function Documentation

◆ BootManagerCallback()

EFI_STATUS EFIAPI BootManagerCallback ( 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 call back function is registered with Boot Manager formset. When user selects a boot option, this call back function will be triggered. The boot option is saved for later processing.

Parameters
ThisPoints to the EFI_HII_CONFIG_ACCESS_PROTOCOL.
ActionSpecifies the type of action taken by the browser.
QuestionIdA unique value which is sent to the original exporting driver so that it can identify the type of data to expect.
TypeThe type of value for the question.
ValueA pointer to the data being sent to the original exporting driver.
ActionRequestOn return, points to the action requested by the callback function.
Return values
EFI_SUCCESSThe callback successfully handled the action.
EFI_INVALID_PARAMETERThe setup browser call this function with invalid parameters.

Definition at line 789 of file BootManager.c.

◆ BootManagerExtractConfig()

EFI_STATUS EFIAPI BootManagerExtractConfig ( 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
This- Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL.
Request- A null-terminated Unicode string in <ConfigRequest> format.
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.
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.
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 NULL, illegal syntax, or unknown name.
EFI_NOT_FOUNDRouting data doesn't match any storage in this driver.

This function allows a caller to extract the current configuration for one or more named elements from the target driver.

Parameters
ThisPoints to the EFI_HII_CONFIG_ACCESS_PROTOCOL.
RequestA null-terminated Unicode string in <ConfigRequest> format.
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.
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 650 of file BootManager.c.

◆ BootManagerRouteConfig()

EFI_STATUS EFIAPI BootManagerRouteConfig ( 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
This- Points to the EFI_HII_CONFIG_ACCESS_PROTOCOL.
Configuration- A null-terminated Unicode string in <ConfigResp> format.
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.
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.

This function processes the results of changes in configuration.

Parameters
ThisPoints to the EFI_HII_CONFIG_ACCESS_PROTOCOL.
ConfigurationA null-terminated Unicode string in <ConfigResp> format.
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 683 of file BootManager.c.