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

Go to the source code of this file.

Typedefs

typedef VOID * DYNAMIC_PLATFORM_REPOSITORY_INFO
 

Functions

EFI_STATUS EFIAPI DynPlatRepoAddObject (IN DYNAMIC_PLATFORM_REPOSITORY_INFO *This, IN CONST CM_OBJ_DESCRIPTOR *CmObjDesc, OUT CM_OBJECT_TOKEN *Token OPTIONAL)
 
EFI_STATUS EFIAPI DynamicPlatRepoFinalise (IN DYNAMIC_PLATFORM_REPOSITORY_INFO *This)
 
EFI_STATUS EFIAPI DynamicPlatRepoGetObject (IN DYNAMIC_PLATFORM_REPOSITORY_INFO *This, IN CM_OBJECT_ID CmObjectId, IN CM_OBJECT_TOKEN Token OPTIONAL, IN OUT CM_OBJ_DESCRIPTOR *CmObjDesc)
 
EFI_STATUS EFIAPI DynamicPlatRepoInit (OUT DYNAMIC_PLATFORM_REPOSITORY_INFO **DynPlatRepo)
 
EFI_STATUS EFIAPI DynamicPlatRepoShutdown (IN DYNAMIC_PLATFORM_REPOSITORY_INFO *DynPlatRepo)
 

Detailed Description

Dynamic Platform Info Repository

Copyright (c) 2021, Arm Limited. All rights reserved.

SPDX-License-Identifier: BSD-2-Clause-Patent

Glossary:
  • Cm or CM - Configuration Manager
  • Obj or OBJ - Object

Definition in file DynamicPlatRepoLib.h.

Typedef Documentation

◆ DYNAMIC_PLATFORM_REPOSITORY_INFO

A structure describing the platform configuration manager repository information

Definition at line 21 of file DynamicPlatRepoLib.h.

Function Documentation

◆ DynamicPlatRepoFinalise()

EFI_STATUS EFIAPI DynamicPlatRepoFinalise ( IN DYNAMIC_PLATFORM_REPOSITORY_INFO This)

Finalise the dynamic repository.

Finalising means:

  • Preventing any further objects from being added.
  • Allowing to get objects from the dynamic repository (not possible before a call to this function).
Parameters
[in]ThisThis dynamic platform repository.
Return values
EFI_SUCCESSSuccess.
EFI_ALREADY_STARTEDInstance already initialised.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_BUFFER_TOO_SMALLBuffer too small.
EFI_OUT_OF_RESOURCESAn allocation has failed.

Definition at line 363 of file DynamicPlatRepo.c.

◆ DynamicPlatRepoGetObject()

EFI_STATUS EFIAPI DynamicPlatRepoGetObject ( IN DYNAMIC_PLATFORM_REPOSITORY_INFO This,
IN CM_OBJECT_ID  CmObjectId,
IN CM_OBJECT_TOKEN Token  OPTIONAL,
IN OUT CM_OBJ_DESCRIPTOR CmObjDesc 
)

Get a CmObj from the dynamic repository.

Parameters
[in]ThisPointer to the Dynamic Platform Repository.
[in]CmObjectIdThe Configuration Manager Object ID.
[in]TokenAn optional token identifying the object. If unused this must be CM_NULL_TOKEN.
[in,out]CmObjDescPointer to the Configuration Manager Object descriptor describing the requested Object.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_NOT_FOUNDThe required object information is not found.

Definition at line 431 of file DynamicPlatRepo.c.

◆ DynamicPlatRepoInit()

EFI_STATUS EFIAPI DynamicPlatRepoInit ( OUT DYNAMIC_PLATFORM_REPOSITORY_INFO **  DynPlatRepo)

Initialize the dynamic platform repository.

Parameters
[out]DynPlatRepoIf success, contains the initialised dynamic platform repository.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_OUT_OF_RESOURCESAn allocation has failed.

Definition at line 514 of file DynamicPlatRepo.c.

◆ DynamicPlatRepoShutdown()

EFI_STATUS EFIAPI DynamicPlatRepoShutdown ( IN DYNAMIC_PLATFORM_REPOSITORY_INFO DynPlatRepo)

Shutdown the dynamic platform repository.

Free all the memory allocated for the dynamic platform repository.

Parameters
[in]DynPlatRepoThe dynamic platform repository.
Return values
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_SUCCESSSuccess.

Definition at line 642 of file DynamicPlatRepo.c.

◆ DynPlatRepoAddObject()

EFI_STATUS EFIAPI DynPlatRepoAddObject ( IN DYNAMIC_PLATFORM_REPOSITORY_INFO This,
IN CONST CM_OBJ_DESCRIPTOR CmObjDesc,
OUT CM_OBJECT_TOKEN *Token  OPTIONAL 
)

Add an object to the dynamic platform repository.

Parameters
[in]ThisThis dynamic platform repository.
[in]CmObjDescCmObj to add. The data is copied.
[out]TokenIf not NULL, token allocated to this CmObj.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_OUT_OF_RESOURCESAn allocation has failed.

Definition at line 124 of file DynamicPlatRepo.c.