15d73d92f560b079f41f62e91d15ddc1fda897867jcarsey/** @file 25d73d92f560b079f41f62e91d15ddc1fda897867jcarsey Module to clarify the element info of the smbios structure. 35d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 4ec8a502e66fe190a77546e82820e921cfa9d05e0Elvin Li Copyright (c) 2005 - 2015, Intel Corporation. All rights reserved.<BR> 55d73d92f560b079f41f62e91d15ddc1fda897867jcarsey This program and the accompanying materials 65d73d92f560b079f41f62e91d15ddc1fda897867jcarsey are licensed and made available under the terms and conditions of the BSD License 75d73d92f560b079f41f62e91d15ddc1fda897867jcarsey which accompanies this distribution. The full text of the license may be found at 85d73d92f560b079f41f62e91d15ddc1fda897867jcarsey http://opensource.org/licenses/bsd-license.php 95d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 105d73d92f560b079f41f62e91d15ddc1fda897867jcarsey THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 115d73d92f560b079f41f62e91d15ddc1fda897867jcarsey WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 125d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 135d73d92f560b079f41f62e91d15ddc1fda897867jcarsey**/ 145d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 15a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey#ifndef _SMBIOS_PRINT_INFO_H_ 16a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey#define _SMBIOS_PRINT_INFO_H_ 175d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 18187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng#include <IndustryStandard/SmBios.h> 195d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 205d73d92f560b079f41f62e91d15ddc1fda897867jcarseyextern UINT8 SmbiosMajorVersion; 215d73d92f560b079f41f62e91d15ddc1fda897867jcarseyextern UINT8 SmbiosMinorVersion; 225d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 235d73d92f560b079f41f62e91d15ddc1fda897867jcarsey#define SHOW_NONE 0x00 245d73d92f560b079f41f62e91d15ddc1fda897867jcarsey#define SHOW_OUTLINE 0x01 255d73d92f560b079f41f62e91d15ddc1fda897867jcarsey#define SHOW_NORMAL 0x02 265d73d92f560b079f41f62e91d15ddc1fda897867jcarsey#define SHOW_DETAIL 0x03 275d73d92f560b079f41f62e91d15ddc1fda897867jcarsey// 285d73d92f560b079f41f62e91d15ddc1fda897867jcarsey// SHOW_ALL: WaitEnter() not wait input. 295d73d92f560b079f41f62e91d15ddc1fda897867jcarsey// 305d73d92f560b079f41f62e91d15ddc1fda897867jcarsey#define SHOW_ALL 0x04 315d73d92f560b079f41f62e91d15ddc1fda897867jcarsey#define SHOW_STATISTICS 0x05 325d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 335d73d92f560b079f41f62e91d15ddc1fda897867jcarsey#define AS_UINT16(pData) (*((UINT16 *) pData)) 345d73d92f560b079f41f62e91d15ddc1fda897867jcarsey#define AS_UINT32(pData) (*((UINT32 *) pData)) 355d73d92f560b079f41f62e91d15ddc1fda897867jcarsey#define AS_UINT64(pData) (*((UINT64 *) pData)) 365d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 37a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 38a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Print the info of EPS(Entry Point Structure). 39a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 40a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] SmbiosTable Pointer to the SMBIOS table entry point. 41a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option Display option. 42a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 435d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 445d73d92f560b079f41f62e91d15ddc1fda897867jcarseySmbiosPrintEPSInfo ( 45187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng IN SMBIOS_TABLE_ENTRY_POINT *SmbiosTable, 46187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng IN UINT8 Option 47ec8a502e66fe190a77546e82820e921cfa9d05e0Elvin Li ); 48ec8a502e66fe190a77546e82820e921cfa9d05e0Elvin Li 49ec8a502e66fe190a77546e82820e921cfa9d05e0Elvin Li/** 50ec8a502e66fe190a77546e82820e921cfa9d05e0Elvin Li Print the info of 64-bit EPS(Entry Point Structure). 51ec8a502e66fe190a77546e82820e921cfa9d05e0Elvin Li 52ec8a502e66fe190a77546e82820e921cfa9d05e0Elvin Li @param[in] SmbiosTable Pointer to the SMBIOS table entry point. 53ec8a502e66fe190a77546e82820e921cfa9d05e0Elvin Li @param[in] Option Display option. 54ec8a502e66fe190a77546e82820e921cfa9d05e0Elvin Li**/ 55ec8a502e66fe190a77546e82820e921cfa9d05e0Elvin LiVOID 56ec8a502e66fe190a77546e82820e921cfa9d05e0Elvin LiSmbios64BitPrintEPSInfo ( 57ec8a502e66fe190a77546e82820e921cfa9d05e0Elvin Li IN SMBIOS_TABLE_3_0_ENTRY_POINT *SmbiosTable, 58ec8a502e66fe190a77546e82820e921cfa9d05e0Elvin Li IN UINT8 Option 595d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 605d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 61a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 62a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey This function print the content of the structure pointed by Struct. 63a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 64a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Struct Point to the structure to be printed. 65a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option Print option of information detail. 66a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 67a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @retval EFI_SUCCESS Successfully Printing this function. 68a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @retval EFI_INVALID_PARAMETER Invalid Structure. 69a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @retval EFI_UNSUPPORTED Unsupported. 70a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 715d73d92f560b079f41f62e91d15ddc1fda897867jcarseyEFI_STATUS 725d73d92f560b079f41f62e91d15ddc1fda897867jcarseySmbiosPrintStructure ( 73a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN SMBIOS_STRUCTURE_POINTER *Struct, 745d73d92f560b079f41f62e91d15ddc1fda897867jcarsey IN UINT8 Option 755d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 765d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 77a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 78a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display BIOS Information (Type 0) information. 79a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 80a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Chara The information bits. 81a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option The optional information. 82a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 835d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 845d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplayBiosCharacteristics ( 85a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT64 Chara, 86a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 875d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 88a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 89a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 90a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display Bios Characteristice extensions1 information. 91a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 92a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Byte1 The information. 93a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option The optional information. 94a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 955d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 965d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplayBiosCharacteristicsExt1 ( 97a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Byte1, 98a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 995d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 100a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 101a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 102a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display Bios Characteristice extensions2 information. 103a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 104a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Byte2 The information. 105a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option The optional information. 106a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 1075d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 1085d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplayBiosCharacteristicsExt2 ( 109a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Byte2, 110a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 1115d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 1125d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 113a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 114a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display Processor Information (Type 4) information. 115a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 116a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Family The family value. 117a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option The option value. 118a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 1195d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 1205d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplayProcessorFamily ( 1215d73d92f560b079f41f62e91d15ddc1fda897867jcarsey UINT8 Family, 1225d73d92f560b079f41f62e91d15ddc1fda897867jcarsey UINT8 Option 1235d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 1245d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 125a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 126a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display processor family information. 127a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 128a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Family2 The family value. 129a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option The option value. 130a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 1315d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 1325d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplayProcessorFamily2 ( 133a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT16 Family2, 134a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 1355d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 1365d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 137a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 138a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display processor voltage information. 139a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 140a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Voltage The Voltage. 141a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bit 7 Set to 0, indicating 'legacy' mode for processor voltage 142a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bits 6:4 Reserved, must be zero 143a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bits 3:0 Voltage Capability. 144a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey A Set bit indicates that the voltage is supported. 145a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bit 0 - 5V 146a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bit 1 - 3.3V 147a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bit 2 - 2.9V 148a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bit 3 - Reserved, must be zero. 149a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 150a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Note: 151a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Setting of multiple bits indicates the socket is configurable 152a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey If bit 7 is set to 1, the remaining seven bits of the field are set to 153a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey contain the processor's current voltage times 10. 154a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey For example, the field value for a processor voltage of 1.8 volts would be 155a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 92h = 80h + (1.8 * 10) = 80h + 18 = 80h +12h. 156a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 157a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option The option. 158a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 1595d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 1605d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplayProcessorVoltage ( 161a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Voltage, 162a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 1635d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 164a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 165a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 166a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display processor information. 167a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 168a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Status The status. 169187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzengBit 7 Reserved, must be 0 170187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzengBit 6 CPU Socket Populated 171187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 1 - CPU Socket Populated 172187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 0 - CPU Socket Unpopulated 173187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzengBits 5:3 Reserved, must be zero 174187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzengBits 2:0 CPU Status 175187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 0h - Unknown 176187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 1h - CPU Enabled 177187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 2h - CPU Disabled by User via BIOS Setup 178187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 3h - CPU Disabled By BIOS (POST Error) 179187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 4h - CPU is Idle, waiting to be enabled. 180187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 5-6h - Reserved 181187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 7h - Other 182a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 183a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option The option 184a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 1855d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 1865d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplayProcessorStatus ( 187a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Status, 188a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 1895d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 1905d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 191a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 192a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display information about Memory Controller Information (Type 5). 193a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 194a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Size Memory size. 195a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] SlotNum Which slot is this about. 196a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option Option for the level of detail output required. 197a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 1985d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 1995d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplayMaxMemoryModuleSize ( 200a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Size, 201a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 SlotNum, 202a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 2035d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 204a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 205a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 206a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display information about memory configuration handles. 207a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 208a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Handles The buffer of handles to output info on. 209a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] SlotNum The number of handles in the above buffer. 210a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option Option for the level of detail output required. 211a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 2125d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 2135d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplayMemoryModuleConfigHandles ( 214a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT16 *Handles, 215a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 SlotNum, 216a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 2175d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 2185d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 219a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 220a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display Memory Module Information (Type 6). 221a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 222a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] BankConnections 223a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option 224a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 2255d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 2265d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplayMmBankConnections ( 227a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 BankConnections, 228a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 2295d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 230a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 231a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 232a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display memory informcation. 233a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 234a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bits 0:6 Size (n), 235a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey where 2**n is the size in MB with three special-case values: 236a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 7Dh Not determinable (Installed Size only) 237a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 7Eh Module is installed, but no memory has been enabled 238a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 7Fh Not installed 239a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bit 7 Defines whether the memory module has a single- (0) 240a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey or double-bank (1) connection. 241a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 242a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Size - The size 243a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option - The option 244a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 2455d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 2465d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplayMmMemorySize ( 247a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Size, 248a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 2495d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 2505d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 251a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 252187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng Display Cache Configuration. 253187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 254187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng @param[in] CacheConfiguration Cache Configuration. 255187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzengBits 15:10 Reserved, must be 0 256187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzengBits 9:8 Operational Mode 257187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 0h - Write Through 258187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 1h - Write Back 259187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 2h - Varies with Memory Address 260187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 3h - Unknown 261187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzengBit 7 Enabled/Disabled 262187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 1 - Enabled 263187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 0 - Disabled 264187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzengBits 6:5 Location 265187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 0h - Internal 266187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 1h - External 267187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 2h - Reserved 268187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 3h - Unknown 269187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzengBit 4 Reserved, must be zero 270187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzengBit 3 Cache Socketed 271187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 1 - Socketed 272187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 0 - Unsocketed 273187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzengBits 2:0 Cache Level 274187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 1 through 8 (For example, an L1 cache would 275187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng use value 000b and an L3 cache would use 010b.) 276187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 277187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng @param[in] Option The option 278187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng**/ 279187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzengVOID 280187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzengDisplayCacheConfiguration ( 281187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng IN UINT16 CacheConfiguration, 282187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng IN UINT8 Option 283187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng ); 284187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng 285187cb3dd8d665619ff489ad8a8dc58c6aeab5aeclzeng/** 286a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey The Slot ID field of the System Slot structure provides a mechanism to 287a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey correlate the physical attributes of the slot to its logical access method 288a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey (which varies based on the Slot Type field). 289a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 290a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] SlotId - The slot ID 291a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] SlotType - The slot type 292a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option - The Option 293a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 2945d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 2955d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplaySystemSlotId ( 296a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT16 SlotId, 297a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 SlotType, 298a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 2995d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 3005d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 301a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 302a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display Portable Battery (Type 22) information. 303a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 304a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey The date the cell pack was manufactured, in packed format: 305a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bits 15:9 Year, biased by 1980, in the range 0 to 127. 306a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bits 8:5 Month, in the range 1 to 12. 307a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bits 4:0 Date, in the range 1 to 31. 308a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey For example, 01 February 2000 would be identified as 309a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 0010 1000 0100 0001b (0x2841). 310a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 311a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Date The date 312a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option The option 313a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 3145d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 3155d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplaySBDSManufactureDate ( 316a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT16 Date, 317a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 3185d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 3195d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 320a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 321a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display System Reset (Type 23) information. 322a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 323a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Routine Description: 324a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Identifies the system-reset capabilities for the system. 325a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bits 7:6 Reserved for future assignment via this specification, set to 00b. 326a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bit 5 System contains a watchdog timer, either True (1) or False (0). 327a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bits 4:3 Boot Option on Limit. 328a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Identifies the system action to be taken when the Reset Limit is reached, one of: 329a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 00b Reserved, do not use. 330a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 01b Operating system 331a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 10b System utilities 332a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 11b Do not rebootBits 333a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 2:1 Boot Option. Indicates the action to be taken following a watchdog reset, one of: 334a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 00b Reserved, do not use. 335a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 01b Operating system 336a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 10b System utilities 337a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 11b Do not reboot 338a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bit 0 Status. 339a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 1b The system reset is enabled by the user 340a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 0b The system reset is not enabled by the user 341a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 342a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Reset Reset 343a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option The option 344a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 3455d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 3465d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplaySystemResetCapabilities ( 347a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Reset, 348a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 3495d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 3505d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 351a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 352a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display Hardware Security (Type 24) information. 353a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 354a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Routine Description: 355a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Identifies the password and reset status for the system: 356a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 357a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bits 7:6 Power-on Password Status, one of: 358a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 00b Disabled 359a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 01b Enabled 360a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 10b Not Implemented 361a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 11b Unknown 362a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bits 5:4 Keyboard Password Status, one of: 363a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 00b Disabled 364a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 01b Enabled 365a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 10b Not Implemented 366a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 11b Unknown 367a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bits 3:2 Administrator Password Status, one of: 368a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 00b Disabled 369a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 01b Enabled 370a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 10b Not Implemented 371a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 11b Unknown 372a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Bits 1:0 Front Panel Reset Status, one of: 373a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 00b Disabled 374a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 01b Enabled 375a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 10b Not Implemented 376a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 11b Unknown 377a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 378a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Settings The device settings. 379a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option The device options. 380a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 3815d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 3825d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplayHardwareSecuritySettings ( 383a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Settings, 384a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 3855d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 3865d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 387a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 388a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display Out-of-Band Remote Access (Type 30) information. 389a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 390a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Connections The device characteristics. 391a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option The device options. 392a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 3935d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 3945d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplayOBRAConnections ( 395a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Connections, 396a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 3975d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 3985d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 399a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 400a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display System Boot Information (Type 32) information. 401a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 402a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Parameter The parameter. 403a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option The options. 404a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 4055d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 4065d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplaySystemBootStatus ( 407a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Parameter, 408a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 4095d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 4105d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 411a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey/** 412a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey Display System Power Supply (Type 39) information. 413a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey 414a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Characteristics The device characteristics. 415a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey @param[in] Option The device options. 416a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey**/ 4175d73d92f560b079f41f62e91d15ddc1fda897867jcarseyVOID 4185d73d92f560b079f41f62e91d15ddc1fda897867jcarseyDisplaySPSCharacteristics ( 419a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT16 Characteristics, 420a1d4bfcc3f58a9ed0ce6118556016c7c058d01b1jcarsey IN UINT8 Option 4215d73d92f560b079f41f62e91d15ddc1fda897867jcarsey ); 4225d73d92f560b079f41f62e91d15ddc1fda897867jcarsey 4235d73d92f560b079f41f62e91d15ddc1fda897867jcarsey#endif 424