TianoCore EDK2 master
|
#include <Uefi/UefiBaseType.h>
#include <Library/BaseLib.h>
#include <Library/BaseMemoryLib.h>
#include <Library/DebugLib.h>
#include <Library/PcdLib.h>
#include <Library/IoLib.h>
#include <Library/BlParseLib.h>
#include <IndustryStandard/Acpi.h>
#include <Coreboot.h>
Go to the source code of this file.
Functions | |
UINT64 | cb_unpack64 (IN struct cbuint64 val) |
UINT16 | CbCheckSum16 (IN UINT16 *Buffer, IN UINTN Length) |
BOOLEAN | IsValidCbTable (IN struct cb_header *Header) |
VOID *EFIAPI | GetParameterBase (VOID) |
VOID * | FindCbTag (IN UINT32 Tag) |
RETURN_STATUS | FindCbMemTable (IN struct cbmem_root *Root, IN UINT32 TableId, OUT VOID **MemTable, OUT UINT32 *MemTableSize) |
RETURN_STATUS | ParseCbMemTable (IN UINT32 TableId, OUT VOID **MemTable, OUT UINT32 *MemTableSize) |
RETURN_STATUS EFIAPI | ParseMemoryInfo (IN BL_MEM_INFO_CALLBACK MemInfoCallback, IN VOID *Params) |
RETURN_STATUS EFIAPI | ParseSmbiosTable (OUT UNIVERSAL_PAYLOAD_SMBIOS_TABLE *SmbiosTable) |
RETURN_STATUS EFIAPI | ParseAcpiTableInfo (OUT UNIVERSAL_PAYLOAD_ACPI_TABLE *AcpiTableHob) |
RETURN_STATUS EFIAPI | ParseSerialInfo (OUT SERIAL_PORT_INFO *SerialPortInfo) |
RETURN_STATUS EFIAPI | ParseGfxInfo (OUT EFI_PEI_GRAPHICS_INFO_HOB *GfxInfo) |
RETURN_STATUS EFIAPI | ParseGfxDeviceInfo (OUT EFI_PEI_GRAPHICS_DEVICE_INFO_HOB *GfxDeviceInfo) |
RETURN_STATUS EFIAPI | ParseMiscInfo (VOID) |
This library will parse the coreboot table in memory and extract those required information.
Copyright (c) 2014 - 2021, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file CbParseLib.c.
Convert a packed value from cbuint64 to a UINT64 value.
val | The pointer to packed data. |
Definition at line 29 of file CbParseLib.c.
Returns the sum of all elements in a buffer of 16-bit values. During calculation, the carry bits are also been added.
Buffer | The pointer to the buffer to carry out the sum operation. |
Length | The size, in bytes, of Buffer. |
Definition at line 47 of file CbParseLib.c.
RETURN_STATUS FindCbMemTable | ( | IN struct cbmem_root * | Root, |
IN UINT32 | TableId, | ||
OUT VOID ** | MemTable, | ||
OUT UINT32 * | MemTableSize | ||
) |
Find the given table with TableId from the given coreboot memory Root.
Root | The coreboot memory table to be searched in |
TableId | Table id to be found |
MemTable | To save the base address of the memory table found |
MemTableSize | To save the size of memory table found |
RETURN_SUCCESS | Successfully find out the memory table. |
RETURN_INVALID_PARAMETER | Invalid input parameters. |
RETURN_NOT_FOUND | Failed to find the memory table. |
Definition at line 251 of file CbParseLib.c.
VOID * FindCbTag | ( | IN UINT32 | Tag | ) |
Find coreboot record with given Tag.
Tag | The tag id to be found |
NULL | The Tag is not found. |
Others | The pointer to the record found. |
Definition at line 210 of file CbParseLib.c.
VOID *EFIAPI GetParameterBase | ( | VOID | ) |
This function retrieves the parameter base address from boot loader.
This function will get bootloader specific parameter address for UEFI payload. e.g. HobList pointer for Slim Bootloader, and coreboot table header for Coreboot.
NULL | Failed to find the GUID HOB. |
others | GUIDed HOB data pointer. |
Definition at line 130 of file CbParseLib.c.
Check the coreboot table if it is valid.
Header | Pointer to coreboot table |
TRUE | The coreboot table is valid. |
Others | The coreboot table is not valid. |
Definition at line 86 of file CbParseLib.c.
RETURN_STATUS EFIAPI ParseAcpiTableInfo | ( | OUT UNIVERSAL_PAYLOAD_ACPI_TABLE * | AcpiTableHob | ) |
Acquire ACPI table from coreboot.
AcpiTableHob | Pointer to the ACPI table info. |
RETURN_SUCCESS | Successfully find out the tables. |
RETURN_NOT_FOUND | Failed to find the tables. |
Definition at line 458 of file CbParseLib.c.
RETURN_STATUS ParseCbMemTable | ( | IN UINT32 | TableId, |
OUT VOID ** | MemTable, | ||
OUT UINT32 * | MemTableSize | ||
) |
Acquire the coreboot memory table with the given table id
TableId | Table id to be searched |
MemTable | Pointer to the base address of the memory table |
MemTableSize | Pointer to the size of the memory table |
RETURN_SUCCESS | Successfully find out the memory table. |
RETURN_INVALID_PARAMETER | Invalid input parameters. |
RETURN_NOT_FOUND | Failed to find the memory table. |
Definition at line 321 of file CbParseLib.c.
RETURN_STATUS EFIAPI ParseGfxDeviceInfo | ( | OUT EFI_PEI_GRAPHICS_DEVICE_INFO_HOB * | GfxDeviceInfo | ) |
Find the video frame buffer device information
GfxDeviceInfo | Pointer to the EFI_PEI_GRAPHICS_DEVICE_INFO_HOB structure |
RETURN_SUCCESS | Successfully find the video frame buffer information. |
RETURN_NOT_FOUND | Failed to find the video frame buffer information. |
Definition at line 584 of file CbParseLib.c.
RETURN_STATUS EFIAPI ParseGfxInfo | ( | OUT EFI_PEI_GRAPHICS_INFO_HOB * | GfxInfo | ) |
Find the video frame buffer information
GfxInfo | Pointer to the EFI_PEI_GRAPHICS_INFO_HOB structure |
RETURN_SUCCESS | Successfully find the video frame buffer information. |
RETURN_NOT_FOUND | Failed to find the video frame buffer information . |
Definition at line 519 of file CbParseLib.c.
Acquire the memory information from the coreboot table in memory.
MemInfoCallback | The callback routine |
Params | Pointer to the callback routine parameter |
RETURN_SUCCESS | Successfully find out the memory information. |
RETURN_NOT_FOUND | Failed to find the memory information. |
Definition at line 379 of file CbParseLib.c.
RETURN_STATUS EFIAPI ParseMiscInfo | ( | VOID | ) |
Parse and handle the misc info provided by bootloader
RETURN_SUCCESS | The misc information was parsed successfully. |
RETURN_NOT_FOUND | Could not find required misc info. |
RETURN_OUT_OF_RESOURCES | Insufficant memory space. |
Definition at line 601 of file CbParseLib.c.
RETURN_STATUS EFIAPI ParseSerialInfo | ( | OUT SERIAL_PORT_INFO * | SerialPortInfo | ) |
Find the serial port information
SerialPortInfo | Pointer to serial port info structure |
RETURN_SUCCESS | Successfully find the serial port information. |
RETURN_NOT_FOUND | Failed to find the serial port information . |
Definition at line 487 of file CbParseLib.c.
RETURN_STATUS EFIAPI ParseSmbiosTable | ( | OUT UNIVERSAL_PAYLOAD_SMBIOS_TABLE * | SmbiosTable | ) |
Acquire SMBIOS table from coreboot.
SmbiosTable | Pointer to the SMBIOS table info. |
RETURN_SUCCESS | Successfully find out the tables. |
RETURN_NOT_FOUND | Failed to find the tables. |
Definition at line 429 of file CbParseLib.c.