/** @file\r
This code supports the implementation of the Smbios protocol\r
- \r
-Copyright (c) 2009 - 2012, Intel Corporation. All rights reserved.<BR>\r
-This program and the accompanying materials \r
-are licensed and made available under the terms and conditions of the BSD License \r
-which accompanies this distribution. The full text of the license may be found at \r
-http://opensource.org/licenses/bsd-license.php \r
- \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
+\r
+Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>\r
+This program and the accompanying materials\r
+are licensed and made available under the terms and conditions of the BSD License\r
+which accompanies this distribution. The full text of the license may be found at\r
+http://opensource.org/licenses/bsd-license.php\r
+\r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
**/\r
\r
#include <Library/UefiBootServicesTableLib.h>\r
#include <Library/PcdLib.h>\r
\r
-//\r
-// The length of the entire structure table (including all strings) must be reported\r
-// in the Structure Table Length field of the SMBIOS Structure Table Entry Point,\r
-// which is a WORD field limited to 65,535 bytes.\r
-//\r
-#define SMBIOS_TABLE_MAX_LENGTH 0xFFFF\r
-\r
#define SMBIOS_INSTANCE_SIGNATURE SIGNATURE_32 ('S', 'B', 'i', 's')\r
typedef struct {\r
UINT32 Signature;\r
LIST_ENTRY Link;\r
EFI_SMBIOS_RECORD_HEADER *RecordHeader;\r
UINTN RecordSize;\r
+ //\r
+ // Indicate which table this record is added to.\r
+ //\r
+ BOOLEAN Smbios32BitTable;\r
+ BOOLEAN Smbios64BitTable;\r
} EFI_SMBIOS_ENTRY;\r
\r
#define SMBIOS_ENTRY_FROM_LINK(link) CR (link, EFI_SMBIOS_ENTRY, Link, EFI_SMBIOS_ENTRY_SIGNATURE)\r
\r
/**\r
Create Smbios Table and installs the Smbios Table to the System Table.\r
+\r
+ @param Smbios32BitTable The flag to update 32-bit table.\r
+ @param Smbios64BitTable The flag to update 64-bit table.\r
+\r
**/\r
VOID\r
EFIAPI\r
SmbiosTableConstruction (\r
- VOID\r
+ BOOLEAN Smbios32BitTable,\r
+ BOOLEAN Smbios64BitTable\r
);\r
\r
#endif\r