DynamicTablesPkg: Table Helper Library
A helper library that implements common functionality for use by table generators. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Sami Mujawar <sami.mujawar@arm.com> Reviewed-by: Alexei Fedorov <alexei.fedorov@arm.com>
This commit is contained in:
68
DynamicTablesPkg/Include/Library/TableHelperLib.h
Normal file
68
DynamicTablesPkg/Include/Library/TableHelperLib.h
Normal file
@@ -0,0 +1,68 @@
|
||||
/** @file
|
||||
|
||||
Copyright (c) 2017 - 2019, ARM Limited. All rights reserved.
|
||||
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
http://opensource.org/licenses/bsd-license.php
|
||||
|
||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||
|
||||
**/
|
||||
|
||||
#ifndef TABLE_HELPER_LIB_H_
|
||||
#define TABLE_HELPER_LIB_H_
|
||||
|
||||
/** The GetCgfMgrInfo function gets the CM_STD_OBJ_CONFIGURATION_MANAGER_INFO
|
||||
object from the Configuration Manager.
|
||||
|
||||
@param [in] CfgMgrProtocol Pointer to the Configuration Manager protocol
|
||||
interface.
|
||||
@param [out] CfgMfrInfo Pointer to the Configuration Manager Info
|
||||
object structure.
|
||||
|
||||
@retval EFI_SUCCESS The object is returned.
|
||||
@retval EFI_INVALID_PARAMETER The Object ID is invalid.
|
||||
@retval EFI_NOT_FOUND The requested Object is not found.
|
||||
@retval EFI_BAD_BUFFER_SIZE The size returned by the Configuration
|
||||
Manager is less than the Object size.
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
GetCgfMgrInfo (
|
||||
IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL * CONST CfgMgrProtocol,
|
||||
OUT CM_STD_OBJ_CONFIGURATION_MANAGER_INFO ** CfgMfrInfo
|
||||
);
|
||||
|
||||
/** The AddAcpiHeader function updates the ACPI header structure. It uses the
|
||||
ACPI table Generator and the Configuration Manager protocol to obtain the
|
||||
information required for constructing the header.
|
||||
|
||||
@param [in] CfgMgrProtocol Pointer to the Configuration Manager
|
||||
protocol interface.
|
||||
@param [in] Generator Pointer to the ACPI table Generator.
|
||||
@param [in,out] AcpiHeader Pointer to the ACPI table header to be
|
||||
updated.
|
||||
@param [in] Revision Revision of the ACPI table.
|
||||
@param [in] Length Length of the ACPI table.
|
||||
|
||||
@retval EFI_SUCCESS The ACPI table is updated successfully.
|
||||
@retval EFI_INVALID_PARAMETER A parameter is invalid.
|
||||
@retval EFI_NOT_FOUND The required object information is not found.
|
||||
@retval EFI_BAD_BUFFER_SIZE The size returned by the Configuration
|
||||
Manager is less than the Object size for the
|
||||
requested object.
|
||||
**/
|
||||
EFI_STATUS
|
||||
EFIAPI
|
||||
AddAcpiHeader (
|
||||
IN CONST EDKII_CONFIGURATION_MANAGER_PROTOCOL * CONST CfgMgrProtocol,
|
||||
IN CONST ACPI_TABLE_GENERATOR * CONST Generator,
|
||||
IN OUT EFI_ACPI_DESCRIPTION_HEADER * CONST AcpiHeader,
|
||||
IN CONST UINT32 Revision,
|
||||
IN CONST UINT32 Length
|
||||
);
|
||||
|
||||
#endif // TABLE_HELPER_LIB_H_
|
Reference in New Issue
Block a user