From c08a3a96fd19ac8adc75f00d373b4a1606b26c00 Mon Sep 17 00:00:00 2001 From: Tinh Nguyen Date: Sun, 7 May 2023 17:29:13 +0800 Subject: [PATCH] MdePkg/IndustryStandard: Add IPMI Interface Capabilities definitions This adds more definitions for the IPMI Get System Interface Capabilities command. Signed-off-by: Tinh Nguyen Cc: Michael D Kinney Cc: Liming Gao Cc: Zhiguang Liu Cc: Abner Chang Reviewed-by: Abner Chang Reviewed-by: Liming Gao --- .../Include/IndustryStandard/IpmiNetFnApp.h | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h b/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h index a5835ba08c..b6bc91f46c 100644 --- a/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h +++ b/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h @@ -13,6 +13,7 @@ Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.
Copyright (C) 2023 Advanced Micro Devices, Inc. All rights reserved.
+ Copyright (c) 2023, Ampere Computing LLC. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent **/ @@ -1046,6 +1047,51 @@ typedef struct { // Constants and Structure definitions for "Get System Interface Capabilities" command to follow here // +#define IPMI_GET_SYSTEM_INTERFACE_CAPABILITIES_INTERFACE_TYPE_SSIF 0x0 +#define IPMI_GET_SYSTEM_INTERFACE_CAPABILITIES_INTERFACE_TYPE_KCS 0x1 +#define IPMI_GET_SYSTEM_INTERFACE_CAPABILITIES_INTERFACE_TYPE_SMIC 0x2 + +typedef union { + struct { + UINT8 InterfaceType : 4; + UINT8 Reserved : 4; + } Bits; + UINT8 Uint8; +} IPMI_GET_SYSTEM_INTERFACE_CAPABILITIES_REQUEST; + +typedef union { + struct { + UINT8 Version : 3; + UINT8 PecSupport : 1; + UINT8 Reserved : 2; + UINT8 TransactionSupport : 2; + } Bits; + UINT8 Uint8; +} IPMI_SYSTEM_INTERFACE_SSIF_CAPABILITIES; + +typedef union { + struct { + UINT8 SystemInterfaceVersion : 3; + UINT8 Reserved : 5; + } Bits; + UINT8 Uint8; +} IPMI_SYSTEM_INTERFACE_KCS_SMIC_CAPABILITIES; + +typedef struct { + UINT8 CompletionCode; + UINT8 Reserved; + IPMI_SYSTEM_INTERFACE_SSIF_CAPABILITIES InterfaceCap; + UINT8 InputMsgSize; + UINT8 OutputMsgSize; +} IPMI_GET_SYSTEM_INTERFACE_SSIF_CAPABILITIES_RESPONSE; + +typedef struct { + UINT8 CompletionCode; + UINT8 Reserved; + IPMI_SYSTEM_INTERFACE_KCS_SMIC_CAPABILITIES InterfaceCap; + UINT8 InputMaxMsgSize; +} IPMI_GET_SYSTEM_INTERFACE_KCS_SMIC_CAPABILITIES_RESPONSE; + // // Definitions for Get System Interface Capabilities command SSIF transaction support //