X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=ShellPkg%2FLibrary%2FUefiShellDebug1CommandsLib%2FSmbiosView%2FPrintInfo.h;h=fd219773de174a2d216618f34a3972f54cc8a9c5;hb=e797a806a8d090a09a782fe10ba2765154579d4b;hp=a6c8ef6ba8d771e931b3d449e24a356a7684d72a;hpb=5d73d92f560b079f41f62e91d15ddc1fda897867;p=mirror_edk2.git
diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.h b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.h
index a6c8ef6ba8..fd219773de 100644
--- a/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.h
+++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/PrintInfo.h
@@ -1,21 +1,16 @@
/** @file
Module to clarify the element info of the smbios structure.
- Copyright (c) 2005 - 2010, Intel Corporation. All rights reserved.
- This program and the accompanying materials
- are licensed and made available under the terms and conditions of the BSD License
- which accompanies this distribution. The full text of the license may be found at
- http://opensource.org/licenses/bsd-license.php
-
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+ Copyright (c) 2005 - 2015, Intel Corporation. All rights reserved.
+ (C) Copyright 2017 - 2019 Hewlett Packard Enterprise Development LP
+ SPDX-License-Identifier: BSD-2-Clause-Patent
**/
-#ifndef _SMBIOS_PRINT_INFO_H
-#define _SMBIOS_PRINT_INFO_H
+#ifndef _SMBIOS_PRINT_INFO_H_
+#define _SMBIOS_PRINT_INFO_H_
-#include "LibSmbios.h"
+#include
extern UINT8 SmbiosMajorVersion;
extern UINT8 SmbiosMinorVersion;
@@ -34,159 +29,413 @@ extern UINT8 SmbiosMinorVersion;
#define AS_UINT32(pData) (*((UINT32 *) pData))
#define AS_UINT64(pData) (*((UINT64 *) pData))
+/**
+ Print the info of EPS(Entry Point Structure).
+
+ @param[in] SmbiosTable Pointer to the SMBIOS table entry point.
+ @param[in] Option Display option.
+**/
VOID
SmbiosPrintEPSInfo (
- IN SMBIOS_STRUCTURE_TABLE *pSmbiosTable,
- IN UINT8 Option
+ IN SMBIOS_TABLE_ENTRY_POINT *SmbiosTable,
+ IN UINT8 Option
+ );
+
+/**
+ Print the info of 64-bit EPS(Entry Point Structure).
+
+ @param[in] SmbiosTable Pointer to the SMBIOS table entry point.
+ @param[in] Option Display option.
+**/
+VOID
+Smbios64BitPrintEPSInfo (
+ IN SMBIOS_TABLE_3_0_ENTRY_POINT *SmbiosTable,
+ IN UINT8 Option
);
+/**
+ This function print the content of the structure pointed by Struct.
+
+ @param[in] Struct Point to the structure to be printed.
+ @param[in] Option Print option of information detail.
+
+ @retval EFI_SUCCESS Successfully Printing this function.
+ @retval EFI_INVALID_PARAMETER Invalid Structure.
+ @retval EFI_UNSUPPORTED Unsupported.
+**/
EFI_STATUS
SmbiosPrintStructure (
- IN SMBIOS_STRUCTURE_POINTER *pStruct,
+ IN SMBIOS_STRUCTURE_POINTER *Struct,
IN UINT8 Option
);
-//
-// BIOS Information (Type 0)
-//
+/**
+ Display BIOS Information (Type 0) information.
+
+ @param[in] Chara The information bits.
+ @param[in] Option The optional information.
+**/
VOID
DisplayBiosCharacteristics (
- UINT64 chara,
- UINT8 Option
+ IN UINT64 Chara,
+ IN UINT8 Option
);
+
+/**
+ Display Bios Characteristice extensions1 information.
+
+ @param[in] Byte1 The information.
+ @param[in] Option The optional information.
+**/
VOID
DisplayBiosCharacteristicsExt1 (
- UINT8 byte1,
- UINT8 Option
+ IN UINT8 Byte1,
+ IN UINT8 Option
);
+
+/**
+ Display Bios Characteristice extensions2 information.
+
+ @param[in] Byte2 The information.
+ @param[in] Option The optional information.
+**/
VOID
DisplayBiosCharacteristicsExt2 (
- UINT8 byte2,
- UINT8 Option
+ IN UINT8 Byte2,
+ IN UINT8 Option
);
-//
-// Processor Information (Type 4)
-//
+/**
+ Display Processor Information (Type 4) information.
+
+ @param[in] Family The family value.
+ @param[in] Option The option value.
+**/
VOID
DisplayProcessorFamily (
UINT8 Family,
UINT8 Option
);
+/**
+ Display processor family information.
+
+ @param[in] Family2 The family value.
+ @param[in] Option The option value.
+**/
VOID
DisplayProcessorFamily2 (
- UINT16 Family2,
- UINT8 Option
+ IN UINT16 Family2,
+ IN UINT8 Option
);
+/**
+ Display processor voltage information.
+
+ @param[in] Voltage The Voltage.
+ Bit 7 Set to 0, indicating 'legacy' mode for processor voltage
+ Bits 6:4 Reserved, must be zero
+ Bits 3:0 Voltage Capability.
+ A Set bit indicates that the voltage is supported.
+ Bit 0 - 5V
+ Bit 1 - 3.3V
+ Bit 2 - 2.9V
+ Bit 3 - Reserved, must be zero.
+
+ Note:
+ Setting of multiple bits indicates the socket is configurable
+ If bit 7 is set to 1, the remaining seven bits of the field are set to
+ contain the processor's current voltage times 10.
+ For example, the field value for a processor voltage of 1.8 volts would be
+ 92h = 80h + (1.8 * 10) = 80h + 18 = 80h +12h.
+
+ @param[in] Option The option.
+**/
VOID
DisplayProcessorVoltage (
- UINT8 Voltage,
- UINT8 Option
+ IN UINT8 Voltage,
+ IN UINT8 Option
);
+
+/**
+ Display processor information.
+
+ @param[in] Status The status.
+Bit 7 Reserved, must be 0
+Bit 6 CPU Socket Populated
+ 1 - CPU Socket Populated
+ 0 - CPU Socket Unpopulated
+Bits 5:3 Reserved, must be zero
+Bits 2:0 CPU Status
+ 0h - Unknown
+ 1h - CPU Enabled
+ 2h - CPU Disabled by User via BIOS Setup
+ 3h - CPU Disabled By BIOS (POST Error)
+ 4h - CPU is Idle, waiting to be enabled.
+ 5-6h - Reserved
+ 7h - Other
+
+ @param[in] Option The option
+**/
VOID
DisplayProcessorStatus (
- UINT8 Status,
- UINT8 Option
+ IN UINT8 Status,
+ IN UINT8 Option
);
-//
-// Memory Controller Information (Type 5)
-//
+/**
+ Display information about Memory Controller Information (Type 5).
+
+ @param[in] Size Memory size.
+ @param[in] SlotNum Which slot is this about.
+ @param[in] Option Option for the level of detail output required.
+**/
VOID
DisplayMaxMemoryModuleSize (
- UINT8 Size,
- UINT8 SlotNum,
- UINT8 Option
+ IN UINT8 Size,
+ IN UINT8 SlotNum,
+ IN UINT8 Option
);
+
+/**
+ Display information about memory configuration handles.
+
+ @param[in] Handles The buffer of handles to output info on.
+ @param[in] SlotNum The number of handles in the above buffer.
+ @param[in] Option Option for the level of detail output required.
+**/
VOID
DisplayMemoryModuleConfigHandles (
- UINT16 *pHandles,
- UINT8 SlotNum,
- UINT8 Option
+ IN UINT16 *Handles,
+ IN UINT8 SlotNum,
+ IN UINT8 Option
);
-//
-// Memory Module Information (Type 6)
-//
+/**
+ Display Memory Module Information (Type 6).
+
+ @param[in] BankConnections
+ @param[in] Option
+**/
VOID
DisplayMmBankConnections (
- UINT8 BankConnections,
- UINT8 Option
+ IN UINT8 BankConnections,
+ IN UINT8 Option
);
+
+/**
+ Display memory informcation.
+
+ Bits 0:6 Size (n),
+ where 2**n is the size in MB with three special-case values:
+ 7Dh Not determinable (Installed Size only)
+ 7Eh Module is installed, but no memory has been enabled
+ 7Fh Not installed
+ Bit 7 Defines whether the memory module has a single- (0)
+ or double-bank (1) connection.
+
+ @param[in] Size - The size
+ @param[in] Option - The option
+**/
VOID
DisplayMmMemorySize (
- UINT8 Size,
- UINT8 Option
+ IN UINT8 Size,
+ IN UINT8 Option
);
-//
-// System Slots (Type 9)
-//
+/**
+ Display Cache Configuration.
+
+ @param[in] CacheConfiguration Cache Configuration.
+Bits 15:10 Reserved, must be 0
+Bits 9:8 Operational Mode
+ 0h - Write Through
+ 1h - Write Back
+ 2h - Varies with Memory Address
+ 3h - Unknown
+Bit 7 Enabled/Disabled
+ 1 - Enabled
+ 0 - Disabled
+Bits 6:5 Location
+ 0h - Internal
+ 1h - External
+ 2h - Reserved
+ 3h - Unknown
+Bit 4 Reserved, must be zero
+Bit 3 Cache Socketed
+ 1 - Socketed
+ 0 - Unsocketed
+Bits 2:0 Cache Level
+ 1 through 8 (For example, an L1 cache would
+ use value 000b and an L3 cache would use 010b.)
+
+ @param[in] Option The option
+**/
+VOID
+DisplayCacheConfiguration (
+ IN UINT16 CacheConfiguration,
+ IN UINT8 Option
+ );
+
+/**
+ The Slot ID field of the System Slot structure provides a mechanism to
+ correlate the physical attributes of the slot to its logical access method
+ (which varies based on the Slot Type field).
+
+ @param[in] SlotId - The slot ID
+ @param[in] SlotType - The slot type
+ @param[in] Option - The Option
+**/
VOID
DisplaySystemSlotId (
- UINT16 SlotId,
- UINT8 SlotType,
- UINT8 Option
+ IN UINT16 SlotId,
+ IN UINT8 SlotType,
+ IN UINT8 Option
);
-//
-// Physical Memory Array (Type 16)
-// Memory Device (Type 17)
-// Memory Array Mapped Address (Type 19)
-// Memory Device Mapped Address (Type 20)
-// Portable Battery (Type 22)
-//
+/**
+ Display Portable Battery (Type 22) information.
+
+ The date the cell pack was manufactured, in packed format:
+ Bits 15:9 Year, biased by 1980, in the range 0 to 127.
+ Bits 8:5 Month, in the range 1 to 12.
+ Bits 4:0 Date, in the range 1 to 31.
+ For example, 01 February 2000 would be identified as
+ 0010 1000 0100 0001b (0x2841).
+
+ @param[in] Date The date
+ @param[in] Option The option
+**/
VOID
DisplaySBDSManufactureDate (
- UINT16 Date,
- UINT8 Option
+ IN UINT16 Date,
+ IN UINT8 Option
);
-//
-// System Reset (Type 23)
-//
+/**
+ Display System Reset (Type 23) information.
+
+ Routine Description:
+ Identifies the system-reset capabilities for the system.
+ Bits 7:6 Reserved for future assignment via this specification, set to 00b.
+ Bit 5 System contains a watchdog timer, either True (1) or False (0).
+ Bits 4:3 Boot Option on Limit.
+ Identifies the system action to be taken when the Reset Limit is reached, one of:
+ 00b Reserved, do not use.
+ 01b Operating system
+ 10b System utilities
+ 11b Do not rebootBits
+ 2:1 Boot Option. Indicates the action to be taken following a watchdog reset, one of:
+ 00b Reserved, do not use.
+ 01b Operating system
+ 10b System utilities
+ 11b Do not reboot
+ Bit 0 Status.
+ 1b The system reset is enabled by the user
+ 0b The system reset is not enabled by the user
+
+ @param[in] Reset Reset
+ @param[in] Option The option
+**/
VOID
DisplaySystemResetCapabilities (
- UINT8 Reset,
- UINT8 Option
+ IN UINT8 Reset,
+ IN UINT8 Option
);
-//
-// Hardware Security (Type 24)
-//
+/**
+ Display Hardware Security (Type 24) information.
+
+ Routine Description:
+ Identifies the password and reset status for the system:
+
+ Bits 7:6 Power-on Password Status, one of:
+ 00b Disabled
+ 01b Enabled
+ 10b Not Implemented
+ 11b Unknown
+ Bits 5:4 Keyboard Password Status, one of:
+ 00b Disabled
+ 01b Enabled
+ 10b Not Implemented
+ 11b Unknown
+ Bits 3:2 Administrator Password Status, one of:
+ 00b Disabled
+ 01b Enabled
+ 10b Not Implemented
+ 11b Unknown
+ Bits 1:0 Front Panel Reset Status, one of:
+ 00b Disabled
+ 01b Enabled
+ 10b Not Implemented
+ 11b Unknown
+
+ @param[in] Settings The device settings.
+ @param[in] Option The device options.
+**/
VOID
DisplayHardwareSecuritySettings (
- UINT8 Settings,
- UINT8 Option
+ IN UINT8 Settings,
+ IN UINT8 Option
);
-//
-// Out-of-Band Remote Access (Type 30)
-//
+/**
+ Display Out-of-Band Remote Access (Type 30) information.
+
+ @param[in] Connections The device characteristics.
+ @param[in] Option The device options.
+**/
VOID
DisplayOBRAConnections (
- UINT8 Connections,
- UINT8 Option
+ IN UINT8 Connections,
+ IN UINT8 Option
);
-//
-// System Boot Information (Type 32)
-//
+/**
+ Display System Boot Information (Type 32) information.
+
+ @param[in] Parameter The parameter.
+ @param[in] Option The options.
+**/
VOID
DisplaySystemBootStatus (
- UINT8 Parameter,
- UINT8 Option
+ IN UINT8 Parameter,
+ IN UINT8 Option
);
-//
-// System Power Supply (Type 39)
-//
+/**
+ Display System Power Supply (Type 39) information.
+
+ @param[in] Characteristics The device characteristics.
+ @param[in] Option The device options.
+**/
VOID
DisplaySPSCharacteristics (
- UINT16 Characteristics,
- UINT8 Option
+ IN UINT16 Characteristics,
+ IN UINT8 Option
);
+/**
+ Display TPM Device (Type 43) Characteristics.
+
+ @param[in] Chara The information bits.
+ @param[in] Option The optional information.
+**/
+VOID
+DisplayTpmDeviceCharacteristics (
+ IN UINT64 Chara,
+ IN UINT8 Option
+ );
+
+/**
+ Display Processor Architecture Type (Type 44).
+
+ @param[in] Key The key of the structure.
+ @param[in] Option The optional information.
+**/
+VOID
+DisplayProcessorArchitectureType (
+ IN UINT8 Key,
+ IN UINT8 Option
+ );
#endif