TianoCore EDK2 master
|
#include <IndustryStandard/DebugPort2Table.h>
#include <IndustryStandard/IoRemappingTable.h>
#include <IndustryStandard/MemoryMappedConfigurationSpaceAccessTable.h>
#include <IndustryStandard/SerialPortConsoleRedirectionTable.h>
#include <Library/BaseMemoryLib.h>
#include <Library/DebugLib.h>
#include <Library/DynamicPlatRepoLib.h>
#include <Library/HobLib.h>
#include <Library/HwInfoParserLib.h>
#include <Library/IoLib.h>
#include <Library/PcdLib.h>
#include <Library/TableHelperLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Protocol/AcpiTable.h>
#include <Protocol/ConfigurationManagerProtocol.h>
#include "ConfigurationManager.h"
Go to the source code of this file.
Variables | |
STATIC EDKII_PLATFORM_REPOSITORY_INFO | mKvmtoolPlatRepositoryInfo |
STATIC CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL | mKvmtoolPlatformConfigManagerProtocol |
Configuration Manager Dxe
Copyright (c) 2021 - 2022, Arm Limited. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file ConfigurationManager.c.
EFI_STATUS EFIAPI ArmKvmtoolPlatformGetObject | ( | IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST | This, |
IN CONST CM_OBJECT_ID | CmObjectId, | ||
IN CONST CM_OBJECT_TOKEN Token | OPTIONAL, | ||
IN OUT CM_OBJ_DESCRIPTOR *CONST | CmObject | ||
) |
The GetObject function defines the interface implemented by the Configuration Manager Protocol for returning the Configuration Manager Objects.
[in] | This | Pointer to the Configuration Manager Protocol. |
[in] | CmObjectId | The Configuration Manager Object ID. |
[in] | Token | An optional token identifying the object. If unused this must be CM_NULL_TOKEN. |
[in,out] | CmObject | Pointer to the Configuration Manager Object descriptor describing the requested Object. |
EFI_SUCCESS | Success. |
EFI_INVALID_PARAMETER | A parameter is invalid. |
EFI_NOT_FOUND | The required object information is not found. |
Definition at line 982 of file ConfigurationManager.c.
EFI_STATUS EFIAPI ArmKvmtoolPlatformSetObject | ( | IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST | This, |
IN CONST CM_OBJECT_ID | CmObjectId, | ||
IN CONST CM_OBJECT_TOKEN Token | OPTIONAL, | ||
IN CM_OBJ_DESCRIPTOR *CONST | CmObject | ||
) |
The SetObject function defines the interface implemented by the Configuration Manager Protocol for updating the Configuration Manager Objects.
[in] | This | Pointer to the Configuration Manager Protocol. |
[in] | CmObjectId | The Configuration Manager Object ID. |
[in] | Token | An optional token identifying the object. If unused this must be CM_NULL_TOKEN. |
[in] | CmObject | Pointer to the Configuration Manager Object descriptor describing the Object. |
EFI_UNSUPPORTED | This operation is not supported. |
Definition at line 1041 of file ConfigurationManager.c.
STATIC EFI_STATUS EFIAPI CleanupPlatformRepository | ( | IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST | This | ) |
Cleanup the platform configuration repository.
[in] | This | Pointer to the Configuration Manager Protocol. |
EFI_SUCCESS | Success |
EFI_INVALID_PARAMETER | A parameter is invalid. |
Definition at line 498 of file ConfigurationManager.c.
EFI_STATUS EFIAPI ConfigurationManagerDxeInitialize | ( | IN EFI_HANDLE | ImageHandle, |
IN EFI_SYSTEM_TABLE * | SystemTable | ||
) |
Entrypoint of Configuration Manager Dxe.
ImageHandle | |
SystemTable |
EFI_SUCCESS | |
EFI_LOAD_ERROR | |
EFI_OUT_OF_RESOURCES |
Definition at line 1075 of file ConfigurationManager.c.
EFI_STATUS EFIAPI ConfigurationManagerDxeUnloadImage | ( | IN EFI_HANDLE | ImageHandle | ) |
Unload function for this image.
ImageHandle | Handle for the image of this driver. |
EFI_SUCCESS | Driver unloaded successfully. |
other | Driver can not unloaded. |
Definition at line 1132 of file ConfigurationManager.c.
EFI_STATUS EFIAPI GetArchCommonNameSpaceObject | ( | IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST | This, |
IN CONST CM_OBJECT_ID | CmObjectId, | ||
IN CONST CM_OBJECT_TOKEN Token | OPTIONAL, | ||
IN OUT CM_OBJ_DESCRIPTOR *CONST | CmObject | ||
) |
Return an ArchCommon namespace object.
[in] | This | Pointer to the Configuration Manager Protocol. |
[in] | CmObjectId | The Configuration Manager Object ID. |
[in] | Token | An optional token identifying the object. If unused this must be CM_NULL_TOKEN. |
[in,out] | CmObject | Pointer to the Configuration Manager Object descriptor describing the requested Object. |
EFI_SUCCESS | Success. |
EFI_INVALID_PARAMETER | A parameter is invalid. |
EFI_NOT_FOUND | The required object information is not found. |
Definition at line 743 of file ConfigurationManager.c.
EFI_STATUS EFIAPI GetArmNameSpaceObject | ( | IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST | This, |
IN CONST CM_OBJECT_ID | CmObjectId, | ||
IN CONST CM_OBJECT_TOKEN Token | OPTIONAL, | ||
IN OUT CM_OBJ_DESCRIPTOR *CONST | CmObject | ||
) |
Return an ARM namespace object.
[in] | This | Pointer to the Configuration Manager Protocol. |
[in] | CmObjectId | The Configuration Manager Object ID. |
[in] | Token | An optional token identifying the object. If unused this must be CM_NULL_TOKEN. |
[in,out] | CmObject | Pointer to the Configuration Manager Object descriptor describing the requested Object. |
EFI_SUCCESS | Success. |
EFI_INVALID_PARAMETER | A parameter is invalid. |
EFI_NOT_FOUND | The required object information is not found. |
Definition at line 820 of file ConfigurationManager.c.
EFI_STATUS EFIAPI GetDeviceIdMappingArray | ( | IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST | This, |
IN CONST CM_OBJECT_ID | CmObjectId, | ||
IN CONST CM_OBJECT_TOKEN | Token, | ||
OUT CM_OBJ_DESCRIPTOR *CONST | CmObject | ||
) |
Return a device Id mapping array.
[in] | This | Pointer to the Configuration Manager Protocol. |
[in] | CmObjectId | The Configuration Manager Object ID. |
[in] | Token | A token for identifying the object |
[out] | CmObject | Pointer to the Configuration Manager Object descriptor describing the requested Object. |
EFI_SUCCESS | Success. |
EFI_INVALID_PARAMETER | A parameter is invalid. |
EFI_NOT_FOUND | The required object information is not found. |
Definition at line 397 of file ConfigurationManager.c.
EFI_STATUS EFIAPI GetItsIdentifierArray | ( | IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST | This, |
IN CONST CM_OBJECT_ID | CmObjectId, | ||
IN CONST CM_OBJECT_TOKEN | Token, | ||
OUT CM_OBJ_DESCRIPTOR *CONST | CmObject | ||
) |
Return an ITS identifier array.
[in] | This | Pointer to the Configuration Manager Protocol. |
[in] | CmObjectId | The Configuration Manager Object ID. |
[in] | Token | A token for identifying the object |
[out] | CmObject | Pointer to the Configuration Manager Object descriptor describing the requested Object. |
EFI_SUCCESS | Success. |
EFI_INVALID_PARAMETER | A parameter is invalid. |
EFI_NOT_FOUND | The required object information is not found. |
Definition at line 354 of file ConfigurationManager.c.
EFI_STATUS EFIAPI GetOemNameSpaceObject | ( | IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST | This, |
IN CONST CM_OBJECT_ID | CmObjectId, | ||
IN CONST CM_OBJECT_TOKEN Token | OPTIONAL, | ||
IN OUT CM_OBJ_DESCRIPTOR *CONST | CmObject | ||
) |
Return an OEM namespace object.
[in] | This | Pointer to the Configuration Manager Protocol. |
[in] | CmObjectId | The Configuration Manager Object ID. |
[in] | Token | An optional token identifying the object. If unused this must be CM_NULL_TOKEN. |
[in,out] | CmObject | Pointer to the Configuration Manager Object descriptor describing the requested Object. |
EFI_SUCCESS | Success. |
EFI_INVALID_PARAMETER | A parameter is invalid. |
EFI_NOT_FOUND | The required object information is not found. |
Definition at line 933 of file ConfigurationManager.c.
EFI_STATUS EFIAPI GetStandardNameSpaceObject | ( | IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST | This, |
IN CONST CM_OBJECT_ID | CmObjectId, | ||
IN CONST CM_OBJECT_TOKEN Token | OPTIONAL, | ||
IN OUT CM_OBJ_DESCRIPTOR *CONST | CmObject | ||
) |
Return a standard namespace object.
[in] | This | Pointer to the Configuration Manager Protocol. |
[in] | CmObjectId | The Configuration Manager Object ID. |
[in] | Token | An optional token identifying the object. If unused this must be CM_NULL_TOKEN. |
[in,out] | CmObject | Pointer to the Configuration Manager Object descriptor describing the requested Object. |
EFI_SUCCESS | Success. |
EFI_INVALID_PARAMETER | A parameter is invalid. |
EFI_NOT_FOUND | The required object information is not found. |
Definition at line 625 of file ConfigurationManager.c.
STATIC EFI_STATUS EFIAPI HandleCmObject | ( | IN CONST CM_OBJECT_ID | CmObjectId, |
IN VOID * | Object, | ||
IN CONST UINTN | ObjectSize, | ||
IN CONST UINTN | ObjectCount, | ||
IN OUT CM_OBJ_DESCRIPTOR *CONST | CmObjectDesc | ||
) |
A helper function for returning the Configuration Manager Objects.
[in] | CmObjectId | The Configuration Manager Object ID. |
[in] | Object | Pointer to the Object(s). |
[in] | ObjectSize | Total size of the Object(s). |
[in] | ObjectCount | Number of Objects. |
[in,out] | CmObjectDesc | Pointer to the Configuration Manager Object descriptor describing the requested Object. |
EFI_SUCCESS | Success. |
Definition at line 257 of file ConfigurationManager.c.
STATIC EFI_STATUS EFIAPI HandleCmObjectRefByToken | ( | IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST | This, |
IN CONST CM_OBJECT_ID | CmObjectId, | ||
IN VOID * | Object, | ||
IN CONST UINTN | ObjectSize, | ||
IN CONST UINTN | ObjectCount, | ||
IN CONST CM_OBJECT_TOKEN | Token, | ||
IN CONST CM_OBJECT_HANDLER_PROC | HandlerProc, | ||
IN OUT CM_OBJ_DESCRIPTOR *CONST | CmObjectDesc | ||
) |
A helper function for returning the Configuration Manager Objects that match the token.
[in] | This | Pointer to the Configuration Manager Protocol. |
[in] | CmObjectId | The Configuration Manager Object ID. |
[in] | Object | Pointer to the Object(s). |
[in] | ObjectSize | Total size of the Object(s). |
[in] | ObjectCount | Number of Objects. |
[in] | Token | A token identifying the object. |
[in] | HandlerProc | A handler function to search the object referenced by the token. |
[in,out] | CmObjectDesc | Pointer to the Configuration Manager Object descriptor describing the requested Object. |
EFI_SUCCESS | Success. |
EFI_INVALID_PARAMETER | A parameter is invalid. |
EFI_NOT_FOUND | The required object information is not found. |
Definition at line 303 of file ConfigurationManager.c.
STATIC EFI_STATUS EFIAPI HwInfoAdd | ( | IN HW_INFO_PARSER_HANDLE | ParserHandle, |
IN VOID * | Context, | ||
IN CONST CM_OBJ_DESCRIPTOR * | CmObjDesc, | ||
OUT CM_OBJECT_TOKEN *Token | OPTIONAL | ||
) |
Function pointer called by the parser to add information.
Callback function that the parser can use to add new CmObj. This function must copy the CmObj data and not rely on the parser preserving the CmObj memory. This function is responsible of the Token allocation.
[in] | ParserHandle | A handle to the parser instance. |
[in] | Context | A pointer to the caller's context provided in HwInfoParserInit (). |
[in] | CmObjDesc | CM_OBJ_DESCRIPTOR containing the CmObj(s) to add. |
[out] | Token | If provided and success, contain the token generated for the CmObj. |
EFI_SUCCESS | The function completed successfully. |
EFI_INVALID_PARAMETER | Invalid parameter. |
Definition at line 446 of file ConfigurationManager.c.
STATIC EFI_STATUS EFIAPI InitializePlatformRepository | ( | IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL *CONST | This | ) |
Initialize the platform configuration repository.
[in] | This | Pointer to the Configuration Manager Protocol. |
EFI_SUCCESS | Success |
EFI_INVALID_PARAMETER | A parameter is invalid. |
EFI_OUT_OF_RESOURCES | An allocation has failed. |
Definition at line 544 of file ConfigurationManager.c.
STATIC CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL mKvmtoolPlatformConfigManagerProtocol |
Definition at line 1056 of file ConfigurationManager.c.
STATIC EDKII_PLATFORM_REPOSITORY_INFO mKvmtoolPlatRepositoryInfo |
Definition at line 35 of file ConfigurationManager.c.