TianoCore EDK2 master
Loading...
Searching...
No Matches
CmObjectTokenFixer.c File Reference

Go to the source code of this file.

Functions

STATIC EFI_STATUS EFIAPI TokenFixerNotImplemented (IN CM_OBJ_DESCRIPTOR *CmObject, IN CM_OBJECT_TOKEN Token)
 
STATIC EFI_STATUS EFIAPI TokenFixerItsGroup (IN CM_OBJ_DESCRIPTOR *CmObject, IN CM_OBJECT_TOKEN Token)
 
STATIC EFI_STATUS EFIAPI TokenFixerNamedComponentNode (IN CM_OBJ_DESCRIPTOR *CmObject, IN CM_OBJECT_TOKEN Token)
 
STATIC EFI_STATUS EFIAPI TokenFixerRootComplexNode (IN CM_OBJ_DESCRIPTOR *CmObject, IN CM_OBJECT_TOKEN Token)
 
STATIC EFI_STATUS EFIAPI TokenFixerSmmuV3Node (IN CM_OBJ_DESCRIPTOR *CmObject, IN CM_OBJECT_TOKEN Token)
 
EFI_STATUS EFIAPI FixupCmObjectSelfToken (IN CM_OBJ_DESCRIPTOR *CmObjDesc, IN CM_OBJECT_TOKEN Token)
 

Variables

CONST CM_OBJECT_TOKEN_FIXER TokenFixer [EArmObjMax]
 

Detailed Description

Configuration Manager object token fixer

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 CmObjectTokenFixer.c.

Function Documentation

◆ FixupCmObjectSelfToken()

EFI_STATUS EFIAPI FixupCmObjectSelfToken ( IN CM_OBJ_DESCRIPTOR CmObjDesc,
IN CM_OBJECT_TOKEN  Token 
)

CmObj token fixer.

Some CmObj structures have a self-token, i.e. they are storing their own token value in the CmObj. Dynamically created CmObj need to have their self-token assigned at some point.

Parameters
[in]CmObjDescPointer to the Configuration Manager Object.
[in]TokenToken to update the CmObjDesc with.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_UNSUPPORTEDNot supported.

Definition at line 187 of file CmObjectTokenFixer.c.

◆ TokenFixerItsGroup()

STATIC EFI_STATUS EFIAPI TokenFixerItsGroup ( IN CM_OBJ_DESCRIPTOR CmObject,
IN CM_OBJECT_TOKEN  Token 
)

EArmObjItsGroup token fixer.

CmObjectToken fixer function that updates the Tokens in the CmObjects.

Parameters
[in]CmObjectPointer to the Configuration Manager Object.
[in]TokenToken to be updated in the CmObject.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_UNSUPPORTEDNot supported.

Definition at line 57 of file CmObjectTokenFixer.c.

◆ TokenFixerNamedComponentNode()

STATIC EFI_STATUS EFIAPI TokenFixerNamedComponentNode ( IN CM_OBJ_DESCRIPTOR CmObject,
IN CM_OBJECT_TOKEN  Token 
)

EArmObjNamedComponent token fixer.

CmObjectToken fixer function that updates the Tokens in the CmObjects.

Parameters
[in]CmObjectPointer to the Configuration Manager Object.
[in]TokenToken to be updated in the CmObject.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_UNSUPPORTEDNot supported.

Definition at line 81 of file CmObjectTokenFixer.c.

◆ TokenFixerNotImplemented()

STATIC EFI_STATUS EFIAPI TokenFixerNotImplemented ( IN CM_OBJ_DESCRIPTOR CmObject,
IN CM_OBJECT_TOKEN  Token 
)

Token fixer not implemented.

Most of the objects are not generated by this parser. Add the missing functions when needed.

CmObjectToken fixer function that updates the Tokens in the CmObjects.

Parameters
[in]CmObjectPointer to the Configuration Manager Object.
[in]TokenToken to be updated in the CmObject.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_UNSUPPORTEDNot supported.

Definition at line 34 of file CmObjectTokenFixer.c.

◆ TokenFixerRootComplexNode()

STATIC EFI_STATUS EFIAPI TokenFixerRootComplexNode ( IN CM_OBJ_DESCRIPTOR CmObject,
IN CM_OBJECT_TOKEN  Token 
)

EArmObjRootComplex token fixer.

CmObjectToken fixer function that updates the Tokens in the CmObjects.

Parameters
[in]CmObjectPointer to the Configuration Manager Object.
[in]TokenToken to be updated in the CmObject.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_UNSUPPORTEDNot supported.

Definition at line 105 of file CmObjectTokenFixer.c.

◆ TokenFixerSmmuV3Node()

STATIC EFI_STATUS EFIAPI TokenFixerSmmuV3Node ( IN CM_OBJ_DESCRIPTOR CmObject,
IN CM_OBJECT_TOKEN  Token 
)

EArmObjSmmuV3 token fixer.

CmObjectToken fixer function that updates the Tokens in the CmObjects.

Parameters
[in]CmObjectPointer to the Configuration Manager Object.
[in]TokenToken to be updated in the CmObject.
Return values
EFI_SUCCESSSuccess.
EFI_INVALID_PARAMETERA parameter is invalid.
EFI_UNSUPPORTEDNot supported.

Definition at line 129 of file CmObjectTokenFixer.c.

Variable Documentation

◆ TokenFixer

CONST CM_OBJECT_TOKEN_FIXER TokenFixer[EArmObjMax]
Initial value:
= {
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
}
STATIC EFI_STATUS EFIAPI TokenFixerRootComplexNode(IN CM_OBJ_DESCRIPTOR *CmObject, IN CM_OBJECT_TOKEN Token)
STATIC EFI_STATUS EFIAPI TokenFixerItsGroup(IN CM_OBJ_DESCRIPTOR *CmObject, IN CM_OBJECT_TOKEN Token)
STATIC EFI_STATUS EFIAPI TokenFixerNamedComponentNode(IN CM_OBJ_DESCRIPTOR *CmObject, IN CM_OBJECT_TOKEN Token)
STATIC EFI_STATUS EFIAPI TokenFixerSmmuV3Node(IN CM_OBJ_DESCRIPTOR *CmObject, IN CM_OBJECT_TOKEN Token)
STATIC EFI_STATUS EFIAPI TokenFixerNotImplemented(IN CM_OBJ_DESCRIPTOR *CmObject, IN CM_OBJECT_TOKEN Token)
#define NULL
Definition: Base.h:319

TokenFixer functions table.

A CmObj having a CM_OBJECT_TOKEN field might need to have its Token fixed. Each CmObj can have its Token in a specific way.

Definition at line 145 of file CmObjectTokenFixer.c.