##\r
# This file is used to document mismatches between Intel Platform Innovation Framework specification\r
# (http://www.intel.com/technology/framework/spec.htm) and data structures defind at IntelFrameworkPkg\r
-# package in EdkII Open Source Project (https://edk2.tianocore.org/source/browse/edk2/trunk/edk2/IntelFrameworkPkg)\r
+# package in EdkII Open Source Project (https://github.com/tianocore/edk2/tree/master/IntelFrameworkPkg)\r
##\r
\r
##\r
# 4. Some defintitions don't exactly match Framework specification, some new field members are introduced in EdkII\r
# to reflect the latest industry standard.\r
#\r
-# Note: \r
+# Note:\r
# The IntelFrameworkPkg contains Framework specification contents that were not adopted by UEFI/PI, and names may be\r
# changed (such as adding "FRAMEWORK_") to avoid name collisions with approved UEFI/PI specifications.\r
##\r
#pragma pack()\r
\r
Section "Alignment" in DataHubSubclass specification say "Fields in a data hub record should be aligned at their\r
- natural boundaries". But in EdkII, the data structures above are packed. \r
+ natural boundaries". But in EdkII, the data structures above are packed.\r
Keeping this inconsistency for backward compatibility.\r
- \r
+\r
3. Guid/DataHubRecords.h\r
#define EFI_SUBCLASS_INSTANCE_RESERVED 0\r
#define EFI_SUBCLASS_INSTANCE_NON_APPLICABLE 0xFFFF\r
\r
The field type of the definition is *NOT* consistent with CacheSubclass specification. Specification defines\r
them as UINT16, which is incorrect and should be UINT32 because the total width of bit-fields is 32bits width.\r
- \r
+\r
3. Guid/DataHubRecords.h\r
typedef enum {\r
CacheSizeRecordType = 1,\r
#define EFI_CACHE_MAXIMUM_SIZE_RECORD_NUMBER 0x00000002\r
#define EFI_CACHE_SPEED_RECORD_NUMBER 0x00000003\r
#define EFI_CACHE_SOCKET_RECORD_NUMBER 0x00000004\r
- #define EFI_CACHE_SRAM_SUPPORT_RECORD_NUMBER 0x00000005 \r
- #define EFI_CACHE_SRAM_INSTALL_RECORD_NUMBER 0x00000006 \r
+ #define EFI_CACHE_SRAM_SUPPORT_RECORD_NUMBER 0x00000005\r
+ #define EFI_CACHE_SRAM_INSTALL_RECORD_NUMBER 0x00000006\r
#define EFI_CACHE_ERROR_SUPPORT_RECORD_NUMBER 0x00000007\r
#define EFI_CACHE_TYPE_RECORD_NUMBER 0x00000008\r
#define EFI_CACHE_ASSOCIATIVITY_RECORD_NUMBER 0x00000009\r
EfiProcessorFamilyIntelCeleronD = 0xBA,\r
EfiProcessorFamilyIntelPentiumD = 0xBB,\r
EfiProcessorFamilyIntelPentiumEx = 0xBC,\r
- EfiProcessorFamilyIntelCoreSolo = 0xBD, \r
- EfiProcessorFamilyReserved = 0xBE, \r
+ EfiProcessorFamilyIntelCoreSolo = 0xBD,\r
+ EfiProcessorFamilyReserved = 0xBE,\r
EfiProcessorFamilyIntelCore2 = 0xBF,\r
...\r
EfiProcessorFamilyG6 = 0xCB,\r
} EFI_PROCESSOR_SOCKET_TYPE_DATA;\r
\r
The fields listed here are *NOT* defined in ProcSubclass specification 0.9. They are introduced to support\r
- new processor upgrade (type 4 offset 19h) defined in SmBios 2.6 specification. \r
+ new processor upgrade (type 4 offset 19h) defined in SmBios 2.6 specification.\r
Keeping this inconsistency to reflect the latest industry standard.\r
\r
5. Guid/DataHubRecords.h\r
typedef enum {\r
EfiProcessorHealthy = 1,\r
EfiProcessorPerfRestricted = 2,\r
- EfiProcessorFuncRestricted = 3 \r
+ EfiProcessorFuncRestricted = 3\r
} EFI_PROCESSOR_HEALTH_STATUS;\r
\r
The structure name "EFI_PROCESSOR_HEALTH_STATUS" is *NOT* consistent with ProcSubclass specification 0.9, in which\r
ProcessorPartNumberRecordType = 30,\r
} EFI_CPU_VARIABLE_RECORD_TYPE;\r
\r
- The enumeration fields from ProcessorCoreFrequencyRecordType to ProcessorHealthStatusRecordType are *NOT* defined \r
+ The enumeration fields from ProcessorCoreFrequencyRecordType to ProcessorHealthStatusRecordType are *NOT* defined\r
in ProcSubclass specification 0.9, which only defines the following macros to specify the record number of the data record:\r
#define EFI_PROCESSOR_FREQUENCY_RECORD_NUMBER 0x00000001\r
#define EFI_PROCESSOR_BUS_FREQUENCY_RECORD_NUMBER 0x00000002\r
#define EFI_PROCESSOR_HEALTH_STATUS_RECORD_NUMBER 0x00000018\r
Keeping this inconsistency for backward compatibility.\r
\r
- The enumeration fields from ProcessorCoreCountRecordType to ProcessorPartNumberRecordType are *NOT* defined \r
- in ProcSubclass specification 0.9. \r
+ The enumeration fields from ProcessorCoreCountRecordType to ProcessorPartNumberRecordType are *NOT* defined\r
+ in ProcSubclass specification 0.9.\r
They are introduced to support new fields for type 4 defined in SmBios 2.6 specification.\r
Keeping this inconsistency to reflect the latest industry standard.\r
\r
...\r
EFI_PROCESSOR_FAMILY2_DATA ProcessorFamily2;\r
} EFI_CPU_VARIABLE_RECORD;\r
- \r
+\r
typedef struct {\r
EFI_SUBCLASS_TYPE1_HEADER DataRecordHeader;\r
EFI_CPU_VARIABLE_RECORD VariableRecord;\r
} EFI_PROCESSOR_CHARACTERISTICS_DATA;\r
\r
The fields listed here are *NOT* defined in ProcSubclass specification 0.9. They are introduced to support\r
- new fields for type 4 defined in SmBios 2.6 specification. \r
+ new fields for type 4 defined in SmBios 2.6 specification.\r
Keeping this inconsistency to reflect the latest industry standard.\r
\r
##\r
...\r
EfiMemoryFormFactorFbDimm = 0x0F\r
} EFI_MEMORY_FORM_FACTOR;\r
- \r
+\r
typedef enum _EFI_MEMORY_ARRAY_TYPE {\r
...\r
EfiMemoryTypeDdr2 = 0x13,\r
EfiMemoryTypeDdr2FbDimm = 0x14\r
} EFI_MEMORY_ARRAY_TYPE;\r
- \r
+\r
typedef enum {\r
...\r
EfiMemoryStatePartial = 6\r
} EFI_MEMORY_STATE;\r
\r
The fields listed above are *NOT* defined in MemSubclass specification 0.9. They are introduced to support\r
- new memory device (type 17) defined in SmBios 2.6 specification. \r
+ new memory device (type 17) defined in SmBios 2.6 specification.\r
Keeping this inconsistency to reflect the latest industry standard.\r
\r
2. Guid/DataHubRecords.h\r
- typedef struct { \r
+ typedef struct {\r
...\r
- EFI_EXP_BASE10_DATA MemorySpeed; \r
+ EFI_EXP_BASE10_DATA MemorySpeed;\r
...\r
} EFI_MEMORY_ARRAY_LINK_DATA;\r
\r
3. Guid/DataHubRecords.h\r
#define EFI_MEMORY_CONTROLLER_INFORMATION_RECORD_NUMBER 0x00000008\r
\r
- typedef enum { \r
+ typedef enum {\r
EfiErrorDetectingMethodOther = 1,\r
EfiErrorDetectingMethodUnknown = 2,\r
EfiErrorDetectingMethodNone = 3,\r
UINT8 Reserved :2;\r
} EFI_MEMORY_ERROR_CORRECT_CAPABILITY;\r
\r
- typedef enum { \r
+ typedef enum {\r
EfiMemoryInterleaveOther = 1,\r
EfiMemoryInterleaveUnknown = 2,\r
EfiMemoryInterleaveOneWay = 3,\r
} EFI_MEMORY_CONTROLLER_INFORMATION_DATA;\r
\r
The definitions above are *NOT* defined in MemSubclass specification 0.9. They are introduced to support\r
- new memory controller information (type 5) defined in SmBios 2.6 specification. \r
+ new memory controller information (type 5) defined in SmBios 2.6 specification.\r
Keeping this inconsistency to reflect the latest industry standard.\r
\r
4. Guid/DataHubRecords.h\r
#define EFI_MEMORY_32BIT_ERROR_INFORMATION_RECORD_NUMBER 0x00000009\r
\r
- typedef enum { \r
+ typedef enum {\r
EfiMemoryErrorOther = 1,\r
EfiMemoryErrorUnknown = 2,\r
EfiMemoryErrorOk = 3,\r
EfiMemoryErrorUnCorrectable = 14\r
} EFI_MEMORY_ERROR_TYPE;\r
\r
- typedef enum { \r
+ typedef enum {\r
EfiMemoryGranularityOther = 1,\r
EfiMemoryGranularityOtherUnknown = 2,\r
EfiMemoryGranularityDeviceLevel = 3,\r
EfiMemoryGranularityMemPartitionLevel = 4\r
} EFI_MEMORY_ERROR_GRANULARITY_TYPE;\r
\r
- typedef enum { \r
+ typedef enum {\r
EfiMemoryErrorOperationOther = 1,\r
EfiMemoryErrorOperationUnknown = 2,\r
EfiMemoryErrorOperationRead = 3,\r
} EFI_MEMORY_32BIT_ERROR_INFORMATION;\r
\r
The definitions above are *NOT* defined in MemSubclass specification 0.9. They are introduced to support\r
- new 32-bit memory error information (type 18) defined in SmBios 2.6 specification. \r
+ new 32-bit memory error information (type 18) defined in SmBios 2.6 specification.\r
Keeping this inconsistency to reflect the latest industry standard.\r
\r
5. Guid/DataHubRecords.h\r
#define EFI_MEMORY_64BIT_ERROR_INFORMATION_RECORD_NUMBER 0x0000000A\r
- \r
+\r
typedef struct {\r
EFI_MEMORY_ERROR_TYPE MemoryErrorType;\r
EFI_MEMORY_ERROR_GRANULARITY_TYPE MemoryErrorGranularity;\r
} EFI_MEMORY_64BIT_ERROR_INFORMATION;\r
\r
The definitions above are *NOT* defined in MemSubclass specification 0.9. They are introduced to support\r
- new 64-bit memory error information (type 33) defined in SmBios 2.6 specification. \r
+ new 64-bit memory error information (type 33) defined in SmBios 2.6 specification.\r
Keeping this inconsistency to reflect the latest industry standard.\r
\r
6. Guid/DataHubRecords.h\r
PCI_DEVICE_PATH PciBusDevicePath;\r
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
} USB_PORT_DEVICE_PATH;\r
- \r
+\r
typedef struct _IDE_DEVICE_PATH {\r
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
PCI_DEVICE_PATH PciBusDevicePath;\r
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
} IDE_DEVICE_PATH;\r
- \r
+\r
typedef struct _RMC_CONN_DEVICE_PATH {\r
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
PCI_DEVICE_PATH PciBridgeDevicePath;\r
PCI_DEVICE_PATH PciBusDevicePath;\r
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
} RMC_CONN_DEVICE_PATH;\r
- \r
+\r
typedef struct _RIDE_DEVICE_PATH {\r
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
PCI_DEVICE_PATH PciBridgeDevicePath;\r
PCI_DEVICE_PATH PciBusDevicePath;\r
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
} RIDE_DEVICE_PATH;\r
- \r
+\r
typedef struct _GB_NIC_DEVICE_PATH {\r
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
PCI_DEVICE_PATH PciBridgeDevicePath;\r
PCI_DEVICE_PATH PciXBusDevicePath;\r
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
} GB_NIC_DEVICE_PATH;\r
- \r
+\r
typedef struct _PS2_CONN_DEVICE_PATH {\r
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
PCI_DEVICE_PATH LpcBridgeDevicePath;\r
ACPI_HID_DEVICE_PATH LpcBusDevicePath;\r
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
} PS2_CONN_DEVICE_PATH;\r
- \r
+\r
typedef struct _SERIAL_CONN_DEVICE_PATH {\r
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
PCI_DEVICE_PATH LpcBridgeDevicePath;\r
ACPI_HID_DEVICE_PATH LpcBusDevicePath;\r
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
} SERIAL_CONN_DEVICE_PATH;\r
- \r
+\r
typedef struct _PARALLEL_CONN_DEVICE_PATH {\r
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
PCI_DEVICE_PATH LpcBridgeDevicePath;\r
ACPI_HID_DEVICE_PATH LpcBusDevicePath;\r
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
} PARALLEL_CONN_DEVICE_PATH;\r
- \r
+\r
typedef struct _FLOOPY_CONN_DEVICE_PATH {\r
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
PCI_DEVICE_PATH LpcBridgeDevicePath;\r
ACPI_HID_DEVICE_PATH LpcBusDevicePath;\r
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
} FLOOPY_CONN_DEVICE_PATH;\r
- \r
+\r
typedef union _EFI_MISC_PORT_DEVICE_PATH {\r
USB_PORT_DEVICE_PATH UsbDevicePath;\r
IDE_DEVICE_PATH IdeDevicePath;\r
} EFI_MISC_BIOS_VENDOR_DATA;\r
\r
The fields listed above are *NOT* defined in MiscSubclass specification 0.9. They are introduced to support\r
- new bios information (type 0) defined in SmBios 2.6 specification. \r
+ new bios information (type 0) defined in SmBios 2.6 specification.\r
Keeping this inconsistency to reflect the latest industry standard.\r
\r
4. Guid/DataHubRecords.h\r
} EFI_MISC_SYSTEM_MANUFACTURER_DATA;\r
\r
The fields listed above are *NOT* defined in MiscSubclass specification 0.9. They are introduced to support\r
- new system information (type 1) defined in SmBios 2.6 specification. \r
+ new system information (type 1) defined in SmBios 2.6 specification.\r
Keeping this inconsistency to reflect the latest industry standard.\r
\r
5. Guid/DataHubRecords.h\r
typedef struct {\r
...\r
EFI_INTER_LINK_DATA ManagementDeviceThresholdLink;\r
+ UINT8 ComponentType;\r
} EFI_MISC_MANAGEMENT_DEVICE_COMPONENT_DESCRIPTION_DATA;\r
\r
- The field listed above is *NOT* defined in MiscSubclass specification 0.9. It is introduced to support\r
- new management device component (type 35) defined in SmBios 2.6 specification. \r
- Keeping this inconsistency to reflect the latest industry standard.\r
+ a. The field "ManagementDeviceThresholdLink" above is *NOT* defined in MiscSubclass specification 0.9. It is introduced to support\r
+ new management device component (type 35) defined in SmBios 2.6 specification.\r
+ Keeping this inconsistency to reflect the latest industry standard.\r
+ b. The field "ComponentType" above is *NOT* defined in MiscSubclass specifications 0.9. It's implementation-specific to simplify the code logic.\r
+ Keeping this inconsistency for backward compatibility.\r
\r
6. Guid/DataHubRecords.h\r
typedef struct {\r
...\r
EfiSlotTypeAgp2X = 0x10,\r
...\r
- EfiSlotTypePciExpress = 0xA5\r
+ EfiSlotTypePciExpress = 0xA5,\r
+ EfiSlotTypePciExpressX1 = 0xA6,\r
+ EfiSlotTypePciExpressX2 = 0xA7,\r
+ EfiSlotTypePciExpressX4 = 0xA8,\r
+ EfiSlotTypePciExpressX8 = 0xA9,\r
+ EfiSlotTypePciExpressX16 = 0xAA\r
} EFI_MISC_SLOT_TYPE;\r
\r
a. The field name "EfiSlotTypeAgp2X" is *NOT* consistent with MiscSubclass specification 0.9, in which it is named\r
"EfiSlotTypeApg2X".\r
From its literal sense, this field represents a AGP type display card, so it should be named as "EfiSlotTypeAgp2X".\r
- b. The "EfiSlotTypePciExpress" field is *NOT* defined in MiscSubclass specification 0.9. It isintroduced to support\r
- new system slots (type 9) defined in SmBios 2.6 specification.\r
+ b. The enumeration fields from "EfiSlotTypePciExpress" to "EfiSlotTypePciExpressX16" are *NOT* defined in MiscSubclass specification 0.9.\r
+ They are introduced to support new system slots (type 9) defined in SmBios 2.6 specification.\r
Keeping this inconsistency to reflect the latest industry standard.\r
\r
8. Guid/DataHubRecords.h\r
...\r
} EFI_MISC_ONBOARD_DEVICE_DATA;\r
\r
- The definition is *NOT* consistent with MiscSubclass specification 0.9, in which the field "OnBoardDeviceStatus" is \r
+ The definition is *NOT* consistent with MiscSubclass specification 0.9, in which the field "OnBoardDeviceStatus" is\r
named as "OnBoardDeviceType". Keeping this inconsistency for backward compatibility.\r
\r
9. Guid/DataHubRecords.h\r
"EFI_MISC_BATTERY_LOCATION_RECORD_NUMBER". Keeping this inconsistency for backward compatibility.\r
\r
10. Guid/DataHubRecords.h\r
- typedef enum { \r
+ typedef enum {\r
EfiPortableBatteryDeviceChemistryOther = 1,\r
EfiPortableBatteryDeviceChemistryUnknown = 2,\r
EfiPortableBatteryDeviceChemistryLeadAcid = 3,\r
} EFI_MISC_PORTABLE_BATTERY_DEVICE_CHEMISTRY;\r
\r
The name of the definition is *NOT* consistent with MiscSubclass specification, in which it is defined as\r
- "EFI_MISC_BATTERY_DEVICE_CHEMISTRY". And all field names have a redundant "Portable" string compared with MisSubclass \r
+ "EFI_MISC_BATTERY_DEVICE_CHEMISTRY". And all field names have a redundant "Portable" string compared with MisSubclass\r
specification 0.9.\r
Keeping this inconsistency for backward compatibility.\r
\r
} EFI_MISC_PORTABLE_BATTERY;\r
\r
The definition is *NOT* consistent with MiscSubclass specification 0.9, in which the structure name is defined as\r
- "EFI_MISC_BATTERY_LOCATION_DATA". Moreover, the name and the order of all fields are also different with MiscSubclass \r
+ "EFI_MISC_BATTERY_LOCATION_DATA". Moreover, the name and the order of all fields are also different with MiscSubclass\r
specification 0.9. Keeping this inconsistency for backward compatibility.\r
\r
12. Guid/DataHubRecords.h\r
...\r
} EFI_MISC_BOOT_INFORMATION_STATUS_DATA;\r
\r
- The definition is *NOT* consistent with MiscSubclass specification 0.9, in which the type of the first field is \r
+ The definition is *NOT* consistent with MiscSubclass specification 0.9, in which the type of the first field is\r
"EFI_MISC_BOOT_INFORMATION_STATUS_TYPE". Keeping this inconsistency for backward compatibility.\r
\r
14. Guid/DataHubRecords.h\r
...\r
} EFI_MISC_SMBIOS_STRUCT_ENCAPSULATION_DATA;\r
\r
- The definition is *NOT* consistent with MiscSubclass specification 0.9, in which the type of the first field is \r
+ The definition is *NOT* consistent with MiscSubclass specification 0.9, in which the type of the first field is\r
"EFI_SMBIOS_STRUCTURE_HDR". Keeping this inconsistency for backward compatibility.\r
\r
17. Guid/DataHubRecords.h\r
#define ACCESS_GPNV 0x04\r
\r
The definitions listed above are *NOT* defined in MiscSubclass specification 0.9. It is introduced to support\r
- new system event log (type 15) defined in SmBios 2.6 specification. \r
+ new system event log (type 15) defined in SmBios 2.6 specification.\r
Keeping this inconsistency to reflect the latest industry standard.\r
\r
19. Guid/DataHubRecords.h\r
} EFI_MISC_MANAGEMENT_DEVICE_THRESHOLD;\r
\r
The definitions listed above are *NOT* defined in MiscSubclass specification 0.9. It is introduced to support\r
- new management device threshold data (type 36) defined in SmBios 2.6 specification. \r
+ new management device threshold data (type 36) defined in SmBios 2.6 specification.\r
Keeping this inconsistency to reflect the latest industry standard.\r
\r
20. Guid/DataHubRecords.h\r
UINT32 CoolingDeviceOemDefined;\r
} EFI_MISC_COOLING_DEVICE_TEMP_LINK_DATA;\r
\r
- The "CoolingDeviceUnitGroup" field and "CoolingDeviceNominalSpeed" field are *NOT* consistent with \r
+ The "CoolingDeviceUnitGroup" field and "CoolingDeviceNominalSpeed" field are *NOT* consistent with\r
MiscSubclass specification 0.9. These fields are aligned with SMBIOS 2.6 specification. And user can easily\r
assign any value to CoolingDeviceNominalSpeed.\r
\r
+ 22. Guid/DataHubRecords.h\r
+ typedef enum {\r
+ ...\r
+ EfiSlotDataBusWidth1xOrx1 = 0x8,\r
+ EfiSlotDataBusWidth2xOrx2 = 0x9,\r
+ EfiSlotDataBusWidth4xOrx4 = 0xA,\r
+ EfiSlotDataBusWidth8xOrx8 = 0xB,\r
+ EfiSlotDataBusWidth12xOrx12 = 0xC,\r
+ EfiSlotDataBusWidth16xOrx16 = 0xD,\r
+ EfiSlotDataBusWidth32xOrx32 = 0xE\r
+ } EFI_MISC_SLOT_DATA_BUS_WIDTH;\r
+\r
+ The enumeration fields from "EfiSlotDataBusWidth1xOrx1" to "EfiSlotDataBusWidth32xOrx32" are *NOT* defined in MiscSubclass specification 0.9.\r
+ They are introduced to support new system slots (type 9) defined in SmBios 2.6 specification.\r
+ Keeping this inconsistency to reflect the latest industry standard.\r
+\r
+ 23. Guid/DataHubRecords.h\r
+ typedef struct {\r
+ ...\r
+ UINT16 TemperatureProbeMaximumValue;\r
+ UINT16 TemperatureProbeMinimumValue;\r
+ UINT16 TemperatureProbeResolution;\r
+ UINT16 TemperatureProbeTolerance;\r
+ UINT16 TemperatureProbeAccuracy;\r
+ UINT16 TemperatureProbeNominalValue;\r
+ UINT16 MDLowerNoncriticalThreshold;\r
+ UINT16 MDUpperNoncriticalThreshold;\r
+ UINT16 MDLowerCriticalThreshold;\r
+ UINT16 MDUpperCriticalThreshold;\r
+ UINT16 MDLowerNonrecoverableThreshold;\r
+ UINT16 MDUpperNonrecoverableThreshold;\r
+ ...\r
+ } EFI_MISC_TEMPERATURE_PROBE_DESCRIPTION_DATA;\r
+\r
+ The structure fields from "TemperatureProbeMaximumValue" to "MDUpperNonrecoverableThreshold" are *NOT* consistent with MiscSubclass specification 0.9.\r
+ The specification defines the fields type as EFI_EXP_BASE10_DATA. In fact, they should be UINT16 type because they refer to 16bit width data.\r
+ Keeping this inconsistency for backward compatibility.\r
+\r
+ 24. Guid/DataHubRecords.h\r
+ #define EFI_MISC_IPMI_INTERFACE_TYPE_DATA_RECORD_NUMBER EFI_MISC_IPMI_INTERFACE_TYPE_RECORD_NUMBER\r
+\r
+ The definition above is *NOT* defined in MiscSubclass specifications 0.9. It's defined for backward compatibility.\r
+\r
##\r
# Mismatch with Intel Platform Innovation Framework for Status Codes Specification (Version 0.92)\r
##\r
#define EFI_SW_EC_X64_SIMD EXCEPT_X64_SIMD\r
\r
The definitions are *NOT* defined in Framework StatusCodes specification 0.92, in which IA32 and IPF exception subclass error code definitions\r
- are defined but omit the corresponding definitions for X64. EdkII introduce these definitions for implementation. \r
+ are defined but omit the corresponding definitions for X64. EdkII introduce these definitions for implementation.\r
\r
##\r
# Mismatch with Intel Platform Innovation Framework for EFI Boot Script Specification (Version 0.91)\r
Keeping this inconsistency for backward compatibility.\r
\r
5. Include/Protocol/BootScriptSave.h\r
- typedef \r
- EFI_STATUS \r
+ typedef\r
+ EFI_STATUS\r
(EFIAPI *EFI_BOOT_SCRIPT_CLOSE_TABLE) (\r
IN EFI_BOOT_SCRIPT_SAVE_PROTOCOL *This,\r
...\r
##\r
1. Include/Framework/DxeCis.h\r
EFI_STATUS_CODE_ARCH_PROTOCOL is removed.\r
- \r
+\r
EdkII doesn't provide EFI_STATUS_CODE_ARCH_PROTOCOL definition due to ReportStatusCode() field has been\r
removed from EFI Runtime Service Table of PI specification. EFI_STATUS_CODE_ARCH_PROTOCOL is *NOT* required,\r
and is replaced with EFI_STATUS_CODE_RUNTIME_PROTOCOL.\r
}\r
\r
The Framework HII specification 0.92 changed part of HII interfaces but did not update the protocol GUID.\r
- This change should cause a change of GUID in both of code and HII spec. EdkII updates the GUID in code, \r
+ This change should cause a change of GUID in both of code and HII spec. EdkII updates the GUID in code,\r
but the Framework HII specification 0.92 is not updated. This is a known issue.\r
\r
2. Include/Protocol/FrameworkHii.h\r
...\r
};\r
\r
- The field listed above is *NOT* defined in Framework HII specification 0.92. EdkII adds this field to provide \r
- an ability of removing any new strings that were added after the initial string export for this handle. \r
+ The field listed above is *NOT* defined in Framework HII specification 0.92. EdkII adds this field to provide\r
+ an ability of removing any new strings that were added after the initial string export for this handle.\r
\r
5. Include/Protocol/FrameworkHii.h\r
typedef\r
FRAMEWORK_EFI_IFR_OP_HEADER Header;\r
UINT8 Flags;\r
} EFI_IFR_SUPPRESS;\r
- \r
+\r
typedef struct {\r
FRAMEWORK_EFI_IFR_OP_HEADER Header;\r
UINT8 Flags;\r
} EFI_IFR_GRAY_OUT;\r
- \r
+\r
typedef struct {\r
FRAMEWORK_EFI_IFR_OP_HEADER Header;\r
STRING_REF Popup;\r
UINT8 Flags;\r
} EFI_IFR_INCONSISTENT;\r
- \r
+\r
typedef struct {\r
FRAMEWORK_EFI_IFR_OP_HEADER Header;\r
UINT16 QuestionId;\r
UINT8 Width;\r
UINT16 Value;\r
} FRAMEWORK_EFI_IFR_EQ_ID_VAL;\r
- \r
+\r
typedef struct {\r
FRAMEWORK_EFI_IFR_OP_HEADER Header;\r
UINT16 QuestionId;\r
UINT16 ListLength;\r
UINT16 ValueList[1];\r
} FRAMEWORK_EFI_IFR_EQ_ID_LIST;\r
- \r
+\r
typedef struct {\r
FRAMEWORK_EFI_IFR_OP_HEADER Header;\r
UINT16 QuestionId1;\r
UINT8 Width;\r
UINT16 QuestionId2;\r
} FRAMEWORK_EFI_IFR_EQ_ID_ID;\r
- \r
+\r
typedef struct {\r
FRAMEWORK_EFI_IFR_OP_HEADER Header;\r
UINT16 VariableId;\r
The defintions are not complied with Framework HII spec 0.92. Keeping the inconsistent for implementation needed.\r
\r
7. Include/Protocol/FrameworkFormCallback.h\r
- #define RESET_REQUIRED 1 \r
+ #define RESET_REQUIRED 1\r
#define EXIT_REQUIRED 2\r
#define SAVE_REQUIRED 4\r
#define NV_CHANGED 8\r
...\r
} EFI_SMRAM_HOB_DESCRIPTOR_BLOCK;\r
\r
- 1) The name of the definition is *NOT* consistent with Framework SmmCis specification 0.91, in which it's \r
- defined as "EFI_HOB_SMRAM_DESCRIPTOR_BLOCK" rather than "EFI_SMRAM_HOB_DESCRIPTOR_BLOCK". \r
+ 1) The name of the definition is *NOT* consistent with Framework SmmCis specification 0.91, in which it's\r
+ defined as "EFI_HOB_SMRAM_DESCRIPTOR_BLOCK" rather than "EFI_SMRAM_HOB_DESCRIPTOR_BLOCK".\r
Keeping this inconsistency for backward compatibility.\r
\r
2) The definition of NumberOfSmmReservedRegions is *NOT* consistent with Framework SmmCis specification 0.91,\r
3. Include/Framework/SmmCis.h\r
typedef union {\r
///\r
- /// The processor save-state information for IA-32 processors. \r
+ /// The processor save-state information for IA-32 processors.\r
///\r
EFI_SMI_CPU_SAVE_STATE Ia32SaveState;\r
///\r
EFI_STATUS\r
(EFIAPI *EFI_ACPI_S3_SAVE) (\r
IN EFI_ACPI_S3_SAVE_PROTOCOL *This,\r
- IN VOID *LegacyMemoryAddress \r
+ IN VOID *LegacyMemoryAddress\r
);\r
\r
The first parameter's type is *NOT* consistent with Framework S3Resume specification, in which it's defined as\r