[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....@groups.io>
Sent: Thursday, January 12, 2023 11:02 PM
To: Chang; Chang, Abner <abner.ch...@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
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#98371): https://edk2.groups.io/g/devel/message/98371
Mute This Topic: https://groups.io/mt/95915833/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-
--- Begin Message ---
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.o...@intel.com>
-----Original Message-----
From: abner.ch...@amd.com <abner.ch...@amd.com>
Sent: Thursday, January 5, 2023 6:58 PM
To: devel@edk2.groups.io
Cc: Kinney, Michael D <michael.d.kin...@intel.com>; Gao, Liming
<gaolim...@byosoft.com.cn>; Liu, Zhiguang <zhiguang....@intel.com>; Nickle Wang
<nick...@nvidia.com>; Igor Kulchytskyy <ig...@ami.com>; Oram, Isaac W
<isaac.w.o...@intel.com>; Desimone, Nathaniel L <nathaniel.l.desim...@intel.com>
Subject: [PATCH V4 0/3] IPMI changes for Redfish
From: Abner Chang <abner.ch...@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.ch...@amd.com>
Cc: Michael D Kinney <michael.d.kin...@intel.com>
Cc: Liming Gao <gaolim...@byosoft.com.cn>
Cc: Zhiguang Liu <zhiguang....@intel.com>
Cc: Nickle Wang <nick...@nvidia.com>
Cc: Igor Kulchytskyy <ig...@ami.com>
Cc: Isaac Oram <isaac.w.o...@intel.com>
Cc: Nate DeSimone <nathaniel.l.desim...@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
--- End Message ---
--- Begin Message ---
Caution: This message originated from an External Source. Use proper caution
when opening attachments, clicking links, or responding.
From: Abner Chang <abner.ch...@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.ch...@amd.com>
Cc: Michael D Kinney <michael.d.kin...@intel.com>
Cc: Liming Gao <gaolim...@byosoft.com.cn>
Cc: Zhiguang Liu <zhiguang....@intel.com>
Cc: Nickle Wang <nick...@nvidia.com>
Cc: Igor Kulchytskyy <ig...@ami.com>
Cc: Isaac Oram <isaac.w.o...@intel.com>
Cc: Nate DeSimone <nathaniel.l.desim...@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+ow...@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.ch...@amd.com]
-=-=-=-=-=-=-=-=-=-=-=-
--- End Message ---