SmbiosPlatformDxe.h revision a145e28decc529bf26981ae57c3fc2ffe0b946f2
1/** @file
2  This driver installs SMBIOS information for OVMF
3
4  Copyright (c) 2011, Bei Guan <gbtju85@gmail.com>
5  Copyright (c) 2011, Intel Corporation. All rights reserved.<BR>
6
7  This program and the accompanying materials
8  are licensed and made available under the terms and conditions of the BSD License
9  which accompanies this distribution.  The full text of the license may be found at
10  http://opensource.org/licenses/bsd-license.php
11
12  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
14
15**/
16
17#ifndef _SMBIOS_PLATFORM_DXE_H_
18#define _SMBIOS_PLATFORM_DXE_H_
19
20#include <PiDxe.h>
21
22#include <Protocol/Smbios.h>
23#include <IndustryStandard/SmBios.h>
24#include <Library/DebugLib.h>
25#include <Library/BaseLib.h>
26#include <Library/BaseMemoryLib.h>
27#include <Library/UefiBootServicesTableLib.h>
28#include <Library/MemoryAllocationLib.h>
29
30
31/**
32  Locates the Xen SMBIOS data if it exists
33
34  @return SMBIOS_TABLE_ENTRY_POINT   Address of Xen SMBIOS data
35
36**/
37SMBIOS_TABLE_ENTRY_POINT *
38GetXenSmbiosTables (
39  VOID
40  );
41
42
43/**
44  Locates and extracts the QEMU SMBIOS table data if present in fw_cfg
45
46  @return             Address of extracted QEMU SMBIOS data
47
48**/
49UINT8 *
50GetQemuSmbiosTables (
51  VOID
52  );
53
54
55/**
56  Validates the SMBIOS entry point structure
57
58  @param  EntryPointStructure  SMBIOS entry point structure
59
60  @retval TRUE   The entry point structure is valid
61  @retval FALSE  The entry point structure is not valid
62
63**/
64BOOLEAN
65IsEntryPointStructureValid (
66  IN SMBIOS_TABLE_ENTRY_POINT  *EntryPointStructure
67  );
68
69#endif
70