diff options
author | Daocheng Bu <daocheng.bu@intel.com> | 2015-12-23 12:24:24 +0000 |
---|---|---|
committer | hwu1225 <hwu1225@Edk2> | 2015-12-23 12:24:24 +0000 |
commit | 26db317acc4e0c2cc7023f24a8128cd9b86bacf0 (patch) | |
tree | e84d2f33ecd4e679b65863adb1fd803161b89a9a | |
parent | 1dedc8f2a4ad2d65ba88688b1ea35e52a6056767 (diff) | |
download | edk2-platforms-26db317acc4e0c2cc7023f24a8128cd9b86bacf0.tar.xz |
MdePkg: Update Ipmi2.0 definitions header file.
Update Ipmi2.0 definitions header files for data structure
name suffix for request/response data and completion code.
(Sync patch r19484 from main trunk.)
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Daocheng Bu <daocheng.bu@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/branches/UDK2015@19493 6f19259b-4bc3-4df7-8a09-765794883524
5 files changed, 95 insertions, 83 deletions
diff --git a/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h b/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h index c0865dae41..31f9e839ea 100644 --- a/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h +++ b/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h @@ -43,6 +43,7 @@ // Constants and Structure definitions for "Get Device ID" command to follow here
//
typedef struct {
+ UINT8 CompletionCode;
UINT8 DeviceId;
UINT8 DeviceRevision : 4;
UINT8 Reserved : 3;
@@ -62,7 +63,7 @@ typedef struct { UINT8 ManufacturerId[3];
UINT16 ProductId;
UINT32 AuxFirmwareRevInfo;
-} IPMI_MSG_GET_DEVICE_ID_RSP;
+} IPMI_GET_DEVICE_ID_RESPONSE;
//
@@ -89,12 +90,13 @@ typedef struct { #define IPMI_APP_GET_SELFTEST_RESULTS 0x4
//
-// Constants and Structure definitions for "Get Self Results" command to follow here
+// Constants and Structure definitions for "Get Self Test Results" command to follow here
//
typedef struct {
+ UINT8 CompletionCode;
UINT8 Result;
UINT8 Param;
-} IPMI_MSG_SELFTEST_RESULT_RSP;
+} IPMI_SELF_TEST_RESULT_RESPONSE;
#define IPMI_APP_SELFTEST_NO_ERROR 0x55
#define IPMI_APP_SELFTEST_NOT_IMPLEMENTED 0x56
@@ -127,11 +129,11 @@ typedef struct { // Constants and Structure definitions for "Set ACPI Power State" command to follow here
//
typedef struct {
- UINT8 SystemPowerState : 7;
- UINT8 SystemStateChange : 1;
- UINT8 DevicePowerState : 7;
- UINT8 DeviceStateChange : 1;
-} IPMI_ACPI_POWER_STATE;
+ UINT8 AcpiSystemPowerState : 7;
+ UINT8 AcpiSystemStateChange : 1;
+ UINT8 AcpiDevicePowerState : 7;
+ UINT8 AcpiDeviceStateChange : 1;
+} IPMI_SET_ACPI_POWER_STATE_REQUEST;
//
// Definitions for Get ACPI Power State command
@@ -154,8 +156,9 @@ typedef struct { // Message structure definition for "Get Device Guid" IPMI command
//
typedef struct {
- UINT8 Guid[16];
-} IPMI_MSG_GET_DEVICE_GUID_RSP;
+ UINT8 CompletionCode;
+ UINT8 Guid[16];
+} IPMI_GET_DEVICE_GUID_RESPONSE;
//
// Below is Definitions for BMC Watchdog Timer Commands (Chapter 27)
@@ -190,7 +193,7 @@ typedef struct { UINT8 PretimeoutInterval;
UINT8 TimerUseExpirationFlagsClear;
UINT16 InitialCountdownValue;
-} IPMI_SET_WATCHDOG_TIMER;
+} IPMI_SET_WATCHDOG_TIMER_REQUEST;
//
// Definitions for Get WatchDog Timer command
@@ -201,13 +204,14 @@ typedef struct { // Constants and Structure definitions for "Get WatchDog Timer" command to follow here
//
typedef struct {
+ UINT8 CompletionCode;
IPMI_WATCHDOG_TIMER_USE TimerUse;
UINT8 TimerActions;
UINT8 PretimeoutInterval;
UINT8 TimerUseExpirationFlagsClear;
UINT16 InitialCountdownValue;
UINT16 PresentCountdownValue;
-} IPMI_GET_WATCHDOG_TIMER;
+} IPMI_GET_WATCHDOG_TIMER_RESPONSE;
//
// Below is Definitions for IPMI Messaging Support Commands (Chapter 22)
@@ -384,20 +388,21 @@ typedef struct { // Constants and Structure definitions for "Get Channel Access" command to follow here
//
typedef struct {
- UINT8 ChannelNo : 4;
- UINT8 Reserve1 : 4;
- UINT8 Reserve2 : 6;
- UINT8 MemoryType : 2;
-} IPMI_GET_CHANNEL_ACCESS_COMMAND;
+ UINT8 ChannelNo : 4;
+ UINT8 Reserve1 : 4;
+ UINT8 Reserve2 : 6;
+ UINT8 MemoryType : 2;
+} IPMI_GET_CHANNEL_ACCESS_REQUEST;
typedef struct {
- UINT8 AccessMode : 3;
- UINT8 UserLevelAuthEnabled : 1;
- UINT8 MessageAuthEnable : 1;
- UINT8 Alert : 1;
- UINT8 Reserve1 : 2;
- UINT8 ChannelPriviledgeLimit : 4;
- UINT8 Reserve2 : 4;
+ UINT8 CompletionCode;
+ UINT8 AccessMode : 3;
+ UINT8 UserLevelAuthEnabled : 1;
+ UINT8 MessageAuthEnable : 1;
+ UINT8 Alert : 1;
+ UINT8 Reserve1 : 2;
+ UINT8 ChannelPriviledgeLimit : 4;
+ UINT8 Reserve2 : 4;
} IPMI_GET_CHANNEL_ACCESS_RESPONSE;
//
@@ -409,6 +414,7 @@ typedef struct { // Constants and Structure definitions for "Get Channel Info" command to follow here
//
typedef struct {
+ UINT8 CompletionCode;
UINT8 ChannelNo : 4;
UINT8 Reserve1 : 4;
UINT8 ChannelMediumType : 7;
@@ -417,10 +423,9 @@ typedef struct { UINT8 Reserve3 : 3;
UINT8 ActiveSessionCount : 6;
UINT8 SessionSupport : 2;
- UINT32 VendorId : 24;
- UINT16 AuxChannelInfo : 16;
- UINT8 Dummy;
-} IPMI_CHANNEL_INFO;
+ UINT8 VendorId[3];
+ UINT16 AuxChannelInfo;
+} IPMI_GET_CHANNEL_INFO_RESPONSE;
//
// Definitions for Get Channel Info command
diff --git a/MdePkg/Include/IndustryStandard/IpmiNetFnChassis.h b/MdePkg/Include/IndustryStandard/IpmiNetFnChassis.h index 7bf6cf3101..b549dc4366 100644 --- a/MdePkg/Include/IndustryStandard/IpmiNetFnChassis.h +++ b/MdePkg/Include/IndustryStandard/IpmiNetFnChassis.h @@ -117,10 +117,11 @@ typedef enum { } IPMI_SYSTEM_RESTART_CAUSE;
typedef struct {
- UINT8 Cause:4;
- UINT8 Reserved:4;
- UINT8 ChannelNumber;
-} GET_SYSTEM_RESTART_CAUSE_RESPONSE;
+ UINT8 CompletionCode;
+ UINT8 Cause:4;
+ UINT8 Reserved:4;
+ UINT8 ChannelNumber;
+} IPMI_GET_SYSTEM_RESTART_CAUSE_RESPONSE;
//
// Definitions for Set System BOOT options command
@@ -136,10 +137,6 @@ typedef struct { UINT8 ParameterData[1];
} IPMI_SET_BOOT_OPTIONS_REQUEST;
-typedef struct {
- UINT8 CompletionCode:8;
-} IPMI_SET_BOOT_OPTIONS_RESPONSE;
-
//
// Definitions for Get System BOOT options command
//
@@ -149,6 +146,13 @@ typedef struct { // Constants and Structure definitions for "Get System boot options" command to follow here
//
typedef struct {
+ UINT8 ParameterSelector:7;
+ UINT8 Reserved:1;
+ UINT8 SetSelector;
+ UINT8 BlockSelector;
+} IPMI_GET_BOOT_OPTIONS_REQUEST;
+
+typedef struct {
UINT8 Parameter;
UINT8 Valid;
UINT8 Data1;
@@ -167,12 +171,6 @@ typedef struct { UINT8 Reserved[3];
} IPMI_BOOT_INITIATOR;
-typedef struct {
- UINT8 ParameterSelector;
- UINT8 SetSelector;
- UINT8 BlockSelector;
-} IPMI_GET_BOOT_OPTIONS_REQUEST;
-
//
// Response Parameters for IPMI Get Boot Options
//
@@ -259,6 +257,7 @@ typedef union { } IPMI_BOOT_OPTIONS_PARAMETERS;
typedef struct {
+ UINT8 CompletionCode;
UINT8 ParameterVersion:4;
UINT8 Reserved:4;
UINT8 ParameterSelector:7;
@@ -269,7 +268,7 @@ typedef struct { //
// Definitions for Set front panel button enables command
//
-#define IPMI_CHASSIS_SET_FP_BUTTON_ENABLES 0x0A
+#define IPMI_CHASSIS_SET_FRONT_PANEL_BUTTON_ENABLES 0x0A
typedef struct {
UINT8 DisablePoweroffButton:1;
@@ -277,7 +276,7 @@ typedef struct { UINT8 DisableDiagnosticInterruptButton:1;
UINT8 DisableStandbyButton:1;
UINT8 Reserved:4;
-} IPMI_SET_FRONT_PANEL_BUTTON_ENABLES_REQUEST;
+} IPMI_CHASSIS_SET_FRONT_PANEL_BUTTON_ENABLES_REQUEST;
//
// Constants and Structure definitions for "Set front panel button enables" command to follow here
diff --git a/MdePkg/Include/IndustryStandard/IpmiNetFnSensorEvent.h b/MdePkg/Include/IndustryStandard/IpmiNetFnSensorEvent.h index bc35634826..a3cfad1bcd 100644 --- a/MdePkg/Include/IndustryStandard/IpmiNetFnSensorEvent.h +++ b/MdePkg/Include/IndustryStandard/IpmiNetFnSensorEvent.h @@ -46,7 +46,7 @@ typedef struct { UINT8 OEMEvData1;
UINT8 OEMEvData2;
UINT8 OEMEvData3;
-} IPMI_PLATFORM_EVENT_MESSAGE_DATA;
+} IPMI_PLATFORM_EVENT_MESSAGE_DATA_REQUEST;
#pragma pack()
#endif
diff --git a/MdePkg/Include/IndustryStandard/IpmiNetFnStorage.h b/MdePkg/Include/IndustryStandard/IpmiNetFnStorage.h index 45c7d19f14..7abcd4a3be 100644 --- a/MdePkg/Include/IndustryStandard/IpmiNetFnStorage.h +++ b/MdePkg/Include/IndustryStandard/IpmiNetFnStorage.h @@ -5,6 +5,7 @@ FRU Inventory Commands (Chapter 34)
SDR Repository (Chapter 33)
System Event Log(SEL) Commands (Chapter 31)
+ SEL Record Formats (Chapter 32)
See IPMI specification, Appendix G, Command Assignments
and Appendix H, Sub-function Assignments.
@@ -89,6 +90,7 @@ typedef struct { // Constants and Structure definitions for "Get SDR Repository Info" command to follow here
//
typedef struct {
+ UINT8 CompletionCode;
UINT8 Version;
UINT16 RecordCount;
UINT16 FreeSpace;
@@ -101,7 +103,7 @@ typedef struct { UINT8 Reserved : 1;
UINT8 SdrRepUpdateOp : 2;
UINT8 Overflow : 1;
-} IPMI_SDR_REPOSITORY_INFO;
+} IPMI_GET_SDR_REPOSITORY_INFO;
//
// Definitions for Get SDR Repository Allocateion Info command
@@ -281,7 +283,7 @@ typedef struct { UINT16 RecordId;
UINT8 RecordOffset;
UINT8 BytesToRead;
-} IPMI_GET_SDR;
+} IPMI_GET_SDR_REQUEST;
//
// Definitions for Add SDR command
@@ -377,13 +379,14 @@ typedef struct { // Constants and Structure definitions for "Get SEL Info" command to follow here
//
typedef struct {
+ UINT8 CompletionCode;
UINT8 Version; // Version of SEL
UINT16 NoOfEntries; // No of Entries in the SEL
UINT16 FreeSpace; // Free space in Bytes
UINT32 RecentAddTimeStamp; // Most Recent Addition of Time Stamp
UINT32 RecentEraseTimeStamp; // Most Recent Erasure of Time Stamp
UINT8 OperationSupport; // Operation Support
-} IPMI_SEL_INFO;
+} IPMI_GET_SEL_INFO_RESPONSE;
//
// Definitions for Get SEL Allocation Info command
@@ -411,14 +414,12 @@ typedef struct { //
// Constants and Structure definitions for "Get SEL Entry" command to follow here
//
-#define IPMI_COMPLETE_SEL_RECORD 0xFF
-
typedef struct {
UINT8 ReserveId[2]; // Reservation ID, LS Byte First
UINT8 SelRecID[2]; // Sel Record ID, LS Byte First
UINT8 Offset; // Offset Into Record
UINT8 BytesToRead; // Bytes to be Read, 0xFF for entire record
-} IPMI_GET_SEL_ENTRY;
+} IPMI_GET_SEL_ENTRY_REQUEST;
//
// Definitions for Add SEL Entry command
@@ -428,34 +429,6 @@ typedef struct { //
// Constants and Structure definitions for "Add SEL Entry" command to follow here
//
-typedef struct {
- UINT16 RecordId;
- UINT8 RecordType;
- UINT32 TimeStamp;
- UINT16 GeneratorId;
- UINT8 EvMRevision;
- UINT8 SensorType;
- UINT8 SensorNumber;
- UINT8 EventDirType;
- UINT8 OEMEvData1;
- UINT8 OEMEvData2;
- UINT8 OEMEvData3;
-} IPMI_SEL_RECORD_DATA;
-
-#define IPMI_SEL_SYSTEM_RECORD 0x02
-
-#define IPMI_EVM_REVISION 0x04
-#define IPMI_BIOS_ID 0x18
-#define IPMI_FORMAT_REV 0x00
-#define IPMI_FORMAT_REV1 0x01
-#define IPMI_SOFTWARE_ID 0x01
-#define IPMI_PLATFORM_VAL_ID 0x01
-#define IPMI_GENERATOR_ID(i,f) ((i << 1) | (f << 1) | IPMI_SOFTWARE_ID)
-
-#define IPMI_SENSOR_TYPE_EVENT_CODE_DISCRETE 0x6F
-
-#define IPMI_OEM_SPECIFIC_DATA 0x02
-#define IPMI_SENSOR_SPECIFIC_DATA 0x03
//
// Definitions for Partial Add SEL Entry command
@@ -477,7 +450,7 @@ typedef struct { typedef struct {
UINT8 ReserveId[2]; // Reservation ID, LS byte first
UINT8 RecordToDelete[2]; // Record to Delete, LS Byte First
-} IPMI_DELETE_SEL;
+} IPMI_DELETE_SEL_REQUEST;
//
// Definitions for Clear SEL command
@@ -493,7 +466,7 @@ typedef struct { UINT8 AscL; // Ascii for 'L' (0x4c)
UINT8 AscR; // Ascii for 'R' (0x52)
UINT8 Erase; // 0xAA, Initiate Erase, 0x00 Get Erase Status
-} IPMI_CLEAR_SEL;
+} IPMI_CLEAR_SEL_REQUEST;
//
// Definitions for Get SEL Time command
@@ -530,5 +503,40 @@ typedef struct { //
// Constants and Structure definitions for "Set Auxillary Log Status" command to follow here
//
+
+#define IPMI_COMPLETE_SEL_RECORD 0xFF
+
+//
+// Below is Definitions for SEL Record Formats (Chapter 32)
+//
+typedef struct {
+ UINT16 RecordId;
+ UINT8 RecordType;
+ UINT32 TimeStamp;
+ UINT16 GeneratorId;
+ UINT8 EvMRevision;
+ UINT8 SensorType;
+ UINT8 SensorNumber;
+ UINT8 EventDirType;
+ UINT8 OEMEvData1;
+ UINT8 OEMEvData2;
+ UINT8 OEMEvData3;
+} IPMI_SEL_EVENT_RECORD_DATA;
+
+#define IPMI_SEL_SYSTEM_RECORD 0x02
+
+#define IPMI_EVM_REVISION 0x04
+#define IPMI_BIOS_ID 0x18
+#define IPMI_FORMAT_REV 0x00
+#define IPMI_FORMAT_REV1 0x01
+#define IPMI_SOFTWARE_ID 0x01
+#define IPMI_PLATFORM_VAL_ID 0x01
+#define IPMI_GENERATOR_ID(i,f) ((i << 1) | (f << 1) | IPMI_SOFTWARE_ID)
+
+#define IPMI_SENSOR_TYPE_EVENT_CODE_DISCRETE 0x6F
+
+#define IPMI_OEM_SPECIFIC_DATA 0x02
+#define IPMI_SENSOR_SPECIFIC_DATA 0x03
+
#pragma pack()
#endif
diff --git a/MdePkg/Include/IndustryStandard/IpmiNetFnTransport.h b/MdePkg/Include/IndustryStandard/IpmiNetFnTransport.h index 6fb9297211..1e9bbe2755 100644 --- a/MdePkg/Include/IndustryStandard/IpmiNetFnTransport.h +++ b/MdePkg/Include/IndustryStandard/IpmiNetFnTransport.h @@ -439,7 +439,7 @@ typedef struct { UINT8 Reserved1 : 4;
UINT8 MuxSetting : 4;
UINT8 Reserved2 : 4;
-} IPMI_SET_MUX_COMMAND;
+} IPMI_SET_SERIAL_MODEM_MUX_COMMAND_REQUEST;
typedef struct {
UINT8 MuxSetToBmc : 1;
@@ -449,7 +449,7 @@ typedef struct { UINT8 Reserved2 : 2;
UINT8 MuxToBmcAllowed : 1;
UINT8 MuxToSystemBlocked : 1;
-} IPMI_MUX_CONFIG;
+} IPMI_SET_SERIAL_MODEM_MUX_COMMAND_RESPONSE;
//
// Definitions for Get TAP Response Code command
|