4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/** @file
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Module for clarifying the content of the smbios structure element information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Copyright (c) 2005 - 2011, Intel Corporation. All rights reserved.<BR>
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This program and the accompanying materials
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync are licensed and made available under the terms and conditions of the BSD License
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync which accompanies this distribution. The full text of the license may be found at
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync http://opensource.org/licenses/bsd-license.php
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#include "../UefiShellDebug1CommandsLib.h"
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#include "PrintInfo.h"
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#include "LibSmbiosView.h"
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#include "QueryTable.h"
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#include "EventLogInfo.h"
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync// Get the certain bit of 'value'
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#define BIT(value, bit) ((value) & ((UINT64) 1) << (bit))
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//////////////////////////////////////////////////////////
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync// Macros of print structure element, simplify coding.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#define PRINT_PENDING_STRING(pStruct, type, element) \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync do { \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync CHAR8 StringBuf[64]; \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync SetMem (StringBuf, sizeof (StringBuf), 0x00); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync SmbiosGetPendingString ((pStruct), (pStruct->type->element), StringBuf); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintEx(-1,-1,L"%a",#element); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintEx(-1,-1,L": %a\n", StringBuf); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } while (0);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#define PRINT_SMBIOS_STRING(pStruct, stringnumber, element) \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync do { \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync CHAR8 StringBuf[64]; \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync SetMem (StringBuf, sizeof (StringBuf), 0x00); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync SmbiosGetPendingString ((pStruct), (stringnumber), StringBuf); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintEx(-1,-1,L"%a",#element); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintEx(-1,-1,L": %a\n", StringBuf); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } while (0);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#define PRINT_STRUCT_VALUE(pStruct, type, element) \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync do { \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintEx(-1,-1,L"%a",#element); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintEx(-1,-1,L": %d\n", (pStruct->type->element)); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } while (0);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#define PRINT_STRUCT_VALUE_H(pStruct, type, element) \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync do { \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintEx(-1,-1,L"%a",#element); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintEx(-1,-1,L": 0x%x\n", (pStruct->type->element)); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } while (0);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#define PRINT_BIT_FIELD(pStruct, type, element, size) \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync do { \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_DUMP), gShellDebug1HiiHandle); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintEx(-1,-1,L"%a",#element); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SIZE), gShellDebug1HiiHandle, size); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DumpHex (0, 0, size, &(pStruct->type->element)); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } while (0);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#define PRINT_SMBIOS_BIT_FIELD(pStruct, startaddress, element, size) \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync do { \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_DUMP), gShellDebug1HiiHandle); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintEx(-1,-1,L"%a",#element); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SIZE), gShellDebug1HiiHandle, size); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DumpHex (0, 0, size, startaddress); \
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } while (0);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/////////////////////////////////////////
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Copy Length of Src buffer to Dest buffer,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync add a NULL termination to Dest buffer.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in, out] Dest Destination buffer head.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Src Source buffer head.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Length Length of buffer to be copied.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncMemToString (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN OUT VOID *Dest,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN VOID *Src,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINTN Length
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 *SrcBuffer;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 *DestBuffer;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync SrcBuffer = (UINT8 *) Src;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DestBuffer = (UINT8 *) Dest;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // copy byte by byte
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync while ((Length--)!=0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync *DestBuffer++ = *SrcBuffer++;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // append a NULL terminator
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync *DestBuffer = '\0';
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//////////////////////////////////////////////
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync// Functions below is to show the information
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync//
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print the info of EPS(Entry Point Structure).
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] SmbiosTable Pointer to the SMBIOS table entry point.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option Display option.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncSmbiosPrintEPSInfo (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN SMBIOS_STRUCTURE_TABLE *SmbiosTable,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 Anchor[5];
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 InAnchor[6];
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (SmbiosTable == NULL) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SMBIOSTABLE_NULL), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync return ;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Option == SHOW_NONE) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync return ;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Option >= SHOW_NORMAL) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ENTRY_POINT_SIGN), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync MemToString (Anchor, SmbiosTable->AnchorString, 4);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ANCHOR_STR), gShellDebug1HiiHandle, Anchor);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_EPS_CHECKSUM),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync gShellDebug1HiiHandle,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync SmbiosTable->EntryPointStructureChecksum
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ENTRY_POINT_LEN), gShellDebug1HiiHandle, SmbiosTable->EntryPointLength);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_VERSION),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync gShellDebug1HiiHandle,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync SmbiosTable->MajorVersion,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync SmbiosTable->MinorVersion
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_NUMBER_STRUCT),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync gShellDebug1HiiHandle,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync SmbiosTable->NumberOfSmbiosStructures
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_MAX_STRUCT_SIZE), gShellDebug1HiiHandle, SmbiosTable->MaxStructureSize);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_TABLE_ADDR), gShellDebug1HiiHandle, SmbiosTable->TableAddress);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_TABLE_LENGTH), gShellDebug1HiiHandle, SmbiosTable->TableLength);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // If SHOW_ALL, also print followings.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Option >= SHOW_DETAIL) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ENTRY_POINT_REVISION),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync gShellDebug1HiiHandle,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync SmbiosTable->EntryPointRevision
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BCD_REVISION), gShellDebug1HiiHandle, SmbiosTable->SmbiosBcdRevision);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Since raw data is not string, add a NULL terminater.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync MemToString (InAnchor, SmbiosTable->IntermediateAnchorString, 5);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTER_ACHOR), gShellDebug1HiiHandle, InAnchor);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTER_CHECKSUM), gShellDebug1HiiHandle, SmbiosTable->IntermediateChecksum);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_FORMATTED_AREA), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DumpHex (2, 0, 5, SmbiosTable->FormattedArea);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync This function print the content of the structure pointed by Struct.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Struct Point to the structure to be printed.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option Print option of information detail.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval EFI_SUCCESS Successfully Printing this function.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval EFI_INVALID_PARAMETER Invalid Structure.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @retval EFI_UNSUPPORTED Unsupported.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncEFI_STATUS
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncSmbiosPrintStructure (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN SMBIOS_STRUCTURE_POINTER *Struct,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 Index;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 *Buffer;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Buffer = (UINT8 *) (UINTN) (Struct->Raw);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Struct == NULL) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync return EFI_INVALID_PARAMETER;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Option == SHOW_NONE) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync return EFI_SUCCESS;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Display structure header
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayStructureTypeInfo (Struct->Hdr->Type, SHOW_DETAIL);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_FORMAT_PART_LEN), gShellDebug1HiiHandle, Struct->Hdr->Length);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_STRUCT_HANDLE), gShellDebug1HiiHandle, Struct->Hdr->Handle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Option == SHOW_OUTLINE) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync return EFI_SUCCESS;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (Struct->Hdr->Type) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type0, Vendor);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type0, BiosVersion);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type0, BiosSegment);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type0, BiosReleaseDate);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BIOS_SIZE), gShellDebug1HiiHandle, 64 * (Struct->Type0->BiosSize + 1));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Option < SHOW_DETAIL) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type0, BiosCharacteristics);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayBiosCharacteristics (Struct->Type0->BiosCharacteristics, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // The length of above format part is 0x12 bytes,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Ext bytes are following, size = 'len-0x12'.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // If len-0x12 > 0, then
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // there are extension bytes (Byte1, byte2, byte3...)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // And byte3 not stated in spec, so dump all extension bytes(1, 2, 3..)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if ((Buffer[1] - (CHAR8) 0x12) > 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayBiosCharacteristicsExt1 (Buffer[0x12], Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if ((Buffer[1] - (CHAR8) 0x12) > 1) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayBiosCharacteristicsExt2 (Buffer[0x13], Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if ((Buffer[1] - (CHAR8) 0x12) > 2) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_BIT_FIELD (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Struct,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Type0,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync BiosCharacteristics,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Buffer[1] - (CHAR8) 0x12
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // System Information (Type 1)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 1:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type1, Manufacturer);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type1, ProductName);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type1, Version);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type1, SerialNumber);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_BIT_FIELD (Struct, Type1, Uuid, 16);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySystemWakeupType (Struct->Type1->WakeUpType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 2:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type2, Manufacturer);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type2, ProductName);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type2, Version);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type2, SerialNumber);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // System Enclosure (Type 3)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 3:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type3, Manufacturer);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type3, Type);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySystemEnclosureType (Struct->Type3->Type, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type3, Version);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type3, SerialNumber);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type3, AssetTag);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BOOTUP_STATE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySystemEnclosureStatus (Struct->Type3->BootupState, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_POWER_SUPPLY_STATE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySystemEnclosureStatus (Struct->Type3->PowerSupplyState, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_THERMAL_STATE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySystemEnclosureStatus (Struct->Type3->ThermalState, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SECURITY_STATUS), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySESecurityStatus (Struct->Type3->SecurityStatus, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_BIT_FIELD (Struct, Type3, OemDefined, 4);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Processor Information (Type 4)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 4:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type4, Socket);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayProcessorType (Struct->Type4->ProcessorType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if ((SmbiosMajorVersion > 0x2 || (SmbiosMajorVersion == 0x2 && SmbiosMinorVersion >= 0x6)) &&
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync (Struct->Type4->ProcessorFamily == 0xFE)) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Get family from ProcessorFamily2 field
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayProcessorFamily2 (Struct->Type4->ProcessorFamily2, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayProcessorFamily (Struct->Type4->ProcessorFamily, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type4, ProcessorManufacture);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_BIT_FIELD (Struct, Type4, ProcessorId, 8);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type4, ProcessorVersion);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayProcessorVoltage (Struct->Type4->Voltage, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type4, ExternalClock);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type4, MaxSpeed);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type4, CurrentSpeed);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayProcessorStatus (Struct->Type4->Status, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayProcessorUpgrade (Struct->Type4->ProcessorUpgrade, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type4, L1CacheHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type4, L2CacheHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type4, L3CacheHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type4, SerialNumber);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type4, AssetTag);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type4, PartNumber);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (SmbiosMajorVersion > 0x2 || (SmbiosMajorVersion == 0x2 && SmbiosMinorVersion >= 0x5)) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type4, CoreCount);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type4, EnabledCoreCount);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type4, ThreadCount);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type4, ProcessorCharacteristics);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Memory Controller Information (Type 5)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 5:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 SlotNum;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync SlotNum = Struct->Type5->AssociatedMemorySlotNum;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMcErrorDetectMethod (Struct->Type5->ErrDetectMethod, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMcErrorCorrectCapability (Struct->Type5->ErrCorrectCapability, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SUPOPRT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMcInterleaveSupport (Struct->Type5->SupportInterleave, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_CURRENT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMcInterleaveSupport (Struct->Type5->CurrentInterleave, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMaxMemoryModuleSize (Struct->Type5->MaxMemoryModuleSize, SlotNum, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMcMemorySpeeds (Struct->Type5->SupportSpeed, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMmMemoryType (Struct->Type5->SupportMemoryType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMemoryModuleVoltage (Struct->Type5->MemoryModuleVoltage, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type5, AssociatedMemorySlotNum);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // According to SMBIOS Specification, offset 0x0F
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMemoryModuleConfigHandles ((UINT16 *) (&Buffer[0x0F]), SlotNum, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMcErrorCorrectCapability (Buffer[0x0F + 2 * SlotNum], Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Memory Module Information (Type 6)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 6:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type6, SocketDesignation);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMmBankConnections (Struct->Type6->BankConnections, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type6, CurrentSpeed);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMmMemoryType (Struct->Type6->CurrentMemoryType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INSTALLED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMmMemorySize (Struct->Type6->InstalledSize, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ENABLED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMmMemorySize (Struct->Type6->EnabledSize, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMmErrorStatus (Struct->Type6->ErrorStatus, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Cache Information (Type 7)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 7:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type7, SocketDesignation);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type7, CacheConfiguration);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type7, MaximumCacheSize);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type7, InstalledSize);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type7, SupportedSRAMType);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type7, CurrentSRAMType);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayCacheSRAMType (Struct->Type7->CurrentSRAMType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type7, CacheSpeed);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayCacheErrCorrectingType (Struct->Type7->ErrorCorrectionType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayCacheSystemCacheType (Struct->Type7->SystemCacheType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayCacheAssociativity (Struct->Type7->Associativity, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Port Connector Information (Type 8)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 8:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type8, InternalReferenceDesignator);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Internal ");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayPortConnectorType (Struct->Type8->InternalConnectorType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type8, ExternalReferenceDesignator);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_EXTERNAL), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayPortConnectorType (Struct->Type8->ExternalConnectorType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayPortType (Struct->Type8->PortType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // System Slots (Type 9)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 9:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type9, SlotDesignation);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySystemSlotType (Struct->Type9->SlotType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySystemSlotDataBusWidth (Struct->Type9->SlotDataBusWidth, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySystemSlotCurrentUsage (Struct->Type9->CurrentUsage, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySystemSlotLength (Struct->Type9->SlotLength, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySystemSlotId (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Struct->Type9->SlotID,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Struct->Type9->SlotType,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySlotCharacteristics1 (Struct->Type9->SlotCharacteristics1, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySlotCharacteristics2 (Struct->Type9->SlotCharacteristics2, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (SmbiosMajorVersion > 0x2 || (SmbiosMajorVersion == 0x2 && SmbiosMinorVersion >= 0x6)) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type9, SegmentGroupNum);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type9, BusNum);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type9, DevFuncNum);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // On Board Devices Information (Type 10)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 10:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINTN NumOfDevice;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync NumOfDevice = (Struct->Type10->Hdr.Length - sizeof (SMBIOS_HEADER)) / (2 * sizeof (UINT8));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync for (Index = 0; Index < NumOfDevice; Index++) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayOnboardDeviceTypes (Struct->Type10->Device[Index].DeviceType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_DESC_STRING), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintEx(-1,-1,L"%a",LibGetSmbiosString (Struct, Struct->Type10->Device[Index].DescriptionString));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 11:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type11, StringCount);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync for (Index = 1; Index <= Struct->Type11->StringCount; Index++) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintEx(-1,-1,L"%a\n", LibGetSmbiosString (Struct, Index));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 12:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type12, StringCount);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync for (Index = 1; Index <= Struct->Type12->StringCount; Index++) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintEx(-1,-1,L"%a\n", LibGetSmbiosString (Struct, Index));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 13:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type13, InstallableLanguages);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type13, Flags);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_BIT_FIELD (Struct, Type13, Reserved, 15);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type13, CurrentLanguages);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 14:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type14, GroupName);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type14, ItemType);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type14, ItemHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // System Event Log (Type 15)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 15:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync EVENTLOGTYPE *Ptr;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 Count;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 *AccessMethodAddress;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type15, LogAreaLength);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type15, LogHeaderStartOffset);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type15, LogDataStartOffset);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySELAccessMethod (Struct->Type15->AccessMethod, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type15, AccessMethodAddress);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySELLogStatus (Struct->Type15->LogStatus, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type15, LogChangeToken);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySysEventLogHeaderFormat (Struct->Type15->LogHeaderFormat, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type15, NumberOfSupportedLogTypeDescriptors);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type15, LengthOfLogTypeDescriptor);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Count = Struct->Type15->NumberOfSupportedLogTypeDescriptors;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Count > 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Ptr = Struct->Type15->EventLogTypeDescriptors;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Display all Event Log type descriptors supported by system
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync for (Index = 0; Index < Count; Index++, Ptr++) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SUPOPRTED_EVENT), gShellDebug1HiiHandle, Index + 1);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySELTypes (Ptr->LogType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySELVarDataFormatType (Ptr->DataFormatType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Option >= SHOW_DETAIL) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (Struct->Type15->AccessMethod) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 03:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync AccessMethodAddress = (UINT8 *) (UINTN) (Struct->Type15->AccessMethodAddress);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 00:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 01:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 02:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 04:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync default:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ACCESS_METHOD_NOT_SUPOPRTED),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync gShellDebug1HiiHandle,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Struct->Type15->AccessMethod
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync return EFI_UNSUPPORTED;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Display Event Log Header
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Starting offset (or index) within the nonvolatile storage
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // of the event-log's header, from the Access Method Address
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySysEventLogHeader (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Struct->Type15->LogHeaderFormat,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync AccessMethodAddress + Struct->Type15->LogHeaderStartOffset
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Display all Event Log data
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Starting offset (or index) within the nonvolatile storage
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // of the event-log's first data byte, from the Access Method Address(0x14)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySysEventLogData (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync AccessMethodAddress + Struct->Type15->LogDataStartOffset,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync (UINT16)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Struct->Type15->LogAreaLength -
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync (Struct->Type15->LogDataStartOffset - Struct->Type15->LogDataStartOffset)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Physical Memory Array (Type 16)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 16:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayPMALocation (Struct->Type16->Location, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayPMAUse (Struct->Type16->Use, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayPMAErrorCorrectionTypes (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Struct->Type16->MemoryErrorCorrection,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type16, MaximumCapacity);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type16, MemoryErrorInformationHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type16, NumberOfMemoryDevices);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Memory Device (Type 17)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 17:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type17, MemoryArrayHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type17, MemoryErrorInformationHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type17, TotalWidth);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type17, DataWidth);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type17, Size);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMemoryDeviceFormFactor (Struct->Type17->FormFactor, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type17, DeviceSet);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type17, DeviceLocator);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type17, BankLocator);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMemoryDeviceType (Struct->Type17->MemoryType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMemoryDeviceTypeDetail (Struct->Type17->TypeDetail, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type17, Speed);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type17, Manufacturer);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type17, SerialNumber);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type17, AssetTag);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type17, PartNumber);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (SmbiosMajorVersion > 0x2 || (SmbiosMajorVersion == 0x2 && SmbiosMinorVersion >= 0x6)) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type17, Attributes);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // 32-bit Memory Error Information (Type 18)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 18:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMemoryErrorType (Struct->Type18->ErrorType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMemoryErrorGranularity (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Struct->Type18->ErrorGranularity,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMemoryErrorOperation (Struct->Type18->ErrorOperation, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type18, VendorSyndrome);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type18, MemoryArrayErrorAddress);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type18, DeviceErrorAddress);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type18, ErrorResolution);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Memory Array Mapped Address (Type 19)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 19:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type19, StartingAddress);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type19, EndingAddress);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type19, MemoryArrayHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type19, PartitionWidth);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Memory Device Mapped Address (Type 20)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 20:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type20, StartingAddress);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type20, EndingAddress);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type20, MemoryDeviceHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type20, MemoryArrayMappedAddressHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type20, PartitionRowPosition);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type20, InterleavePosition);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type20, InterleavedDataDepth);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Built-in Pointing Device (Type 21)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 21:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayPointingDeviceType (Struct->Type21->Type, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayPointingDeviceInterface (Struct->Type21->Interface, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE (Struct, Type21, NumberOfButtons);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Portable Battery (Type 22)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 22:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type22, Location);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type22, Manufacturer);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type22, ManufactureDate);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type22, SerialNumber);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type22, DeviceName);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayPBDeviceChemistry (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Struct->Type22->DeviceChemistry,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type22, DeviceCapacity);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type22, DesignVoltage);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type22, SBDSVersionNumber);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type22, MaximumErrorInBatteryData);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type22, SBDSSerialNumber);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySBDSManufactureDate (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Struct->Type22->SBDSManufactureDate,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type22, SBDSDeviceChemistry);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type22, DesignCapacityMultiplier);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type22, OEMSpecific);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 23:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySystemResetCapabilities (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Struct->Type23->Capabilities,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type23, ResetCount);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type23, ResetLimit);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type23, TimerInterval);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type23, Timeout);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 24:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayHardwareSecuritySettings (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Struct->Type24->HardwareSecuritySettings,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 25:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type25, NextScheduledPowerOnMonth);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type25, NextScheduledPowerOnDayOfMonth);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type25, NextScheduledPowerOnHour);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type25, NextScheduledPowerOnMinute);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type25, NextScheduledPowerOnSecond);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 26:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type26, Description);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayVPLocation (Struct->Type26->LocationAndStatus, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayVPStatus (Struct->Type26->LocationAndStatus, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type26, MaximumValue);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type26, MinimumValue);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type26, Resolution);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type26, Tolerance);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type26, Accuracy);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type26, OEMDefined);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type26, NominalValue);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 27:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type27, TemperatureProbeHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayCoolingDeviceStatus (Struct->Type27->DeviceTypeAndStatus, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayCoolingDeviceType (Struct->Type27->DeviceTypeAndStatus, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type27, CoolingUnitGroup);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type27, OEMDefined);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type27, NominalSpeed);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 28:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type28, Description);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayTemperatureProbeStatus (Struct->Type28->LocationAndStatus, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayTemperatureProbeLoc (Struct->Type28->LocationAndStatus, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type28, MaximumValue);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type28, MinimumValue);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type28, Resolution);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type28, Tolerance);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type28, Accuracy);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type28, OEMDefined);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type28, NominalValue);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 29:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type29, Description);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayECPStatus (Struct->Type29->LocationAndStatus, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayECPLoc (Struct->Type29->LocationAndStatus, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type29, MaximumValue);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type29, MinimumValue);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type29, Resolution);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type29, Tolerance);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type29, Accuracy);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type29, OEMDefined);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type29, NominalValue);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 30:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type30, ManufacturerName);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayOBRAConnections (Struct->Type30->Connections, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 31:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_STRUCT_TYPE31), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 32:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_BIT_FIELD (Struct, Type32, Reserved, 6);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySystemBootStatus (Struct->Type32->BootStatus[0], Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 33:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMemoryErrorType (Struct->Type33->ErrorType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMemoryErrorGranularity (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Struct->Type33->ErrorGranularity,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMemoryErrorOperation (Struct->Type33->ErrorOperation, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type33, VendorSyndrome);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type33, MemoryArrayErrorAddress);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type33, DeviceErrorAddress);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type33, ErrorResolution);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Management Device (Type 34)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 34:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type34, Description);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMDType (Struct->Type34->Type, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type34, Address);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type34, AddressType);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 35:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type35, Description);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type35, ManagementDeviceHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type35, ComponentHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type35, ThresholdHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 36:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type36, LowerThresholdNonCritical);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type36, UpperThresholdNonCritical);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type36, LowerThresholdCritical);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type36, UpperThresholdCritical);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type36, LowerThresholdNonRecoverable);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type36, UpperThresholdNonRecoverable);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Memory Channel (Type 37)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 37:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 Count;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync MEMORYDEVICE *Ptr;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayMemoryChannelType (Struct->Type37->ChannelType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type37, MaximumChannelLoad);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type37, MemoryDeviceCount);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Count = Struct->Type37->MemoryDeviceCount;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Ptr = Struct->Type37->MemoryDevice;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync for (Index = 0; Index < Count; Index++) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_MEM_DEVICE), gShellDebug1HiiHandle, Index + 1);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_DEV_LOAD), gShellDebug1HiiHandle, Ptr->DeviceLoad);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_DEV_HANDLE), gShellDebug1HiiHandle, Ptr->DeviceHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // IPMI Device Information (Type 38)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 38:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplayIPMIDIBMCInterfaceType (Struct->Type38->InterfaceType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type38, IPMISpecificationRevision);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type38, I2CSlaveAddress);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type38, NVStorageDeviceAddress);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type38, BaseAddress);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // System Power Supply (Type 39)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 39:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type39, PowerUnitGroup);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type39, Location);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type39, DeviceName);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type39, Manufacturer);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type39, SerialNumber);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type39, AssetTagNumber);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type39, ModelPartNumber);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type39, RevisionLevel);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type39, MaxPowerCapacity);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySPSCharacteristics (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Struct->Type39->PowerSupplyCharacteristics,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync );
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type39, InputVoltageProbeHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type39, CoolingDeviceHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type39, InputCurrentProbeHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Additional Information (Type 40)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 40:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 NumberOfEntries;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 EntryLength;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ADDITIONAL_INFORMATION_ENTRY *Entries;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync EntryLength = 0;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Entries = Struct->Type40->AdditionalInfoEntries;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync NumberOfEntries = Struct->Type40->NumberOfAdditionalInformationEntries;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type40, NumberOfAdditionalInformationEntries);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync for (Index = 0; Index < NumberOfEntries; Index++) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync EntryLength = Entries->EntryLength;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_SMBIOSVIEW_ENTRYLEN), gShellDebug1HiiHandle, EntryLength);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_SMBIOSVIEW_REFERENCEDHANDLE), gShellDebug1HiiHandle, Entries->ReferencedHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_SMBIOSVIEW_REFERENCEDOFFSET), gShellDebug1HiiHandle, Entries->ReferencedOffset);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_SMBIOS_STRING (Struct, Entries->EntryString, String);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_SMBIOS_BIT_FIELD (Struct, Entries->Value, Value, EntryLength - 5);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Entries = (ADDITIONAL_INFORMATION_ENTRY *) ((UINT8 *)Entries + EntryLength);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Onboard Devices Extended Information (Type 41)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 41:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_PENDING_STRING (Struct, Type41, ReferenceDesignation);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type41, DeviceType);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type41, DeviceTypeInstance);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type41, SegmentGroupNum);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type41, BusNum);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_STRUCT_VALUE_H (Struct, Type41, DevFuncNum);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 126:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INACTIVE_STRUCT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 127:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_THIS_STRUCT_END_TABLE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync default:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_STRUCT_TYPE_UNDEFINED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync return EFI_SUCCESS;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display BIOS Information (Type 0) information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Chara The information bits.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option The optional information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplayBiosCharacteristics (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT64 Chara,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Print header
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BIOS_CHAR), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // print option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (Chara, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Check all the bits and print information
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // This function does not use Table because table of bits
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // are designed not to deal with UINT64
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 0) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_RESERVED_BIT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 1) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_RESERVED_BIT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 2) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNKNOWN_BIT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 3) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BIOS_CHAR_NOT_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 4) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ISA_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 5) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_MSA_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 6) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_EISA_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 7) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PCI_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 8) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PC_CARD_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 9) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PLUG_PLAY_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 10) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_APM_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 11) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BIOS_UPGRADEABLE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 12) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BIOS_SHADOWING), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 13) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_VESA_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 14) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ECSD_SUPPORT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 15) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BOOT_FORM_CD_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 16) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SELECTED_BOOT_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 17) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BIOS_ROM_SOCKETED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 18) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BOOT_FROM_PC_CARD), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 19) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_EDD_ENHANCED_DRIVER), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 20) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_JAPANESE_FLOPPY_NEC), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 21) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_JAPANESE_FLOPPY_TOSHIBA), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 22) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_FLOPPY_SERVICES_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 23) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ONE_POINT_TWO_MB), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 24) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_720_KB), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 25) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_TWO_POINT_EIGHT_EIGHT_MB), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 26) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PRINT_SCREEN_SUPPORT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 27) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_KEYBOARD_SERV_SUPPORT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 28) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SERIAL_SERVICES_SUPPORT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 29) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PRINTER_SERVICES_SUPPORT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 30) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_MONO_VIDEO_SUPPORT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Chara, 31) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_NEC_PC_98), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Just print the Reserved
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BITS_32_47), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BITS_48_64), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display Bios Characteristice extensions1 information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Byte1 The information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option The optional information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplayBiosCharacteristicsExt1 (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Byte1,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BIOS_CHAR_EXTENSION), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Print option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (Byte1, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // check bit and print
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Byte1, 0) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ACPI_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Byte1, 1) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_USB_LEGACY_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Byte1, 2) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_AGP_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Byte1, 3) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_I2O_BOOT_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Byte1, 4) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_LS_120_BOOT_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Byte1, 5) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ATAPI_ZIP_DRIVE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Byte1, 6) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_1394_BOOT_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Byte1, 7) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SMART_BATTERY_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display Bios Characteristice extensions2 information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] byte2 The information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option The optional information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplayBiosCharacteristicsExt2 (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 byte2,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BIOS_CHAR_EXTENSION_2), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Print option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (byte2, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (byte2, 0) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BIOS_BOOT_SPEC_SUPP), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (byte2, 1) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_FUNCTION_KEY_INIT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BITS_RSVD_FOR_FUTURE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display Processor Information (Type 4) information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Family The family value.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option The option value.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplayProcessorFamily (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 Family,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Print prompt message
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PROCESSOR_FAMILY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Print option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (Family, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Use switch to check
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (Family) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x01:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_OTHER), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x02:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNKNOWN), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x03:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"8086\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x04:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"80286\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x05:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL386_PROCESSOR), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x06:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL486_PROCESSOR), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x07:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"8087\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x08:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"80287\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x09:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"80387\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x0A:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"80487\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x0B:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PENTIUM_PROC_FAMILY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x0C:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PENTIUM_PRO_PROC), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x0D:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PENTIUM_II_PROC), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x0E:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PENTIUM_PROC_MMX), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x0F:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_CELERON_PROC), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x10:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PENTIUM_XEON_PROC), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x11:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PENTIUM_III_PROC), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x12:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_M1_FAMILY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x18:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"AMD Duron\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x19:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_K5_FAMILY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x20:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_POWER_PC_FAMILY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x21:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_POWER_PC_601), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x22:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_POWER_PC_603), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x23:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_POWER_PC_603_PLUS), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x24:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_POWER_PC_604), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x25:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Power PC 620\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x26:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Power PC 704\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x27:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Power PC 750\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x28:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_CORE_DUO), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x29:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_CORE_DUO_MOBILE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x2A:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_CORE_SOLO_MOBILE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x2B:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_ATOM), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x30:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ALPHA_FAMILY_2), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x31:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Alpha 21064\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x32:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Alpha 21066\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x33:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Alpha 21164\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x34:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Alpha 21164PC\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x35:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Alpha 21164a\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x36:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Alpha 21264\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x37:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Alpha 21364\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x40:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_MIPS_FAMILY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x41:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"MIPS R4000\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x42:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"MIPS R4200\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x43:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"MIPS R4400\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x44:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"MIPS R4600\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x45:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"MIPS R10000\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x50:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SPARC_FAMILY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x51:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"SuperSparc\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x52:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"microSparc II\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x53:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"microSparc IIep\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x54:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"UltraSparc\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x55:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"UltraSparc II\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x56:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"UltraSparcIIi\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x57:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"UltraSparcIII\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x58:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"UltraSparcIIIi\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x60:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_68040_FAMILY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x61:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"68xx\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x62:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"68000\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x63:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"68010\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x64:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"68020\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x65:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"68030\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x70:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_HOBBIT_FAMILY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x78:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Crusoe TM5000\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x79:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Crusoe TM3000\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x7A:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Efficeon TM8000\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x80:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_WEITEK), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x82:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Itanium\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x83:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"AMD Athlon64\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x84:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"AMD Opteron\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x85:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"AMD Sempron\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x86:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"AMD Turion64 Mobile\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x87:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Dual-Core AMD Opteron\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x88:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"AMD Athlon 64X2 DualCore\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x89:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"AMD Turion 64X2 Mobile\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x8A:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_AMD_OPTERON_QUAD_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x8B:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_AMD_OPTERON_THIRD_GENERATION), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x8C:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_AMD_PHENOM_FX_QUAD_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x8D:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_AMD_PHENOM_X4_QUAD_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x8E:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_AMD_PHENOM_X2_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x8F:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_AMD_ATHLON_X2_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x90:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PA_RISC_FAMILY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xA0:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_V30_FAMILY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xA1:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_3200_SERIES_QUAD_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xA2:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_3000_SERIES_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xA3:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_5300_SERIES_QUAD_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xA4:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_5100_SERIES_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xA5:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_5000_SERIES_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xA6:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_LV_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xA7:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_ULV_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xA8:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_7100_SERIES_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xA9:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_5400_SERIES_QUAD_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xAA:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_QUAD_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xAB:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_5200_SERIES_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xAC:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_7200_SERIES_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xAD:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_7300_SERIES_QUAD_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xAE:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_7400_SERIES_QUAD_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xAF:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_7400_SERIES_MULTI_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xB0:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PENTIUM_III_XEON), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xC0:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_CORE2_SOLO), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xC1:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_CORE2_EXTREME), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xC2:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_CORE2_QUAD), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xC3:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_CORE2_EXTREME), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xC4:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_CORE2_DUO_MOBILE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xC5:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_CORE2_SOLO_MOBILE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xC6:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_CORE_I7), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xC7:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_CELERON_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xC8:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"IBM 390\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xC9:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"G4\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xCA:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"G5\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xCB:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"G6\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xCC:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"zArchitectur\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xD2:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"ViaC7M\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xD3:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"ViaC7D\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xD4:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"ViaC7\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xD5:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Eden\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xD6:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_MULTI_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xD7:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_3_SERIES_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xD8:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_3_SERIES_QUAD_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xDA:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_5_SERIES_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xDB:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_5_SERIES_QUAD_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xDD:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_7_SERIES_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xDE:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_7_SERIES_QUAD_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xDF:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INTEL_XEON_7_SERIES_MULTI_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xE6:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_AMD_EMBEDDED_OPTERON_QUAD_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xE7:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_AMD_PHENOM_TRIPLE_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xE8:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_AMD_TURION_ULTRA_DUAL_CORE_MOBILE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xE9:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_AMD_TURION_DUAL_CORE_MOBILE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xEA:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_AMD_ATHLON_DUAL_CORE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xEB:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_AMD_SEMPRON_SI), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xFA:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"i860\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xFB:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"i960\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync default:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // In order to reduce code quality notice of
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // case & break not pair, so
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // move multiple case into the else part and
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // use if/else to check value.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Family >= 0x13 && Family <= 0x17) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_RSVD_FOR_SPEC_M1), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Family >= 0x1A && Family <= 0x1F) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_RSVD_FOR_SPEC_K5), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Family >= 0xB1 && Family <= 0xBF) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_RSVD_FOR_SPEC_PENTIUM), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNDEFINED_PROC_FAMILY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // end switch
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display processor family information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Family2 The family value.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option The option value.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplayProcessorFamily2 (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT16 Family2,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Print prompt message
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PROCESSOR_FAMILY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Print option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (Family2, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Use switch to check
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (Family2) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x104:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"SH-3\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x105:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"SH-4\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x118:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"ARM\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x119:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"StrongARM\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x12C:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"6x86\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x12D:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"MediaGX\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x12E:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"MII\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x140:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"WinChip\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x15E:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"DSP\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x1F4:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"Video Processor\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync default:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNDEFINED_PROC_FAMILY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display processor voltage information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Voltage The Voltage.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bit 7 Set to 0, indicating 'legacy' mode for processor voltage
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bits 6:4 Reserved, must be zero
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bits 3:0 Voltage Capability.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync A Set bit indicates that the voltage is supported.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bit 0 - 5V
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bit 1 - 3.3V
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bit 2 - 2.9V
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bit 3 - Reserved, must be zero.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Note:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Setting of multiple bits indicates the socket is configurable
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync If bit 7 is set to 1, the remaining seven bits of the field are set to
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync contain the processor's current voltage times 10.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync For example, the field value for a processor voltage of 1.8 volts would be
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 92h = 80h + (1.8 * 10) = 80h + 18 = 80h +12h.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option The option.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplayProcessorVoltage (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Voltage,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PROC_INFO), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Print option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (Voltage, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Voltage, 7) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PROC_CURRENT_VOLTAGE), gShellDebug1HiiHandle, (Voltage - 0x80));
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Voltage, 0) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_5V_SUPOPRTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Voltage, 1) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_33V_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Voltage, 2) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_29V_SUPPORTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // check the reserved zero bits:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Voltage, 3) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BIT3_NOT_ZERO), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Voltage, 4) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BIT4_NOT_ZERO), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Voltage, 5) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BIT5_NOT_ZERO), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Voltage, 6) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BIT6_NOT_ZERO), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display processor information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Status The status.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncBit 7 Reserved, must be 0
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncBit 6 CPU Socket Populated
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 1 - CPU Socket Populated
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 0 - CPU Socket UnpopulatedBits
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 5:3 Reserved, must be zero
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bits 2:0 CPU Status
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 0h - Unknown
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 1h - CPU Enabled
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 2h - CPU Disabled by User via BIOS Setup
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 3h - CPU Disabled By BIOS (POST Error)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 4h - CPU is Idle, waiting to be enabled.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 5-6h - Reserved
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 7h - Other
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option The option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplayProcessorStatus (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Status,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PROC_STATUS), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (Status, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Status, 7) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ERROR_BIT7), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (BIT (Status, 5) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ERROR_BIT5), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (BIT (Status, 4) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ERROR_BIT4), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (BIT (Status, 3) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ERROR_BIT3), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Check BIT 6
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Status, 6) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_CPU_SOCKET_POPULATED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_CPU_SOCKET_UNPOPULATED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Check BITs 2:0
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (Status & 0x07) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNKNOWN), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 1:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_CPU_ENABLED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 2:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_CPU_DISABLED_BY_USER), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 3:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_CPU_DIABLED_BY_BIOS), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 4:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_CPU_IDLE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 7:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_OTHERS), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync default:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_RESERVED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display information about Memory Controller Information (Type 5).
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Size Memory size.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] SlotNum Which slot is this about.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option Option for the level of detail output required.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplayMaxMemoryModuleSize (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Size,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 SlotNum,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINTN MaxSize;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SIZE_LARGEST_MEM), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // MaxSize is determined by follow formula
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync MaxSize = (UINTN) 1 << Size;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ONE_VAR_MB), gShellDebug1HiiHandle, MaxSize);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Option >= SHOW_DETAIL) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_MAX_AMOUNT_MEM), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ONE_VAR_MB), gShellDebug1HiiHandle, MaxSize, SlotNum, MaxSize * SlotNum);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display information about memory configuration handles.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Handles The buffer of handles to output info on.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] SlotNum The number of handles in the above buffer.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option Option for the level of detail output required.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplayMemoryModuleConfigHandles (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT16 *Handles,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 SlotNum,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 Index;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_HANDLES_CONTROLLED), gShellDebug1HiiHandle, SlotNum);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Option >= SHOW_DETAIL) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // No handle, Handles is INVALID.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (SlotNum == 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync return ;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_HANDLES_LIST_CONTROLLED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync for (Index = 0; Index < SlotNum; Index++) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_HANDLE), gShellDebug1HiiHandle, Index + 1, Handles[Index]);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display Memory Module Information (Type 6).
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] BankConnections
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplayMmBankConnections (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 BankConnections,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 High;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 Low;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BANK_CONNECTIONS), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Print option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (BankConnections, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Divide it to high and low
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync High = (UINT8) (BankConnections & 0xF0);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Low = (UINT8) (BankConnections & 0x0F);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (High != 0xF) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Low != 0xF) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BANK_RAS), gShellDebug1HiiHandle, High, Low, High, Low);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BANK_RAS_2), gShellDebug1HiiHandle, High, High);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Low != 0xF) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BANK_RAS_2), gShellDebug1HiiHandle, Low, Low);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_NO_BANKS_CONNECTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display memory informcation.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bits 0:6 Size (n),
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync where 2**n is the size in MB with three special-case values:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 7Dh Not determinable (Installed Size only)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 7Eh Module is installed, but no memory has been enabled
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 7Fh Not installed
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bit 7 Defines whether the memory module has a single- (0)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync or double-bank (1) connection.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Size - The size
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option - The option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplayMmMemorySize (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Size,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINT8 Value;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_MEMORY_SIZE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Print option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (Size, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Get the low bits(0-6 bit)
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Value = (UINT8) (Size & 0x7F);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Value == 0x7D) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_MEM_SIZE_NOT_DETERMINABLE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Value == 0x7E) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_MODULE_INSTALLED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Value == 0x7F) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_NOT_INSTALLED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_MEM_SIZE), gShellDebug1HiiHandle, 1 << Value);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Size, 7) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_MEM_MODULE_DOUBLE_BANK), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_MEM_MODULE_SINGLE_BANK), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync The Slot ID field of the System Slot structure provides a mechanism to
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync correlate the physical attributes of the slot to its logical access method
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync (which varies based on the Slot Type field).
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] SlotId - The slot ID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] SlotType - The slot type
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option - The Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplaySystemSlotId (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT16 SlotId,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 SlotType,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Display slot type first
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync DisplaySystemSlotType (SlotType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SLOT_ID), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // print option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (SlotType, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (SlotType) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Slot Type: MCA
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x04:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_LOGICAL_MICRO_CHAN), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (SlotId > 0 && SlotId < 15) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ONE_VAR_D), gShellDebug1HiiHandle, SlotId);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ERROR_NOT_1_15), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // EISA
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x05:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_LOGICAL_EISA_NUM), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (SlotId > 0 && SlotId < 15) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ONE_VAR_D), gShellDebug1HiiHandle, SlotId);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ERROR_NOT_1_15), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Slot Type: PCI
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x06:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_VALUE_PRESENT), gShellDebug1HiiHandle, SlotId);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // PCMCIA
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0x07:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_IDENTIFIES_ADAPTER_NUM), gShellDebug1HiiHandle, SlotId);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Slot Type: PCI-E
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0xA5:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_VALUE_PRESENT), gShellDebug1HiiHandle, SlotId);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync default:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (SlotType >= 0x0E && SlotType <= 0x12) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_VALUE_PRESENT), gShellDebug1HiiHandle, SlotId);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNDEFINED_SLOT_ID), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display System Boot Information (Type 32) information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Parameter The parameter.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option The options.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplaySystemBootStatus (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Parameter,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SYSTEM_BOOT_STATUS), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Print option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (Parameter, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Check value and print
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (Parameter == 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_NO_ERRORS_DETECTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Parameter == 1) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_NO_BOOTABLE_MEDIA), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Parameter == 2) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_NORMAL_OP_SYSTEM), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Parameter == 3) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_FIRMWARE_DETECTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Parameter == 4) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_OP_SYSTEM), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Parameter == 5) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_USER_REQUESTED_BOOT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Parameter == 6) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SYSTEM_SECURITY_VIOLATION), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Parameter == 7) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PREV_REQ_IMAGE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Parameter == 8) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_WATCHDOG_TIMER), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Parameter >= 9 && Parameter <= 127) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_RSVD_FUTURE_ASSIGNMENT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Parameter >= 128 && Parameter <= 191) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_VENDOR_OEM_SPECIFIC), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else if (Parameter >= 192) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_PRODUCT_SPEC_IMPLMENTATION), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ERROR_VALUE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display Portable Battery (Type 22) information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync The date the cell pack was manufactured, in packed format:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bits 15:9 Year, biased by 1980, in the range 0 to 127.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bits 8:5 Month, in the range 1 to 12.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bits 4:0 Date, in the range 1 to 31.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync For example, 01 February 2000 would be identified as
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 0010 1000 0100 0001b (0x2841).
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Date The date
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option The option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplaySBDSManufactureDate (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT16 Date,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINTN Day;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINTN Month;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINTN Year;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SBDS_MANUFACTURE_DATE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (Date, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Print date
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Day = Date & 0x001F;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Month = (Date & 0x00E0) >> 5;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Year = ((Date & 0xFF00) >> 8) + 1980;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_MONTH_DAY_YEAR), gShellDebug1HiiHandle, Day, Month, Year);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display System Reset (Type 23) information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncIdentifies the system-reset capabilities for the system.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bits 7:6 Reserved for future assignment via this specification, set to 00b.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bit 5 System contains a watchdog timer, either True (1) or False (0).
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bits 4:3 Boot Option on Limit.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Identifies the system action to be taken when the Reset Limit is reached, one of:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 00b Reserved, do not use.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 01b Operating system
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 10b System utilities
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 11b Do not rebootBits
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 2:1 Boot Option. Indicates the action to be taken following a watchdog reset, one of:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 00b Reserved, do not use.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 01b Operating system
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 10b System utilities
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 11b Do not reboot
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Bit 0 Status.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 1b The system reset is enabled by the user
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 0b The system reset is not enabled by the user
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Reset Reset
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option The option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplaySystemResetCapabilities (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Reset,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINTN Temp;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SYSTEM_RESET_CAPABILITIES), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (Reset, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Check reserved bits 7:6
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if ((Reset & 0xC0) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BITS_RESERVED_ZERO), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Watch dog
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Reset, 5) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_WATCHDOG_TIMER_2), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SYSTEM_NOT_CONTAIN_TIMER), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Boot Option on Limit
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Temp = (Reset & 0x18) >> 3;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BOOT_OPTION_LIMIT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (Temp) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_RESERVED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 1:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_OP_SYSTEM_2), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 2:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SYSTEM_UTIL), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 3:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_DO_NOT_REBOOT_BITS), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Boot Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Temp = (Reset & 0x06) >> 1;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BOOT_OPTION), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (Temp) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_RESERVED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 1:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_OP_SYSTEM_2), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 2:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SYSTEM_UTIL), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 3:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_DO_NOT_REBOOT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Reset enable flag
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if ((Reset & 0x01) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"The system reset is enabled by the user\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Print (L"The system reset is disabled by the user\n");
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display Hardware Security (Type 24) information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncIdentifies the password and reset status for the system:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncBits 7:6 Power-on Password Status, one of:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 00b Disabled
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 01b Enabled
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 10b Not Implemented
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 11b Unknown
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncBits 5:4 Keyboard Password Status, one of:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 00b Disabled
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 01b Enabled
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 10b Not Implemented
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 11b Unknown
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncBits 3:2 Administrator Password Status, one of:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 00b Disabled
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 01b Enabled
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 10b Not Implemented
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 11b Unknown
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncBits 1:0 Front Panel Reset Status, one of:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 00b Disabled
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 01b Enabled
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 10b Not Implemented
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync 11b Unknown
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Settings The device settings.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option The device options.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplayHardwareSecuritySettings (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Settings,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINTN Temp;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_HARDWARE_SECURITY_SET), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (Settings, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Power-on Password Status
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Temp = (Settings & 0xC0) >> 6;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_POWER_ON_PASSWORD), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (Temp) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_DISABLED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 1:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ENABLED_NEWLINE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 2:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_NOT_IMPLEMENTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 3:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNKNOWN), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Keyboard Password Status
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Temp = (Settings & 0x30) >> 4;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_KEYBOARD_PASSWORD), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (Temp) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_DISABLED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 1:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ENABLED_NEWLINE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 2:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_NOT_IMPLEMENTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 3:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNKNOWN), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Administrator Password Status
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Temp = (Settings & 0x0C) >> 2;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ADMIN_PASSWORD_STATUS), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (Temp) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_DISABLED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 1:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ENABLED_NEWLINE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 2:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_NOT_IMPLEMENTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 3:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNKNOWN), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Front Panel Reset Status
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Temp = Settings & 0x3;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_FRONT_PANEL_RESET), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (Temp) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 0:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_DISABLED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 1:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_ENABLED_NEWLINE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 2:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_NOT_IMPLEMENTED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 3:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNKNOWN), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display Out-of-Band Remote Access (Type 30) information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Connections The device characteristics.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option The device options.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplayOBRAConnections (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Connections,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_CONNECTIONS), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (Connections, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Check reserved bits 7:2
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if ((Connections & 0xFC) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BITS_RESERVED_ZERO_2), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Outbound Connection
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Connections, 1) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_OUTBOUND_CONN_ENABLED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_OTUBOUND_CONN_DISABLED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Inbound Connection
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Connections, 0) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INBOIUND_CONN_ENABLED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INBOUND_CONN_DISABLED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync/**
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Display System Power Supply (Type 39) information.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Characteristics The device characteristics.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync @param[in] Option The device options.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync**/
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncVOID
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncDisplaySPSCharacteristics (
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT16 Characteristics,
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync IN UINT8 Option
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync )
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync{
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync UINTN Temp;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_POWER_SUPPLY_CHAR), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync PRINT_INFO_OPTION (Characteristics, Option);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Check reserved bits 15:14
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if ((Characteristics & 0xC000) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BITS_15_14_RSVD), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Bits 13:10 - DMTF Power Supply Type
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_TYPE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Temp = (Characteristics & 0x1C00) << 10;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (Temp) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 1:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_OTHER_SPACE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 2:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNKNOWN), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 3:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_LINEAR), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 4:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_SWITCHING), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 5:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_BATTERY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 6:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UPS), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 7:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_CONVERTER), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 8:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_REGULATOR), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync default:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_RESERVED_2), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Bits 9:7 - Status
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_STATUS_DASH), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Temp = (Characteristics & 0x380) << 7;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (Temp) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 1:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_OTHER_SPACE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 2:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNKNOWN), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 3:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_OK), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 4:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_NON_CRITICAL), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 5:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_CRITICAL_POWER_SUPPLY), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync default:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNDEFINED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Bits 6:3 - DMTF Input Voltage Range Switching
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_INPUT_VOLTAGE_RANGE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync Temp = (Characteristics & 0x78) << 3;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync switch (Temp) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 1:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_OTHER_SPACE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 2:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_UNKNOWN), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 3:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_MANUAL), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 4:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_AUTO_SWITCH), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 5:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_WIDE_RANGE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync case 6:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_NOT_APPLICABLE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync default:
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_RESERVED_3), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync break;
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Power supply is unplugged from the wall
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Characteristics, 2) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_POWER_SUPPLY_UNPLUGGED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_POWER_SUPPLY_PLUGGED), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // Power supply is present
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Characteristics, 1) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_POWER_SUPPLY_PRESENT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_POWER_SUPPLY_NOT_PRESENT), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync // hot replaceable
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync //
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync if (BIT (Characteristics, 0) != 0) {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_POWER_SUPPLY_REPLACE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync } else {
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_PRINTINFO_POWER_SUPPLY_NOT_REPLACE), gShellDebug1HiiHandle);
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync }
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync}