\r
Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.<BR>\r
(C) Copyright 2015-2017 Hewlett Packard Enterprise Development LP<BR>\r
-This program and the accompanying materials are licensed and made available under \r
-the terms and conditions of the BSD License that accompanies this distribution. \r
+This program and the accompanying materials are licensed and made available under\r
+the terms and conditions of the BSD License that accompanies this distribution.\r
The full text of the license may be found at\r
-http://opensource.org/licenses/bsd-license.php. \r
- \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
+http://opensource.org/licenses/bsd-license.php.\r
+\r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
**/\r
\r
\r
///\r
/// Inactive type is added from SMBIOS 2.2. Reference SMBIOS 2.6, chapter 3.3.43.\r
-/// Upper-level software that interprets the SMBIOS structure-table should bypass an \r
+/// Upper-level software that interprets the SMBIOS structure-table should bypass an\r
/// Inactive structure just like a structure type that the software does not recognize.\r
///\r
-#define SMBIOS_TYPE_INACTIVE 0x007E \r
+#define SMBIOS_TYPE_INACTIVE 0x007E\r
\r
///\r
/// End-of-table type is added from SMBIOS 2.2. Reference SMBIOS 2.6, chapter 3.3.44.\r
\r
///\r
/// Types 0 through 127 (7Fh) are reserved for and defined by this\r
-/// specification. Types 128 through 256 (80h to FFh) are available for system- and OEM-specific information. \r
+/// specification. Types 128 through 256 (80h to FFh) are available for system- and OEM-specific information.\r
///\r
typedef UINT8 SMBIOS_TYPE;\r
\r
UINT32 PrinterIsSupported :1;\r
UINT32 CgaMonoIsSupported :1;\r
UINT32 NecPc98 :1;\r
- UINT32 ReservedForVendor :32; ///< Bits 32-63. Bits 32-47 reserved for BIOS vendor \r
- ///< and bits 48-63 reserved for System Vendor. \r
+ UINT32 ReservedForVendor :32; ///< Bits 32-63. Bits 32-47 reserved for BIOS vendor\r
+ ///< and bits 48-63 reserved for System Vendor.\r
} MISC_BIOS_CHARACTERISTICS;\r
\r
///\r
///\r
/// System Wake-up Type.\r
///\r
-typedef enum { \r
+typedef enum {\r
SystemWakeupTypeReserved = 0x00,\r
SystemWakeupTypeOther = 0x01,\r
SystemWakeupTypeUnknown = 0x02,\r
\r
///\r
/// System Information (Type 1).\r
-/// \r
-/// The information in this structure defines attributes of the overall system and is \r
+///\r
+/// The information in this structure defines attributes of the overall system and is\r
/// intended to be associated with the Component ID group of the system's MIF.\r
-/// An SMBIOS implementation is associated with a single system instance and contains \r
+/// An SMBIOS implementation is associated with a single system instance and contains\r
/// one and only one System Information (Type 1) structure.\r
///\r
typedef struct {\r
} SMBIOS_TABLE_TYPE1;\r
\r
///\r
-/// Base Board - Feature Flags. \r
+/// Base Board - Feature Flags.\r
///\r
typedef struct {\r
UINT8 Motherboard :1;\r
///\r
/// Base Board - Board Type.\r
///\r
-typedef enum { \r
+typedef enum {\r
BaseBoardTypeUnknown = 0x1,\r
BaseBoardTypeOther = 0x2,\r
BaseBoardTypeServerBlade = 0x3,\r
///\r
/// Base Board (or Module) Information (Type 2).\r
///\r
-/// The information in this structure defines attributes of a system baseboard - \r
+/// The information in this structure defines attributes of a system baseboard -\r
/// for example a motherboard, planar, or server blade or other standard system module.\r
///\r
typedef struct {\r
///\r
/// System Enclosure or Chassis Types\r
///\r
-typedef enum { \r
+typedef enum {\r
MiscChassisTypeOther = 0x01,\r
MiscChassisTypeUnknown = 0x02,\r
MiscChassisTypeDeskTop = 0x03,\r
///\r
/// System Enclosure or Chassis States .\r
///\r
-typedef enum { \r
+typedef enum {\r
ChassisStateOther = 0x01,\r
ChassisStateUnknown = 0x02,\r
ChassisStateSafe = 0x03,\r
///\r
/// System Enclosure or Chassis Security Status.\r
///\r
-typedef enum { \r
+typedef enum {\r
ChassisSecurityStatusOther = 0x01,\r
ChassisSecurityStatusUnknown = 0x02,\r
ChassisSecurityStatusNone = 0x03,\r
///\r
/// System Enclosure or Chassis (Type 3).\r
///\r
-/// The information in this structure defines attributes of the system's mechanical enclosure(s). \r
-/// For example, if a system included a separate enclosure for its peripheral devices, \r
+/// The information in this structure defines attributes of the system's mechanical enclosure(s).\r
+/// For example, if a system included a separate enclosure for its peripheral devices,\r
/// two structures would be returned: one for the main, system enclosure and the second for\r
/// the peripheral device enclosure. The additions to this structure in v2.1 of this specification\r
-/// support the population of the CIM_Chassis class. \r
+/// support the population of the CIM_Chassis class.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
/// Processor Information - Processor Family.\r
///\r
typedef enum {\r
- ProcessorFamilyOther = 0x01, \r
+ ProcessorFamilyOther = 0x01,\r
ProcessorFamilyUnknown = 0x02,\r
- ProcessorFamily8086 = 0x03, \r
+ ProcessorFamily8086 = 0x03,\r
ProcessorFamily80286 = 0x04,\r
- ProcessorFamilyIntel386 = 0x05, \r
+ ProcessorFamilyIntel386 = 0x05,\r
ProcessorFamilyIntel486 = 0x06,\r
ProcessorFamily8087 = 0x07,\r
ProcessorFamily80287 = 0x08,\r
- ProcessorFamily80387 = 0x09, \r
+ ProcessorFamily80387 = 0x09,\r
ProcessorFamily80487 = 0x0A,\r
- ProcessorFamilyPentium = 0x0B, \r
+ ProcessorFamilyPentium = 0x0B,\r
ProcessorFamilyPentiumPro = 0x0C,\r
ProcessorFamilyPentiumII = 0x0D,\r
ProcessorFamilyPentiumMMX = 0x0E,\r
ProcessorFamilyCeleron = 0x0F,\r
ProcessorFamilyPentiumIIXeon = 0x10,\r
- ProcessorFamilyPentiumIII = 0x11, \r
+ ProcessorFamilyPentiumIII = 0x11,\r
ProcessorFamilyM1 = 0x12,\r
ProcessorFamilyM2 = 0x13,\r
ProcessorFamilyIntelCeleronM = 0x14,\r
ProcessorFamilyIntelPentium4Ht = 0x15,\r
ProcessorFamilyAmdDuron = 0x18,\r
- ProcessorFamilyK5 = 0x19, \r
+ ProcessorFamilyK5 = 0x19,\r
ProcessorFamilyK6 = 0x1A,\r
ProcessorFamilyK6_2 = 0x1B,\r
ProcessorFamilyK6_3 = 0x1C,\r
ProcessorFamilyAmdPhenomFxQuadCore = 0x8C,\r
ProcessorFamilyAmdPhenomX4QuadCore = 0x8D,\r
ProcessorFamilyAmdPhenomX2DualCore = 0x8E,\r
- ProcessorFamilyAmdAthlonX2DualCore = 0x8F, \r
+ ProcessorFamilyAmdAthlonX2DualCore = 0x8F,\r
ProcessorFamilyPARISC = 0x90,\r
ProcessorFamilyPaRisc8500 = 0x91,\r
ProcessorFamilyPaRisc8000 = 0x92,\r
ProcessorFamilyIntelCore2DuoMobile = 0xC4,\r
ProcessorFamilyIntelCore2SoloMobile = 0xC5,\r
ProcessorFamilyIntelCoreI7 = 0xC6,\r
- ProcessorFamilyDualCoreIntelCeleron = 0xC7, \r
+ ProcessorFamilyDualCoreIntelCeleron = 0xC7,\r
ProcessorFamilyIBM390 = 0xC8,\r
ProcessorFamilyG4 = 0xC9,\r
ProcessorFamilyG5 = 0xCA,\r
} PROCESSOR_FAMILY2_DATA;\r
\r
///\r
-/// Processor Information - Voltage. \r
+/// Processor Information - Voltage.\r
///\r
typedef struct {\r
- UINT8 ProcessorVoltageCapability5V :1; \r
- UINT8 ProcessorVoltageCapability3_3V :1; \r
- UINT8 ProcessorVoltageCapability2_9V :1; \r
+ UINT8 ProcessorVoltageCapability5V :1;\r
+ UINT8 ProcessorVoltageCapability3_3V :1;\r
+ UINT8 ProcessorVoltageCapability2_9V :1;\r
UINT8 ProcessorVoltageCapabilityReserved :1; ///< Bit 3, must be zero.\r
UINT8 ProcessorVoltageReserved :3; ///< Bits 4-6, must be zero.\r
UINT8 ProcessorVoltageIndicateLegacy :1;\r
///\r
/// Processor Information (Type 4).\r
///\r
-/// The information in this structure defines the attributes of a single processor; \r
-/// a separate structure instance is provided for each system processor socket/slot. \r
-/// For example, a system with an IntelDX2 processor would have a single \r
+/// The information in this structure defines the attributes of a single processor;\r
+/// a separate structure instance is provided for each system processor socket/slot.\r
+/// For example, a system with an IntelDX2 processor would have a single\r
/// structure instance, while a system with an IntelSX2 processor would have a structure\r
-/// to describe the main CPU, and a second structure to describe the 80487 co-processor. \r
+/// to describe the main CPU, and a second structure to describe the 80487 co-processor.\r
///\r
-typedef struct { \r
+typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
SMBIOS_TABLE_STRING Socket;\r
UINT8 ProcessorType; ///< The enumeration value from PROCESSOR_TYPE_DATA.\r
///\r
/// Memory Controller Error Detecting Method.\r
///\r
-typedef enum { \r
+typedef enum {\r
ErrorDetectingMethodOther = 0x01,\r
ErrorDetectingMethodUnknown = 0x02,\r
ErrorDetectingMethodNone = 0x03,\r
///\r
/// Memory Controller Information - Interleave Support.\r
///\r
-typedef enum { \r
+typedef enum {\r
MemoryInterleaveOther = 0x01,\r
MemoryInterleaveUnknown = 0x02,\r
MemoryInterleaveOneWay = 0x03,\r
///\r
/// Memory Controller Information (Type 5, Obsolete).\r
///\r
-/// The information in this structure defines the attributes of the system's memory controller(s) \r
-/// and the supported attributes of any memory-modules present in the sockets controlled by \r
-/// this controller. \r
-/// Note: This structure, and its companion Memory Module Information (Type 6, Obsolete), \r
+/// The information in this structure defines the attributes of the system's memory controller(s)\r
+/// and the supported attributes of any memory-modules present in the sockets controlled by\r
+/// this controller.\r
+/// Note: This structure, and its companion Memory Module Information (Type 6, Obsolete),\r
/// are obsolete starting with version 2.1 of this specification. The Physical Memory Array (Type 16)\r
/// and Memory Device (Type 17) structures should be used instead. BIOS providers might\r
/// choose to implement both memory description types to allow existing DMI browsers\r
UINT8 ErrDetectMethod; ///< The enumeration value from MEMORY_ERROR_DETECT_METHOD.\r
MEMORY_ERROR_CORRECT_CAPABILITY ErrCorrectCapability;\r
UINT8 SupportInterleave; ///< The enumeration value from MEMORY_SUPPORT_INTERLEAVE_TYPE.\r
- UINT8 CurrentInterleave; ///< The enumeration value from MEMORY_SUPPORT_INTERLEAVE_TYPE . \r
+ UINT8 CurrentInterleave; ///< The enumeration value from MEMORY_SUPPORT_INTERLEAVE_TYPE .\r
UINT8 MaxMemoryModuleSize;\r
MEMORY_SPEED_TYPE SupportSpeed;\r
UINT16 SupportMemoryType;\r
///\r
/// Memory Module Information (Type 6, Obsolete)\r
///\r
-/// One Memory Module Information structure is included for each memory-module socket \r
+/// One Memory Module Information structure is included for each memory-module socket\r
/// in the system. The structure describes the speed, type, size, and error status\r
-/// of each system memory module. The supported attributes of each module are described \r
-/// by the "owning" Memory Controller Information structure. \r
-/// Note: This structure, and its companion Memory Controller Information (Type 5, Obsolete), \r
+/// of each system memory module. The supported attributes of each module are described\r
+/// by the "owning" Memory Controller Information structure.\r
+/// Note: This structure, and its companion Memory Controller Information (Type 5, Obsolete),\r
/// are obsolete starting with version 2.1 of this specification. The Physical Memory Array (Type 16)\r
/// and Memory Device (Type 17) structures should be used instead.\r
///\r
} CACHE_ERROR_TYPE_DATA;\r
\r
///\r
-/// Cache Information - System Cache Type. \r
+/// Cache Information - System Cache Type.\r
///\r
typedef enum {\r
CacheTypeOther = 0x01,\r
} CACHE_TYPE_DATA;\r
\r
///\r
-/// Cache Information - Associativity. \r
+/// Cache Information - Associativity.\r
///\r
typedef enum {\r
CacheAssociativityOther = 0x01,\r
///\r
/// Cache Information (Type 7).\r
///\r
-/// The information in this structure defines the attributes of CPU cache device in the system. \r
+/// The information in this structure defines the attributes of CPU cache device in the system.\r
/// One structure is specified for each such device, whether the device is internal to\r
/// or external to the CPU module. Cache modules can be associated with a processor structure\r
/// in one or two ways, depending on the SMBIOS version.\r
} SMBIOS_TABLE_TYPE7;\r
\r
///\r
-/// Port Connector Information - Connector Types. \r
+/// Port Connector Information - Connector Types.\r
///\r
typedef enum {\r
PortConnectorTypeNone = 0x00,\r
} MISC_PORT_CONNECTOR_TYPE;\r
\r
///\r
-/// Port Connector Information - Port Types \r
+/// Port Connector Information - Port Types\r
///\r
typedef enum {\r
PortTypeNone = 0x00,\r
///\r
/// Port Connector Information (Type 8).\r
///\r
-/// The information in this structure defines the attributes of a system port connector, \r
-/// e.g. parallel, serial, keyboard, or mouse ports. The port's type and connector information \r
+/// The information in this structure defines the attributes of a system port connector,\r
+/// e.g. parallel, serial, keyboard, or mouse ports. The port's type and connector information\r
/// are provided. One structure is present for each port provided by the system.\r
///\r
typedef struct {\r
} MISC_SLOT_USAGE;\r
\r
///\r
-/// System Slots - Slot Length. \r
+/// System Slots - Slot Length.\r
///\r
typedef enum {\r
SlotLengthOther = 0x01,\r
} MISC_SLOT_LENGTH;\r
\r
///\r
-/// System Slots - Slot Characteristics 1. \r
+/// System Slots - Slot Characteristics 1.\r
///\r
typedef struct {\r
UINT8 CharacteristicsUnknown :1;\r
UINT8 ModemRingResumeSupported:1;\r
} MISC_SLOT_CHARACTERISTICS1;\r
///\r
-/// System Slots - Slot Characteristics 2. \r
+/// System Slots - Slot Characteristics 2.\r
///\r
typedef struct {\r
UINT8 PmeSignalSupported :1;\r
///\r
/// System Slots (Type 9)\r
///\r
-/// The information in this structure defines the attributes of a system slot. \r
+/// The information in this structure defines the attributes of a system slot.\r
/// One structure is provided for each slot in the system.\r
///\r
///\r
} SMBIOS_TABLE_TYPE9;\r
\r
///\r
-/// On Board Devices Information - Device Types. \r
+/// On Board Devices Information - Device Types.\r
///\r
typedef enum {\r
OnBoardDeviceTypeOther = 0x01,\r
///\r
/// On Board Devices Information (Type 10, obsolete).\r
///\r
-/// Note: This structure is obsolete starting with version 2.6 specification; the Onboard Devices Extended \r
-/// Information (Type 41) structure should be used instead . BIOS providers can choose to implement both \r
-/// types to allow existing SMBIOS browsers to properly display the system's onboard devices information. \r
-/// The information in this structure defines the attributes of devices that are onboard (soldered onto) \r
+/// Note: This structure is obsolete starting with version 2.6 specification; the Onboard Devices Extended\r
+/// Information (Type 41) structure should be used instead . BIOS providers can choose to implement both\r
+/// types to allow existing SMBIOS browsers to properly display the system's onboard devices information.\r
+/// The information in this structure defines the attributes of devices that are onboard (soldered onto)\r
/// a system element, usually the baseboard. In general, an entry in this table implies that the BIOS\r
/// has some level of control over the enabling of the associated device for use by the system.\r
///\r
\r
///\r
/// OEM Strings (Type 11).\r
-/// This structure contains free form strings defined by the OEM. Examples of this are: \r
-/// Part Numbers for Reference Documents for the system, contact information for the manufacturer, etc. \r
+/// This structure contains free form strings defined by the OEM. Examples of this are:\r
+/// Part Numbers for Reference Documents for the system, contact information for the manufacturer, etc.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
///\r
/// System Configuration Options (Type 12).\r
///\r
-/// This structure contains information required to configure the base board's Jumpers and Switches. \r
+/// This structure contains information required to configure the base board's Jumpers and Switches.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
///\r
/// BIOS Language Information (Type 13).\r
///\r
-/// The information in this structure defines the installable language attributes of the BIOS. \r
-/// \r
+/// The information in this structure defines the installable language attributes of the BIOS.\r
+///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
UINT8 InstallableLanguages;\r
///\r
/// Group Associations (Type 14).\r
///\r
-/// The Group Associations structure is provided for OEMs who want to specify \r
-/// the arrangement or hierarchy of certain components (including other Group Associations) \r
-/// within the system. \r
+/// The Group Associations structure is provided for OEMs who want to specify\r
+/// the arrangement or hierarchy of certain components (including other Group Associations)\r
+/// within the system.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
\r
///\r
/// System Event Log - Event Log Types.\r
-/// \r
+///\r
typedef enum {\r
EventLogTypeReserved = 0x00,\r
EventLogTypeSingleBitECC = 0x01,\r
} EVENT_LOG_TYPE_DATA;\r
\r
///\r
-/// System Event Log - Variable Data Format Types. \r
-/// \r
+/// System Event Log - Variable Data Format Types.\r
+///\r
typedef enum {\r
EventLogVariableNone = 0x00,\r
EventLogVariableHandle = 0x01,\r
EventLogVariableMutilEventHandle = 0x03,\r
EventLogVariablePOSTResultBitmap = 0x04,\r
EventLogVariableSysManagementType = 0x05,\r
- EventLogVariableMutliEventSysManagmentType = 0x06, \r
+ EventLogVariableMutliEventSysManagmentType = 0x06,\r
EventLogVariableUnused = 0x07,\r
EventLogVariableOEMAssigned = 0x80\r
} EVENT_LOG_VARIABLE_DATA;\r
///\r
/// System Event Log (Type 15).\r
///\r
-/// The presence of this structure within the SMBIOS data returned for a system indicates \r
-/// that the system supports an event log. An event log is a fixed-length area within a \r
-/// non-volatile storage element, starting with a fixed-length (and vendor-specific) header \r
-/// record, followed by one or more variable-length log records. \r
+/// The presence of this structure within the SMBIOS data returned for a system indicates\r
+/// that the system supports an event log. An event log is a fixed-length area within a\r
+/// non-volatile storage element, starting with a fixed-length (and vendor-specific) header\r
+/// record, followed by one or more variable-length log records.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
} MEMORY_ARRAY_USE;\r
\r
///\r
-/// Physical Memory Array - Error Correction Types. \r
+/// Physical Memory Array - Error Correction Types.\r
///\r
typedef enum {\r
MemoryErrorCorrectionOther = 0x01,\r
///\r
/// Physical Memory Array (Type 16).\r
///\r
-/// This structure describes a collection of memory devices that operate \r
-/// together to form a memory address space. \r
+/// This structure describes a collection of memory devices that operate\r
+/// together to form a memory address space.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
///\r
/// Memory Device (Type 17).\r
///\r
-/// This structure describes a single memory device that is part of \r
+/// This structure describes a single memory device that is part of\r
/// a larger Physical Memory Array (Type 16).\r
-/// Note: If a system includes memory-device sockets, the SMBIOS implementation \r
-/// includes a Memory Device structure instance for each slot, whether or not the \r
+/// Note: If a system includes memory-device sockets, the SMBIOS implementation\r
+/// includes a Memory Device structure instance for each slot, whether or not the\r
/// socket is currently populated.\r
///\r
typedef struct {\r
SMBIOS_TABLE_STRING PartNumber;\r
//\r
// Add for smbios 2.6\r
- // \r
+ //\r
UINT8 Attributes;\r
//\r
// Add for smbios 2.7\r
} SMBIOS_TABLE_TYPE17;\r
\r
///\r
-/// 32-bit Memory Error Information - Error Type. \r
+/// 32-bit Memory Error Information - Error Type.\r
///\r
-typedef enum { \r
+typedef enum {\r
MemoryErrorOther = 0x01,\r
MemoryErrorUnknown = 0x02,\r
MemoryErrorOk = 0x03,\r
} MEMORY_ERROR_TYPE;\r
\r
///\r
-/// 32-bit Memory Error Information - Error Granularity. \r
+/// 32-bit Memory Error Information - Error Granularity.\r
///\r
-typedef enum { \r
+typedef enum {\r
MemoryGranularityOther = 0x01,\r
MemoryGranularityOtherUnknown = 0x02,\r
MemoryGranularityDeviceLevel = 0x03,\r
} MEMORY_ERROR_GRANULARITY;\r
\r
///\r
-/// 32-bit Memory Error Information - Error Operation. \r
+/// 32-bit Memory Error Information - Error Operation.\r
///\r
-typedef enum { \r
+typedef enum {\r
MemoryErrorOperationOther = 0x01,\r
MemoryErrorOperationUnknown = 0x02,\r
MemoryErrorOperationRead = 0x03,\r
\r
///\r
/// 32-bit Memory Error Information (Type 18).\r
-/// \r
-/// This structure identifies the specifics of an error that might be detected \r
+///\r
+/// This structure identifies the specifics of an error that might be detected\r
/// within a Physical Memory Array.\r
///\r
typedef struct {\r
///\r
/// Memory Array Mapped Address (Type 19).\r
///\r
-/// This structure provides the address mapping for a Physical Memory Array. \r
+/// This structure provides the address mapping for a Physical Memory Array.\r
/// One structure is present for each contiguous address range described.\r
///\r
typedef struct {\r
///\r
/// Memory Device Mapped Address (Type 20).\r
///\r
-/// This structure maps memory address space usually to a device-level granularity. \r
-/// One structure is present for each contiguous address range described. \r
+/// This structure maps memory address space usually to a device-level granularity.\r
+/// One structure is present for each contiguous address range described.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
///\r
/// Built-in Pointing Device (Type 21).\r
///\r
-/// This structure describes the attributes of the built-in pointing device for the \r
+/// This structure describes the attributes of the built-in pointing device for the\r
/// system. The presence of this structure does not imply that the built-in\r
-/// pointing device is active for the system's use! \r
+/// pointing device is active for the system's use!\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
///\r
/// Portable Battery - Device Chemistry\r
///\r
-typedef enum { \r
+typedef enum {\r
PortableBatteryDeviceChemistryOther = 0x01,\r
PortableBatteryDeviceChemistryUnknown = 0x02,\r
PortableBatteryDeviceChemistryLeadAcid = 0x03,\r
///\r
/// Portable Battery (Type 22).\r
///\r
-/// This structure describes the attributes of the portable battery(s) for the system. \r
-/// The structure contains the static attributes for the group. Each structure describes \r
+/// This structure describes the attributes of the portable battery(s) for the system.\r
+/// The structure contains the static attributes for the group. Each structure describes\r
/// a single battery pack's attributes.\r
///\r
typedef struct {\r
///\r
/// System Reset (Type 23)\r
///\r
-/// This structure describes whether Automatic System Reset functions enabled (Status). \r
+/// This structure describes whether Automatic System Reset functions enabled (Status).\r
/// If the system has a watchdog Timer and the timer is not reset (Timer Reset)\r
-/// before the Interval elapses, an automatic system reset will occur. The system will re-boot \r
-/// according to the Boot Option. This function may repeat until the Limit is reached, at which time \r
-/// the system will re-boot according to the Boot Option at Limit. \r
+/// before the Interval elapses, an automatic system reset will occur. The system will re-boot\r
+/// according to the Boot Option. This function may repeat until the Limit is reached, at which time\r
+/// the system will re-boot according to the Boot Option at Limit.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
///\r
/// Hardware Security (Type 24).\r
///\r
-/// This structure describes the system-wide hardware security settings. \r
+/// This structure describes the system-wide hardware security settings.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
///\r
/// System Power Controls (Type 25).\r
///\r
-/// This structure describes the attributes for controlling the main power supply to the system. \r
-/// Software that interprets this structure uses the month, day, hour, minute, and second values \r
-/// to determine the number of seconds until the next power-on of the system. The presence of \r
-/// this structure implies that a timed power-on facility is available for the system. \r
+/// This structure describes the attributes for controlling the main power supply to the system.\r
+/// Software that interprets this structure uses the month, day, hour, minute, and second values\r
+/// to determine the number of seconds until the next power-on of the system. The presence of\r
+/// this structure implies that a timed power-on facility is available for the system.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
///\r
/// Voltage Probe (Type 26)\r
///\r
-/// This describes the attributes for a voltage probe in the system. \r
+/// This describes the attributes for a voltage probe in the system.\r
/// Each structure describes a single voltage probe.\r
///\r
typedef struct {\r
///\r
/// Cooling Device (Type 27)\r
///\r
-/// This structure describes the attributes for a cooling device in the system. \r
-/// Each structure describes a single cooling device. \r
-/// \r
+/// This structure describes the attributes for a cooling device in the system.\r
+/// Each structure describes a single cooling device.\r
+///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
UINT16 TemperatureProbeHandle;\r
///\r
/// Temperature Probe (Type 28).\r
///\r
-/// This structure describes the attributes for a temperature probe in the system. \r
-/// Each structure describes a single temperature probe. \r
+/// This structure describes the attributes for a temperature probe in the system.\r
+/// Each structure describes a single temperature probe.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
/// Electrical Current Probe (Type 29).\r
///\r
/// This structure describes the attributes for an electrical current probe in the system.\r
-/// Each structure describes a single electrical current probe. \r
+/// Each structure describes a single electrical current probe.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
///\r
/// Out-of-Band Remote Access (Type 30).\r
///\r
-/// This structure describes the attributes and policy settings of a hardware facility \r
-/// that may be used to gain remote access to a hardware system when the operating system \r
-/// is not available due to power-down status, hardware failures, or boot failures. \r
+/// This structure describes the attributes and policy settings of a hardware facility\r
+/// that may be used to gain remote access to a hardware system when the operating system\r
+/// is not available due to power-down status, hardware failures, or boot failures.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
///\r
/// Boot Integrity Services (BIS) Entry Point (Type 31).\r
///\r
-/// Structure type 31 (decimal) is reserved for use by the Boot Integrity Services (BIS). \r
-/// \r
+/// Structure type 31 (decimal) is reserved for use by the Boot Integrity Services (BIS).\r
+///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
UINT8 Checksum;\r
///\r
/// System Boot Information (Type 32).\r
///\r
-/// The client system firmware, e.g. BIOS, communicates the System Boot Status to the \r
-/// client's Pre-boot Execution Environment (PXE) boot image or OS-present management \r
-/// application via this structure. When used in the PXE environment, for example, \r
-/// this code identifies the reason the PXE was initiated and can be used by boot-image \r
-/// software to further automate an enterprise's PXE sessions. For example, an enterprise \r
-/// could choose to automatically download a hardware-diagnostic image to a client whose \r
+/// The client system firmware, e.g. BIOS, communicates the System Boot Status to the\r
+/// client's Pre-boot Execution Environment (PXE) boot image or OS-present management\r
+/// application via this structure. When used in the PXE environment, for example,\r
+/// this code identifies the reason the PXE was initiated and can be used by boot-image\r
+/// software to further automate an enterprise's PXE sessions. For example, an enterprise\r
+/// could choose to automatically download a hardware-diagnostic image to a client whose\r
/// reason code indicated either a firmware- or operating system-detected hardware failure.\r
///\r
typedef struct {\r
///\r
/// 64-bit Memory Error Information (Type 33).\r
///\r
-/// This structure describes an error within a Physical Memory Array, \r
+/// This structure describes an error within a Physical Memory Array,\r
/// when the error address is above 4G (0xFFFFFFFF).\r
-/// \r
+///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
UINT8 ErrorType; ///< The enumeration value from MEMORY_ERROR_TYPE.\r
} SMBIOS_TABLE_TYPE33;\r
\r
///\r
-/// Management Device - Type. \r
+/// Management Device - Type.\r
///\r
typedef enum {\r
ManagementDeviceTypeOther = 0x01,\r
} MISC_MANAGEMENT_DEVICE_TYPE;\r
\r
///\r
-/// Management Device - Address Type. \r
+/// Management Device - Address Type.\r
///\r
typedef enum {\r
ManagementDeviceAddressTypeOther = 0x01,\r
///\r
/// Management Device (Type 34).\r
///\r
-/// The information in this structure defines the attributes of a Management Device. \r
+/// The information in this structure defines the attributes of a Management Device.\r
/// A Management Device might control one or more fans or voltage, current, or temperature\r
/// probes as defined by one or more Management Device Component structures.\r
///\r
///\r
/// Management Device Component (Type 35)\r
///\r
-/// This structure associates a cooling device or environmental probe with structures \r
-/// that define the controlling hardware device and (optionally) the component's thresholds. \r
+/// This structure associates a cooling device or environmental probe with structures\r
+/// that define the controlling hardware device and (optionally) the component's thresholds.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
///\r
/// Management Device Threshold Data (Type 36).\r
///\r
-/// The information in this structure defines threshold information for \r
-/// a component (probe or cooling-unit) contained within a Management Device. \r
+/// The information in this structure defines threshold information for\r
+/// a component (probe or cooling-unit) contained within a Management Device.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
/// Memory Channel (Type 37)\r
///\r
/// The information in this structure provides the correlation between a Memory Channel\r
-/// and its associated Memory Devices. Each device presents one or more loads to the channel. \r
+/// and its associated Memory Devices. Each device presents one or more loads to the channel.\r
/// The sum of all device loads cannot exceed the channel's defined maximum.\r
///\r
typedef struct {\r
} SMBIOS_TABLE_TYPE39;\r
\r
///\r
-/// Additional Information Entry Format. \r
+/// Additional Information Entry Format.\r
///\r
-typedef struct { \r
- UINT8 EntryLength; \r
+typedef struct {\r
+ UINT8 EntryLength;\r
UINT16 ReferencedHandle;\r
UINT8 ReferencedOffset;\r
SMBIOS_TABLE_STRING EntryString;\r
///\r
/// Additional Information (Type 40).\r
///\r
-/// This structure is intended to provide additional information for handling unspecified \r
-/// enumerated values and interim field updates in another structure. \r
+/// This structure is intended to provide additional information for handling unspecified\r
+/// enumerated values and interim field updates in another structure.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r
UINT8 NumberOfAdditionalInformationEntries;\r
- ADDITIONAL_INFORMATION_ENTRY AdditionalInfoEntries[1]; \r
+ ADDITIONAL_INFORMATION_ENTRY AdditionalInfoEntries[1];\r
} SMBIOS_TABLE_TYPE40;\r
\r
///\r
///\r
/// Onboard Devices Extended Information (Type 41).\r
///\r
-/// The information in this structure defines the attributes of devices that \r
-/// are onboard (soldered onto) a system element, usually the baseboard. \r
-/// In general, an entry in this table implies that the BIOS has some level of \r
-/// control over the enabling of the associated device for use by the system. \r
+/// The information in this structure defines the attributes of devices that\r
+/// are onboard (soldered onto) a system element, usually the baseboard.\r
+/// In general, an entry in this table implies that the BIOS has some level of\r
+/// control over the enabling of the associated device for use by the system.\r
///\r
typedef struct {\r
SMBIOS_STRUCTURE Hdr;\r