From: "Chang, Abner" <abner.chang@amd.com>
To: manickavasakam karpagavinayagam <manickavasakamk@ami.com>,
"devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: "michael.d.kinney@intel.com" <michael.d.kinney@intel.com>,
Zhiguang Liu <zhiguang.liu@intel.com>,
Liming Gao <gaoliming@byosoft.com.cn>,
"Oram, Isaac W" <isaac.w.oram@intel.com>
Subject: Re: [edk2-devel] [PATCH V2 1/3] MdePkg/IndustryStandard: Update IPMI definitions
Date: Thu, 12 Jan 2023 15:12:51 +0000 [thread overview]
Message-ID: <MN2PR12MB3966B1D5AB20E287B1F0ADBFEAFD9@MN2PR12MB3966.namprd12.prod.outlook.com> (raw)
In-Reply-To: <16581.1673535714749815678@groups.io>
[-- Attachment #1.1: Type: text/plain, Size: 1000 bytes --]
[AMD Official Use Only - General]
Hi MdePkg/IndustryStandard maintainers,
Could you please help to review this patch set and merge it if you have no concern with it? IPMI maintainer already gave it a reviewed-by.
Thanks
Abner
From: manickavasakamk via groups.io <manickavasakamk=ami.com@groups.io>
Sent: Thursday, January 12, 2023 11:02 PM
To: Chang; Chang, Abner <Abner.Chang@amd.com>; devel@edk2.groups.io
Subject: Re: [edk2-devel] [PATCH V2 1/3] MdePkg/IndustryStandard: Update IPMI definitions
Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
All :
When tried to build latest WhilteyOpenboardPkg using latest edk2-platforms, we are seeing build error because of missing IPMI_GET_SYSTEM_UUID_RESPONSE header.
https://github.com/tianocore/edk2-platforms/commit/e66b5daecbb3b8715ae686c0a1f105b72341a122
Please let us know when this patch will be checked in.
Thank you
-Manic
[-- Attachment #1.2: Type: text/html, Size: 4647 bytes --]
[-- Attachment #2: Type: message/rfc822, Size: 14953 bytes --]
From: "Oram, Isaac W" <isaac.w.oram@intel.com>
To: "Chang, Abner" <Abner.Chang@amd.com>, "devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: "Kinney, Michael D" <michael.d.kinney@intel.com>, "Gao, Liming" <gaoliming@byosoft.com.cn>, "Liu, Zhiguang" <zhiguang.liu@intel.com>, Nickle Wang <nicklew@nvidia.com>, Igor Kulchytskyy <igork@ami.com>, "Desimone, Nathaniel L" <nathaniel.l.desimone@intel.com>
Subject: RE: [PATCH V4 0/3] IPMI changes for Redfish
Date: Wed, 11 Jan 2023 23:11:07 +0000
Message-ID: <PH7PR11MB57958F998F4D6F6145ACC453D0FC9@PH7PR11MB5795.namprd11.prod.outlook.com>
Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
Series Reviewed-by: Isaac Oram <isaac.w.oram@intel.com>
-----Original Message-----
From: abner.chang@amd.com <abner.chang@amd.com>
Sent: Thursday, January 5, 2023 6:58 PM
To: devel@edk2.groups.io
Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Gao, Liming <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>; Nickle Wang <nicklew@nvidia.com>; Igor Kulchytskyy <igork@ami.com>; Oram, Isaac W <isaac.w.oram@intel.com>; Desimone, Nathaniel L <nathaniel.l.desimone@intel.com>
Subject: [PATCH V4 0/3] IPMI changes for Redfish
From: Abner Chang <abner.chang@amd.com>
In V4: Updateed copyright to 2023
Addressd the comment from Isaac on V3 2/3 In V3: Addressd the comments on V1 2/3 In V2: Addressd the comments on V1 3/3
This patch updates IPMI related definitions for supporting Redfish Host interface Credential bootstrapping spec and building up SMBIOS 42 record for the USB NIC host interface exposed by BMC.
The corresponding updates on IpmiFeaturePkg is in the separate pacth for edk2-platforms.
This is the part I of upstream, the follow up patche sets are:
- RedfishPlatformCredentialLib contributed by NVidia.
- Relocate IpmiCommandLib.h from edk2-platforms
to edk2/MdePkg. A NULL instance of IpmiCommandLib is created
and located under MdePkg. With above, RedfishPkg doesn't have the
dependence with edk2-platforms. The implementation of IpmiCommandLib
stays in edk2-platforms without relocation, which can be pulled in
to platform DSC as needed.
- PlatformHostInterfaceBmcUsbNic would be upstream to edk2-staging
temporarily because some requirements are necessray to be spec out
in the Redfish section in UEFI spec.
Signed-off-by: Abner Chang <abner.chang@amd.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: Nickle Wang <nicklew@nvidia.com>
Cc: Igor Kulchytskyy <igork@ami.com>
Cc: Isaac Oram <isaac.w.oram@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com> Abner Chang (3):
MdePkg/IndustryStandard: Update IPMI definitions
RedfishPkg/Include: Add Redfish IPMI definitions
RedfishPkg/Include: Redfish USB Interface V2 update
MdePkg/Include/IndustryStandard/Ipmi.h | 17 +++++++
.../Include/IndustryStandard/IpmiNetFnApp.h | 37 ++++++++++++--
.../IndustryStandard/IpmiNetFnTransport.h | 32 ++++++++++++
.../IndustryStandard/RedfishHostInterface.h | 25 ++++++++-
.../RedfishHostInterfaceIpmi.h | 51 +++++++++++++++++++
5 files changed, 157 insertions(+), 5 deletions(-) create mode 100644 RedfishPkg/Include/IndustryStandard/RedfishHostInterfaceIpmi.h
--
2.37.1.windows.1
[-- Attachment #3: Type: message/rfc822, Size: 18750 bytes --]
From: "Chang, Abner via groups.io" <abner.chang=amd.com@groups.io>
To: "devel@edk2.groups.io" <devel@edk2.groups.io>
Cc: Michael D Kinney <michael.d.kinney@intel.com>, Liming Gao <gaoliming@byosoft.com.cn>, Zhiguang Liu <zhiguang.liu@intel.com>, Nickle Wang <nicklew@nvidia.com>, Igor Kulchytskyy <igork@ami.com>, Isaac Oram <isaac.w.oram@intel.com>, Nate DeSimone <nathaniel.l.desimone@intel.com>
Subject: [edk2-devel] [PATCH V4 1/3] MdePkg/IndustryStandard: Update IPMI definitions
Date: Fri, 6 Jan 2023 02:57:53 +0000
Message-ID: <173798E6244C65C5.26636@groups.io>
Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
From: Abner Chang <abner.chang@amd.com>
This change updates IPMI header files to support
build up SMBIOS 42 Redfish Host Interface record
using the information retrieved via IPMI App/Net
Function.
Signed-off-by: Abner Chang <abner.chang@amd.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: Nickle Wang <nicklew@nvidia.com>
Cc: Igor Kulchytskyy <igork@ami.com>
Cc: Isaac Oram <isaac.w.oram@intel.com>
Cc: Nate DeSimone <nathaniel.l.desimone@intel.com>
---
MdePkg/Include/IndustryStandard/Ipmi.h | 17 +++++++++
.../Include/IndustryStandard/IpmiNetFnApp.h | 37 +++++++++++++++++--
.../IndustryStandard/IpmiNetFnTransport.h | 32 ++++++++++++++++
3 files changed, 82 insertions(+), 4 deletions(-)
diff --git a/MdePkg/Include/IndustryStandard/Ipmi.h b/MdePkg/Include/IndustryStandard/Ipmi.h
index 9d1d412b53e..d6e7436b5ae 100644
--- a/MdePkg/Include/IndustryStandard/Ipmi.h
+++ b/MdePkg/Include/IndustryStandard/Ipmi.h
@@ -6,6 +6,7 @@
and Appendix H, Sub-function Assignments.
Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
+ Copyright (C) 2023 Advanced Micro Devices, Inc. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
@@ -52,4 +53,20 @@
#define IPMI_COMP_CODE_SUBFUNCTION_DISABLED 0xD6
#define IPMI_COMP_CODE_UNSPECIFIED 0xFF
+#define IPMI_CHANNEL_NUMBER_PRIMARY_IPMB 0x00
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_1 0x01
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_2 0x02
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_3 0x03
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_4 0x04
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_5 0x05
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_6 0x06
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_7 0x07
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_8 0x08
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_9 0x09
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_10 0x0A
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_SPECIFIC_11 0x0B
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_RESERVED_12 0x0C
+#define IPMI_CHANNEL_NUMBER_IMPLEMENTATION_RESERVED_13 0x0D
+#define IPMI_CHANNEL_NUMBER_PRIMARY_PRESENT_IF 0x0E
+#define IPMI_CHANNEL_NUMBER_PRIMARY_SYSTEM_INTERFACE 0x0F
#endif
diff --git a/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h b/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h
index 0721bc6b271..a5835ba08c0 100644
--- a/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h
+++ b/MdePkg/Include/IndustryStandard/IpmiNetFnApp.h
@@ -12,6 +12,7 @@
and Appendix H, Sub-function Assignments.
Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
+ Copyright (C) 2023 Advanced Micro Devices, Inc. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
@@ -486,6 +487,11 @@ typedef struct {
//
#define IPMI_APP_GET_SYSTEM_GUID 0x37
+typedef struct {
+ UINT8 CompletionCode;
+ EFI_GUID SystemUuid;
+} IPMI_GET_SYSTEM_UUID_RESPONSE;
+
//
// Constants and Structure definitions for "Get System GUID" command to follow here
//
@@ -671,6 +677,30 @@ typedef struct {
#define IPMI_CHANNEL_MEDIA_TYPE_OEM_START 0x60
#define IPMI_CHANNEL_MEDIA_TYPE_OEM_END 0x7F
+//
+// Definitions for channel protocol type
+//
+// Not available
+#define IPMI_CHANNEL_PROTOCOL_TYPE_NA 0x00
+// IPMB-1.0
+#define IPMI_CHANNEL_PROTOCOL_TYPE_IPMB_1_0 0x01
+// ICMB-1.0
+#define IPMI_CHANNEL_PROTOCOL_TYPE_ICMB_1_0 0x02
+// Reserved
+#define IPMI_CHANNEL_PROTOCOL_TYPE_RESERVED 0x03
+// IPMI SMBUS
+#define IPMI_CHANNEL_PROTOCOL_TYPE_IPMI_SMBUS 0x04
+// KCS
+#define IPMI_CHANNEL_PROTOCOL_TYPE_KCS 0x05
+// SMIC
+#define IPMI_CHANNEL_PROTOCOL_TYPE_SMIC 0x06
+// BT-10
+#define IPMI_CHANNEL_PROTOCOL_TYPE_BT_10 0x07
+// BT-15
+#define IPMI_CHANNEL_PROTOCOL_TYPE_BT_15 0x08
+// TMode
+#define IPMI_CHANNEL_PROTOCOL_TYPE_TMODE 0x09
+
typedef union {
struct {
UINT8 ChannelNo : 4;
@@ -713,10 +743,9 @@ typedef struct {
UINT16 AuxChannelInfo;
} IPMI_GET_CHANNEL_INFO_RESPONSE;
-//
-// Definitions for Get Channel Info command
-//
-#define IPMI_APP_GET_CHANNEL_INFO 0x42
+typedef struct {
+ IPMI_CHANNEL_INFO_CHANNEL_NUMBER ChannelNumber;
+} IPMI_GET_CHANNEL_INFO_REQUEST;
//
// Constants and Structure definitions for "Get Channel Info" command to follow here
diff --git a/MdePkg/Include/IndustryStandard/IpmiNetFnTransport.h b/MdePkg/Include/IndustryStandard/IpmiNetFnTransport.h
index 19db84e5122..2024c35f7fa 100644
--- a/MdePkg/Include/IndustryStandard/IpmiNetFnTransport.h
+++ b/MdePkg/Include/IndustryStandard/IpmiNetFnTransport.h
@@ -11,6 +11,7 @@
and Appendix H, Sub-function Assignments.
Copyright (c) 1999 - 2018, Intel Corporation. All rights reserved.<BR>
+ Copyright (C) 2023 Advanced Micro Devices, Inc. All rights reserved.<BR>
SPDX-License-Identifier: BSD-2-Clause-Patent
**/
@@ -60,6 +61,7 @@ typedef enum {
IpmiLanReserved3,
IpmiLanDestinationType,
IpmiLanDestinationAddress,
+ IpmiLanVlanId = 0x14,
IpmiIpv4OrIpv6Support = 0x32,
IpmiIpv4OrIpv6AddressEnable,
IpmiIpv6HdrStatTrafficClass,
@@ -103,6 +105,14 @@ typedef enum {
IpmiOem2
} IPMI_LAN_DEST_TYPE_DEST_TYPE;
+//
+// Destination address format
+//
+typedef enum {
+ IpmiDestinationAddressVersion4,
+ IpmiDestinationAddressVersion6
+} IPMI_LAN_DEST_ADDRESS_VERSION;
+
typedef union {
struct {
UINT8 NoAuth : 1;
@@ -177,6 +187,10 @@ typedef struct {
UINT8 ArpInterval;
} IPMI_LAN_ARP_INTERVAL;
+typedef struct {
+ UINT8 IpAddress[4];
+} IPMI_LAN_DEFAULT_GATEWAY;
+
typedef struct {
UINT8 Data[18];
} IPMI_LAN_COMMUNITY_STRING;
@@ -227,6 +241,24 @@ typedef struct {
IPMI_LAN_MAC_ADDRESS AlertingMacAddress;
} IPMI_LAN_DEST_ADDRESS;
+typedef struct {
+ UINT8 VanIdLowByte;
+} IPMI_LAN_VLAN_ID_DATA1;
+
+typedef union {
+ struct {
+ UINT8 VanIdHighByte : 4;
+ UINT8 Reserved : 3;
+ UINT8 Enabled : 1;
+ } Bits;
+ UINT8 Uint8;
+} IPMI_LAN_VLAN_ID_DATA2;
+
+typedef struct {
+ IPMI_LAN_VLAN_ID_DATA1 Data1;
+ IPMI_LAN_VLAN_ID_DATA2 Data2;
+} IPMI_LAN_VLAN_ID;
+
typedef union {
IPMI_LAN_AUTH_TYPE IpmiLanAuthType;
IPMI_LAN_IP_ADDRESS IpmiLanIpAddress;
--
2.37.1.windows.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#98051): https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fedk2.groups.io%2Fg%2Fdevel%2Fmessage%2F98051&data=05%7C01%7Cabner.chang%40amd.com%7C387a6e7136834a2027a608daef91e2b0%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C638085707106708023%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=6VCtqrQvsLKFopSW8D6r5TeMSb3rdebLB6Gi5tSFNkY%3D&reserved=0
Mute This Topic: https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgroups.io%2Fmt%2F96087044%2F7039027&data=05%7C01%7Cabner.chang%40amd.com%7C387a6e7136834a2027a608daef91e2b0%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C638085707106708023%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=zogrcJD8UxsLL3fIu19QmNX4hHtj2g9nSle6d%2FS2Prw%3D&reserved=0
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fedk2.groups.io%2Fg%2Fdevel%2Funsub&data=05%7C01%7Cabner.chang%40amd.com%7C387a6e7136834a2027a608daef91e2b0%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C638085707106708023%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=hR69KQeXeouA2xGGMTMmAAgtX5l0GfQ2cb9Q5uzswCQ%3D&reserved=0 [abner.chang@amd.com]
-=-=-=-=-=-=-=-=-=-=-=-
next prev parent reply other threads:[~2023-01-12 15:12 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-28 5:13 [PATCH V2 0/3] IPMI changes for Redfish Chang, Abner
2022-12-28 5:13 ` [PATCH V2 1/3] MdePkg/IndustryStandard: Update IPMI definitions Chang, Abner
2023-01-12 15:01 ` [edk2-devel] " manickavasakam karpagavinayagam
2023-01-12 15:12 ` Chang, Abner [this message]
2023-01-14 5:21 ` Chang, Abner
2022-12-28 5:13 ` [PATCH V2 2/3] RedfishPkg/Include: Add Redfish " Chang, Abner
2022-12-28 5:13 ` [PATCH V2 3/3] RedfishPkg/Include: Redfish USB Interface V2 update Chang, Abner
2022-12-28 6:28 ` Nickle Wang
2022-12-28 15:32 ` Igor Kulchytskyy
2022-12-29 17:37 ` [edk2-devel] [PATCH V2 0/3] IPMI changes for Redfish Michael D Kinney
2022-12-30 4:10 ` Chang, Abner
2023-01-08 15:18 ` Chang, Abner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=MN2PR12MB3966B1D5AB20E287B1F0ADBFEAFD9@MN2PR12MB3966.namprd12.prod.outlook.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox