]> xenbits.xensource.com Git - ovmf.git/commitdiff
MdePkg/IndustryStandard: Add IPMI Interface Capabilities definitions
authorTinh Nguyen <tinhnguyen@os.amperecomputing.com>
Sun, 7 May 2023 09:29:13 +0000 (17:29 +0800)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Fri, 12 May 2023 04:00:18 +0000 (04:00 +0000)
This adds more definitions for the IPMI Get System Interface
Capabilities command.

Signed-off-by: Tinh Nguyen <tinhnguyen@os.amperecomputing.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Zhiguang Liu <zhiguang.liu@intel.com>
Cc: Abner Chang <abner.chang@amd.com>
Reviewed-by: Abner Chang <abner.chang@amd.com>
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
MdePkg/Include/IndustryStandard/IpmiNetFnApp.h

index a5835ba08c00bfcc4cf6366147a48d91614aeb9c..b6bc91f46c2d8eb96dfcda755b00f0b16f89f705 100644 (file)
@@ -13,6 +13,7 @@
 \r
   Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>\r
   Copyright (C) 2023 Advanced Micro Devices, Inc. All rights reserved.<BR>\r
+  Copyright (c) 2023, Ampere Computing LLC. All rights reserved.<BR>\r
   SPDX-License-Identifier: BSD-2-Clause-Patent\r
 **/\r
 \r
@@ -1046,6 +1047,51 @@ typedef struct {
 //  Constants and Structure definitions for "Get System Interface Capabilities" command to follow here\r
 //\r
 \r
+#define IPMI_GET_SYSTEM_INTERFACE_CAPABILITIES_INTERFACE_TYPE_SSIF  0x0\r
+#define IPMI_GET_SYSTEM_INTERFACE_CAPABILITIES_INTERFACE_TYPE_KCS   0x1\r
+#define IPMI_GET_SYSTEM_INTERFACE_CAPABILITIES_INTERFACE_TYPE_SMIC  0x2\r
+\r
+typedef union {\r
+  struct {\r
+    UINT8    InterfaceType : 4;\r
+    UINT8    Reserved      : 4;\r
+  } Bits;\r
+  UINT8    Uint8;\r
+} IPMI_GET_SYSTEM_INTERFACE_CAPABILITIES_REQUEST;\r
+\r
+typedef union {\r
+  struct {\r
+    UINT8    Version            : 3;\r
+    UINT8    PecSupport         : 1;\r
+    UINT8    Reserved           : 2;\r
+    UINT8    TransactionSupport : 2;\r
+  } Bits;\r
+  UINT8    Uint8;\r
+} IPMI_SYSTEM_INTERFACE_SSIF_CAPABILITIES;\r
+\r
+typedef union {\r
+  struct {\r
+    UINT8    SystemInterfaceVersion : 3;\r
+    UINT8    Reserved               : 5;\r
+  } Bits;\r
+  UINT8    Uint8;\r
+} IPMI_SYSTEM_INTERFACE_KCS_SMIC_CAPABILITIES;\r
+\r
+typedef struct {\r
+  UINT8                                      CompletionCode;\r
+  UINT8                                      Reserved;\r
+  IPMI_SYSTEM_INTERFACE_SSIF_CAPABILITIES    InterfaceCap;\r
+  UINT8                                      InputMsgSize;\r
+  UINT8                                      OutputMsgSize;\r
+} IPMI_GET_SYSTEM_INTERFACE_SSIF_CAPABILITIES_RESPONSE;\r
+\r
+typedef struct {\r
+  UINT8                                          CompletionCode;\r
+  UINT8                                          Reserved;\r
+  IPMI_SYSTEM_INTERFACE_KCS_SMIC_CAPABILITIES    InterfaceCap;\r
+  UINT8                                          InputMaxMsgSize;\r
+} IPMI_GET_SYSTEM_INTERFACE_KCS_SMIC_CAPABILITIES_RESPONSE;\r
+\r
 //\r
 //  Definitions for Get System Interface Capabilities command SSIF transaction support\r
 //\r