Update Ipmi2.0 definitions header files for data structure
name suffix for request/response data and completion code.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Daocheng Bu <daocheng...@intel.com>
Cc: Liming Gao <liming....@intel.com>
---
 MdePkg/Include/IndustryStandard/IpmiNetFnApp.h     | 61 +++++++++--------
 MdePkg/Include/IndustryStandard/IpmiNetFnChassis.h | 45 ++++++------
 .../IndustryStandard/IpmiNetFnSensorEvent.h        |  2 +-
 MdePkg/Include/IndustryStandard/IpmiNetFnStorage.h | 80 ++++++++++++----------
 .../Include/IndustryStandard/IpmiNetFnTransport.h  |  4 +-
 5 files changed, 102 insertions(+), 90 deletions(-)

diff --git a/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h 
b/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h
index c0865da..31f9e83 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 7bf6cf3..ee5fabe 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,13 +146,20 @@ typedef struct {
 //  Constants and Structure definitions for "Get System boot options" command 
to follow here
 //
 typedef struct {
-  UINT8 Parameter;
-  UINT8 Valid;
-  UINT8 Data1;
-  UINT8 Data2;
-  UINT8 Data3;
-  UINT8 Data4;
-  UINT8 Data5;
+  UINT8    ParameterSelector:7;
+  UINT8    Reserved:1;
+  UINT8    SetSelector;
+  UINT8    BlockSelector;
+} IPMI_GET_BOOT_OPTIONS_REQUEST;
+
+typedef struct {
+  UINT8  Parameter;
+  UINT8  Valid;
+  UINT8  Data1;
+  UINT8  Data2;
+  UINT8  Data3;
+  UINT8  Data4;
+  UINT8  Data5;
 } IPMI_GET_THE_SYSTEM_BOOT_OPTIONS;
 
 typedef struct {
@@ -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 bc35634..a3cfad1 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 45c7d19..7abcd4a 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 6fb9297..1e9bbe2 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
-- 
2.5.1.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to