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

Go to the source code of this file.

Data Structures

struct  _ESRT_MANAGEMENT_PROTOCOL
 

Macros

#define ESRT_MANAGEMENT_PROTOCOL_GUID
 

Typedefs

typedef struct _ESRT_MANAGEMENT_PROTOCOL ESRT_MANAGEMENT_PROTOCOL
 
typedef EFI_STATUS(EFIAPI * GET_ESRT_ENTRY) (IN EFI_GUID *FwClass, IN OUT EFI_SYSTEM_RESOURCE_ENTRY *Entry)
 
typedef EFI_STATUS(EFIAPI * UPDATE_ESRT_ENTRY) (IN EFI_SYSTEM_RESOURCE_ENTRY *Entry)
 
typedef EFI_STATUS(EFIAPI * UNREGISTER_ESRT_ENTRY) (IN EFI_GUID *FwClass)
 
typedef EFI_STATUS(EFIAPI * REGISTER_ESRT_ENTRY) (IN EFI_SYSTEM_RESOURCE_ENTRY *Entry)
 
typedef EFI_STATUS(EFIAPI * SYNC_ESRT_FMP) (VOID)
 
typedef EFI_STATUS(EFIAPI * LOCK_ESRT_REPOSITORY) (VOID)
 

Variables

EFI_GUID gEsrtManagementProtocolGuid
 

Detailed Description

The Esrt Management Protocol used to register/set/update an updatable firmware resource .

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

Definition in file EsrtManagement.h.

Macro Definition Documentation

◆ ESRT_MANAGEMENT_PROTOCOL_GUID

#define ESRT_MANAGEMENT_PROTOCOL_GUID
Value:
{ \
0xa340c064, 0x723c, 0x4a9c, { 0xa4, 0xdd, 0xd5, 0xb4, 0x7a, 0x26, 0xfb, 0xb0 } \
}

Global ID for the ESRT_MANAGEMENT_PROTOCOL.

Definition at line 17 of file EsrtManagement.h.

Typedef Documentation

◆ ESRT_MANAGEMENT_PROTOCOL

Forward declaration for the _ESRT_MANAGEMENT_PROTOCOL.

Definition at line 25 of file EsrtManagement.h.

◆ GET_ESRT_ENTRY

typedef EFI_STATUS(EFIAPI * GET_ESRT_ENTRY) (IN EFI_GUID *FwClass, IN OUT EFI_SYSTEM_RESOURCE_ENTRY *Entry)

Get Variable name and data by Esrt Entry FwClass

Parameters
[in]FwClassFwClass of Esrt entry to get
[in,out]EntryEsrt entry returned
Return values
EFI_SUCCESSThe variable saving this Esrt Entry exists.
EF_NOT_FOUNDNo correct variable found.

Definition at line 38 of file EsrtManagement.h.

◆ LOCK_ESRT_REPOSITORY

typedef EFI_STATUS(EFIAPI * LOCK_ESRT_REPOSITORY) (VOID)

This function locks up Esrt repository to be readonly. It should be called before gEfiEndOfDxeEventGroupGuid event signaled

Return values
EFI_SUCCESSLocks up FMP Non-FMP repository successfully

Definition at line 115 of file EsrtManagement.h.

◆ REGISTER_ESRT_ENTRY

typedef EFI_STATUS(EFIAPI * REGISTER_ESRT_ENTRY) (IN EFI_SYSTEM_RESOURCE_ENTRY *Entry)

Non-FMP instance to register one ESRT entry into ESRT Cache.

Parameters
[in]EntryEsrt entry to be set
Return values
EFI_SUCCESSSuccessfully set a variable.
EFI_INVALID_PARAMETERESRT Entry is already exist
EFI_OUT_OF_RESOURCESNon-FMP ESRT repository is full

Definition at line 86 of file EsrtManagement.h.

◆ SYNC_ESRT_FMP

typedef EFI_STATUS(EFIAPI * SYNC_ESRT_FMP) (VOID)

This function syn up Cached ESRT with data from FMP instances Function should be called after Connect All in order to locate all FMP protocols installed

Return values
EFI_SUCCESSSuccessfully sync cache repository from FMP instances
EFI_NOT_FOUNDNo FMP Instance are found
EFI_OUT_OF_RESOURCESResource allocaton fail

Definition at line 102 of file EsrtManagement.h.

◆ UNREGISTER_ESRT_ENTRY

typedef EFI_STATUS(EFIAPI * UNREGISTER_ESRT_ENTRY) (IN EFI_GUID *FwClass)

Non-FMP instance to unregister Esrt Entry from ESRT Cache.

Parameters
[in]FwClassFwClass of Esrt entry to Unregister
Return values
EFI_SUCCESSInsert all entries Successfully
EFI_NOT_FOUNDFwClass does not exsit

Definition at line 70 of file EsrtManagement.h.

◆ UPDATE_ESRT_ENTRY

typedef EFI_STATUS(EFIAPI * UPDATE_ESRT_ENTRY) (IN EFI_SYSTEM_RESOURCE_ENTRY *Entry)

Update one ESRT entry in ESRT Cache.

Parameters
[in]EntryEsrt entry to be updated
Return values
EFI_SUCCESSSuccessfully update an ESRT entry in cache.
EFI_INVALID_PARAMETEREntry does't exist in ESRT Cache
EFI_WRITE_PROTECTEDESRT Cache repositoy is locked

Definition at line 55 of file EsrtManagement.h.