/** @file\r
Industry Standard Definitions of SMBIOS Table Specification v3.3.0.\r
\r
-Copyright (c) 2006 - 2019, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2006 - 2021, Intel Corporation. All rights reserved.<BR>\r
(C) Copyright 2015-2017 Hewlett Packard Enterprise Development LP<BR>\r
(C) Copyright 2015 - 2019 Hewlett Packard Enterprise Development LP<BR>\r
SPDX-License-Identifier: BSD-2-Clause-Patent\r
ProcessorUpgradeSocketLGA2066 = 0x39,\r
ProcessorUpgradeSocketBGA1392 = 0x3A,\r
ProcessorUpgradeSocketBGA1510 = 0x3B,\r
- ProcessorUpgradeSocketBGA1528 = 0x3C\r
+ ProcessorUpgradeSocketBGA1528 = 0x3C,\r
+ ProcessorUpgradeSocketLGA4189 = 0x3D,\r
+ ProcessorUpgradeSocketLGA1200 = 0x3E,\r
+ ProcessorUpgradeSocketLGA4677 = 0x3F\r
} PROCESSOR_UPGRADE;\r
\r
///\r
} PROCESSOR_FEATURE_FLAGS;\r
\r
typedef struct {\r
- UINT32 ProcessorReserved1 :1;\r
- UINT32 ProcessorUnknown :1;\r
- UINT32 Processor64BitCapble :1;\r
- UINT32 ProcessorMultiCore :1;\r
- UINT32 ProcessorHardwareThread :1;\r
- UINT32 ProcessorExecuteProtection :1;\r
- UINT32 ProcessorEnhancedVirtulization :1;\r
- UINT32 ProcessorPowerPerformanceCtrl :1;\r
- UINT32 Processor128bitCapble :1;\r
- UINT32 ProcessorArm64SocId :1;\r
- UINT32 ProcessorReserved2 :6;\r
+ UINT16 ProcessorReserved1 :1;\r
+ UINT16 ProcessorUnknown :1;\r
+ UINT16 Processor64BitCapable :1;\r
+ UINT16 ProcessorMultiCore :1;\r
+ UINT16 ProcessorHardwareThread :1;\r
+ UINT16 ProcessorExecuteProtection :1;\r
+ UINT16 ProcessorEnhancedVirtualization :1;\r
+ UINT16 ProcessorPowerPerformanceCtrl :1;\r
+ UINT16 Processor128BitCapable :1;\r
+ UINT16 ProcessorArm64SocId :1;\r
+ UINT16 ProcessorReserved2 :6;\r
} PROCESSOR_CHARACTERISTIC_FLAGS;\r
\r
+///\r
+/// Processor Information - Status\r
+///\r
+typedef union {\r
+ struct {\r
+ UINT8 CpuStatus :3; ///< Indicates the status of the processor.\r
+ UINT8 Reserved1 :3; ///< Reserved for future use. Must be set to zero.\r
+ UINT8 SocketPopulated :1; ///< Indicates if the processor socket is populated or not.\r
+ UINT8 Reserved2 :1; ///< Reserved for future use. Must be set to zero.\r
+ } Bits;\r
+ UINT8 Data;\r
+} PROCESSOR_STATUS_DATA;\r
+\r
typedef struct {\r
PROCESSOR_SIGNATURE Signature;\r
PROCESSOR_FEATURE_FLAGS FeatureFlags;\r
SMBIOS_TABLE_STRING Socket;\r
UINT8 ProcessorType; ///< The enumeration value from PROCESSOR_TYPE_DATA.\r
UINT8 ProcessorFamily; ///< The enumeration value from PROCESSOR_FAMILY_DATA.\r
- SMBIOS_TABLE_STRING ProcessorManufacture;\r
+ SMBIOS_TABLE_STRING ProcessorManufacturer;\r
PROCESSOR_ID_DATA ProcessorId;\r
SMBIOS_TABLE_STRING ProcessorVersion;\r
PROCESSOR_VOLTAGE Voltage;\r
UINT8 HotPlugDevicesSupported :1;\r
UINT8 SmbusSignalSupported :1;\r
UINT8 BifurcationSupported :1;\r
- UINT8 Reserved :4; ///< Set to 0.\r
+ UINT8 AsyncSurpriseRemoval :1;\r
+ UINT8 FlexbusSlotCxl10Capable :1;\r
+ UINT8 FlexbusSlotCxl20Capable :1;\r
+ UINT8 Reserved :1; ///< Set to 0.\r
} MISC_SLOT_CHARACTERISTICS2;\r
\r
///\r
UINT8 DataBusWidth;\r
UINT8 PeerGroupingCount;\r
MISC_SLOT_PEER_GROUP PeerGroups[1];\r
+ //\r
+ // Add for smbios 3.4\r
+ //\r
+ UINT8 SlotInformation;\r
+ UINT8 SlotPhysicalWidth;\r
+ UINT16 SlotPitch;\r
} SMBIOS_TABLE_TYPE9;\r
\r
///\r
MemoryArrayLocationPc98C24AddonCard = 0xA1,\r
MemoryArrayLocationPc98EAddonCard = 0xA2,\r
MemoryArrayLocationPc98LocalBusAddonCard = 0xA3,\r
- MemoryArrayLocationCXLFlexbus10AddonCard = 0xA4\r
+ MemoryArrayLocationCXLAddonCard = 0xA4\r
} MEMORY_ARRAY_LOCATION;\r
\r
///\r
/// Memory Device - Memory Technology\r
///\r
typedef enum {\r
- MemoryTechnologyOther = 0x01,\r
- MemoryTechnologyUnknown = 0x02,\r
- MemoryTechnologyDram = 0x03,\r
- MemoryTechnologyNvdimmN = 0x04,\r
- MemoryTechnologyNvdimmF = 0x05,\r
- MemoryTechnologyNvdimmP = 0x06,\r
+ MemoryTechnologyOther = 0x01,\r
+ MemoryTechnologyUnknown = 0x02,\r
+ MemoryTechnologyDram = 0x03,\r
+ MemoryTechnologyNvdimmN = 0x04,\r
+ MemoryTechnologyNvdimmF = 0x05,\r
+ MemoryTechnologyNvdimmP = 0x06,\r
//\r
// This definition is updated to represent Intel\r
- // Optane DC Presistent Memory in SMBIOS spec 3.3.0\r
+ // Optane DC Persistent Memory in SMBIOS spec 3.4.0\r
//\r
- MemoryTechnologyIntelPersistentMemory = 0x07\r
+ MemoryTechnologyIntelOptanePersistentMemory = 0x07\r
+\r
} MEMORY_DEVICE_TECHNOLOGY;\r
\r
///\r
//\r
UINT8 MemoryTechnology; ///< The enumeration value from MEMORY_DEVICE_TECHNOLOGY\r
MEMORY_DEVICE_OPERATING_MODE_CAPABILITY MemoryOperatingModeCapability;\r
- SMBIOS_TABLE_STRING FirwareVersion;\r
+ SMBIOS_TABLE_STRING FirmwareVersion;\r
UINT16 ModuleManufacturerID;\r
UINT16 ModuleProductID;\r
UINT16 MemorySubsystemControllerManufacturerID;\r