TianoCore EDK2 master
|
#include <PiDxe.h>
#include <Protocol/Smbios.h>
#include <IndustryStandard/SmBios.h>
#include <Guid/EventGroup.h>
#include <Guid/SmBios.h>
#include <Library/DebugLib.h>
#include <Library/UefiDriverEntryPoint.h>
#include <Library/UefiLib.h>
#include <Library/BaseLib.h>
#include <Library/BaseMemoryLib.h>
#include <Library/MemoryAllocationLib.h>
#include <Library/UefiBootServicesTableLib.h>
#include <Library/PcdLib.h>
#include <Library/HobLib.h>
#include <UniversalPayload/SmbiosTable.h>
Go to the source code of this file.
Data Structures | |
struct | SMBIOS_INSTANCE |
struct | EFI_SMBIOS_RECORD_HEADER |
struct | EFI_SMBIOS_ENTRY |
struct | SMBIOS_HANDLE_ENTRY |
struct | EFI_SMBIOS_TABLE_END_STRUCTURE |
struct | IS_SMBIOS_TABLE_VALID_ENTRY |
Macros | |
#define | SMBIOS_INSTANCE_SIGNATURE SIGNATURE_32 ('S', 'B', 'i', 's') |
#define | SMBIOS_INSTANCE_FROM_THIS(this) CR (this, SMBIOS_INSTANCE, Smbios, SMBIOS_INSTANCE_SIGNATURE) |
#define | EFI_SMBIOS_RECORD_HEADER_VERSION 0x0100 |
#define | EFI_SMBIOS_ENTRY_SIGNATURE SIGNATURE_32 ('S', 'r', 'e', 'c') |
#define | SMBIOS_ENTRY_FROM_LINK(link) CR (link, EFI_SMBIOS_ENTRY, Link, EFI_SMBIOS_ENTRY_SIGNATURE) |
#define | SMBIOS_HANDLE_ENTRY_SIGNATURE SIGNATURE_32 ('S', 'h', 'r', 'd') |
#define | SMBIOS_HANDLE_ENTRY_FROM_LINK(link) CR (link, SMBIOS_HANDLE_ENTRY, Link, SMBIOS_HANDLE_ENTRY_SIGNATURE) |
Typedefs | |
typedef BOOLEAN(* | IS_SMBIOS_TABLE_VALID) (IN VOID *TableEntry, OUT VOID **TableAddress, OUT UINTN *TableMaximumSize, OUT UINT8 *MajorVersion, OUT UINT8 *MinorVersion) |
Functions | |
VOID EFIAPI | SmbiosTableConstruction (BOOLEAN Smbios32BitTable, BOOLEAN Smbios64BitTable) |
STATIC BOOLEAN | IsValidSmbios30Table (IN VOID *TableEntry, OUT VOID **TableAddress, OUT UINTN *TableMaximumSize, OUT UINT8 *MajorVersion, OUT UINT8 *MinorVersion) |
STATIC BOOLEAN | IsValidSmbios20Table (IN VOID *TableEntry, OUT VOID **TableAddress, OUT UINTN *TableMaximumSize, OUT UINT8 *MajorVersion, OUT UINT8 *MinorVersion) |
This code supports the implementation of the Smbios protocol
Copyright (c) 2009 - 2021, Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent
Definition in file SmbiosDxe.h.
#define EFI_SMBIOS_ENTRY_SIGNATURE SIGNATURE_32 ('S', 'r', 'e', 'c') |
Definition at line 73 of file SmbiosDxe.h.
#define EFI_SMBIOS_RECORD_HEADER_VERSION 0x0100 |
Definition at line 60 of file SmbiosDxe.h.
#define SMBIOS_ENTRY_FROM_LINK | ( | link | ) | CR (link, EFI_SMBIOS_ENTRY, Link, EFI_SMBIOS_ENTRY_SIGNATURE) |
Definition at line 86 of file SmbiosDxe.h.
#define SMBIOS_HANDLE_ENTRY_FROM_LINK | ( | link | ) | CR (link, SMBIOS_HANDLE_ENTRY, Link, SMBIOS_HANDLE_ENTRY_SIGNATURE) |
Definition at line 102 of file SmbiosDxe.h.
#define SMBIOS_HANDLE_ENTRY_SIGNATURE SIGNATURE_32 ('S', 'h', 'r', 'd') |
Definition at line 91 of file SmbiosDxe.h.
#define SMBIOS_INSTANCE_FROM_THIS | ( | this | ) | CR (this, SMBIOS_INSTANCE, Smbios, SMBIOS_INSTANCE_SIGNATURE) |
Definition at line 51 of file SmbiosDxe.h.
#define SMBIOS_INSTANCE_SIGNATURE SIGNATURE_32 ('S', 'B', 'i', 's') |
Definition at line 29 of file SmbiosDxe.h.
typedef BOOLEAN(* IS_SMBIOS_TABLE_VALID) (IN VOID *TableEntry, OUT VOID **TableAddress, OUT UINTN *TableMaximumSize, OUT UINT8 *MajorVersion, OUT UINT8 *MinorVersion) |
Validates a SMBIOS table entry point.
TableEntry | The SmBios table entry to validate. |
TableAddress | On exit, point to the smbios table addres. |
TableMaximumSize | On exit, point to the maximum size of the table. |
TRUE | SMBIOS table entry point is valid. |
FALSE | SMBIOS table entry point is malformed. |
Definition at line 177 of file SmbiosDxe.h.
STATIC BOOLEAN IsValidSmbios20Table | ( | IN VOID * | TableEntry, |
OUT VOID ** | TableAddress, | ||
OUT UINTN * | TableMaximumSize, | ||
OUT UINT8 * | MajorVersion, | ||
OUT UINT8 * | MinorVersion | ||
) |
Validates a SMBIOS 2.0 table entry point.
TableEntry | The SmBios table entry to validate. |
TableAddress | On exit, point to the smbios table addres. |
TableMaximumSize | On exit, point to the maximum size of the table. |
TRUE | SMBIOS table entry point is valid. |
FALSE | SMBIOS table entry point is malformed. |
Definition at line 1451 of file SmbiosDxe.c.
STATIC BOOLEAN IsValidSmbios30Table | ( | IN VOID * | TableEntry, |
OUT VOID ** | TableAddress, | ||
OUT UINTN * | TableMaximumSize, | ||
OUT UINT8 * | MajorVersion, | ||
OUT UINT8 * | MinorVersion | ||
) |
Validates a SMBIOS 3.0 table entry point.
TableEntry | The SmBios table entry to validate. |
TableAddress | On exit, point to the smbios table addres. |
TableMaximumSize | On exit, point to the maximum size of the table. |
TRUE | SMBIOS table entry point is valid. |
FALSE | SMBIOS table entry point is malformed. |
Definition at line 1531 of file SmbiosDxe.c.
VOID EFIAPI SmbiosTableConstruction | ( | BOOLEAN | Smbios32BitTable, |
BOOLEAN | Smbios64BitTable | ||
) |
Create Smbios Table and installs the Smbios Table to the System Table.
Smbios32BitTable | The flag to update 32-bit table. |
Smbios64BitTable | The flag to update 64-bit table. |
Definition at line 1414 of file SmbiosDxe.c.