Hi Abner,

I'm not sure if I understand this module completely.

This module is another IPMI solution? we will utilize either ManageabilityPkg (using IPMI protocol specified in the EDK2 repo) or IpmiFeaturePkg (using IpmiTransportProtocol). How do I use IpmiCommandLib (IpmiFeaturePkg/Library/IpmiCommandLib/IpmiCommandLib.inf) in combined with ManageabilityPkg?

Another question, you don't use "Transport Protocol" and "Protocol Driver" in the KCS ManageabilityTransportLib you implement for reference because edk2 does not define a protocol for KCS , right?

However, if I want to support other interfaces, I should build "ManageabilityTransportLib" using the protocol provided by the PI or UEFI specifications.

Thanks,

- Tinh

On 3/8/2023 9:16 PM, Chang, Abner via groups.io wrote:
From: Abner Chang <abner.ch...@amd.com>

edk2 ManageabilityPkg is introduced to provide edk2 drivers
and libraries for industry platform management standards,
such as PLDM (Platform Level Data Model), MCTP (Management
Component Transfer Protocol),
IPMI (Intelligent Platform Management Interface) and others.
The framework of ManageabilityPkg is designed to flexibly
support the transport interfaces for above industry
standards, the transport interfaces such as KCS or I2C for
IPMI, PCI VDM (Vendor Defined Message),
I2C or KCS for MCTP, or the OEM proprietary transports.
Please check the Readme file for the design guidance:
https://github.com/changab/edk2-platforms/blob/Manageability_IPMI_upstream/Features/ManageabilityPkg/Readme.md

In V2: Fix some issues on below files,
   1. Features/ManageabilityPkg/Library/Common/KcsCommon.c
   2. Features/ManageabilityPkg/Library/Dxe/ManageabilityTransportKcs.c
   3. 
Features/ManageabilityPkg/Universal/IpmiProtocol/Common/IpmiprotocolCommon.c

In V1, we had implemented,
- KCS manageability transport library
- Manageability library helper library
- IPMI PEI/DXE/SMM protocol implementations

Next upstream would be edk2 MCTP_PROTOCOL
implementation that also consumes the manageability
transport libraries.

Signed-off-by: Abner Chang <abner.ch...@amd.com>
Cc: Abdul Lateef Attar <abdat...@amd.com>
Cc: Leif Lindholm <quic_llind...@quicinc.com>
Cc: Michael D Kinney <michael.d.kin...@intel.com>
Cc: Liming Gao <gaolim...@byosoft.com.cn>
Cc: Isaac Oram <isaac.w.o...@intel.com>
Cc: Nickle Wang <nick...@nvidia.com>

Abner Chang (8):
   ManageabilityPkg: Add Readme file
   ManageabilityPkg: Initial package
   ManageabilityPkg: Add NULL ManageabilityTransportLib
   ManageabilityPkg: Add ManageabilityTransportHelperLib
   ManageabilityPkg/ManageabilityTransportKcsLib
   ManageabilityPkg: Implement Ipmi Protocol/Ppi
   ManageabilityPkg: Add IpmiProtocol to Manageability Package
   edk2-platforms: Maintainers.txt

  .../ManageabilityPkg/ManageabilityPkg.dec     |  48 ++
  .../Include/Dsc/Manageability.dsc             |  25 +
  .../ManageabilityPkg/ManageabilityPkg.dsc     |  45 ++
  .../BaseManageabilityTransportHelper.inf      |  40 +
  .../BaseManageabilityTransportNull.inf        |  28 +
  .../Dxe/DxeManageabilityTransportKcs.inf      |  44 +
  .../IpmiProtocol/Dxe/IpmiProtocolDxe.inf      |  50 ++
  .../Universal/IpmiProtocol/Pei/IpmiPpiPei.inf |  51 ++
  .../IpmiProtocol/Smm/IpmiProtocolSmm.inf      |  52 ++
  .../Library/ManageabilityTransportHelperLib.h |  93 +++
  .../Library/ManageabilityTransportIpmiLib.h   |  24 +
  .../Library/ManageabilityTransportLib.h       | 335 ++++++++
  .../Common/ManageabilityTransportKcs.h        | 106 +++
  .../IpmiProtocol/Common/IpmiProtocolCommon.h  | 108 +++
  .../BaseManageabilityTransportHelper.c        | 242 ++++++
  .../BaseManageabilityTransportNull.c          |  64 ++
  .../Common/KcsCommon.c                        | 480 +++++++++++
  .../Dxe/ManageabilityTransportKcs.c           | 384 +++++++++
  .../IpmiProtocol/Common/IpmiProtocolCommon.c  | 247 ++++++
  .../Universal/IpmiProtocol/Dxe/IpmiProtocol.c | 177 +++++
  .../Universal/IpmiProtocol/Pei/IpmiPpi.c      | 151 ++++
  .../Universal/IpmiProtocol/Smm/IpmiProtocol.c | 147 ++++
  Features/ManageabilityPkg/Readme.md           | 177 +++++
  .../Media/ManageabilityDriverStack.svg        | 752 ++++++++++++++++++
  .../BaseManageabilityTransportHelper.uni      |  13 +
  .../BaseManageabilityTransportNull.uni        |  13 +
  .../Dxe/ManageabilityTransportKcs.uni         |  13 +
  Maintainers.txt                               |  11 +-
  28 files changed, 3918 insertions(+), 2 deletions(-)
  create mode 100644 Features/ManageabilityPkg/ManageabilityPkg.dec
  create mode 100644 Features/ManageabilityPkg/Include/Dsc/Manageability.dsc
  create mode 100644 Features/ManageabilityPkg/ManageabilityPkg.dsc
  create mode 100644 
Features/ManageabilityPkg/Library/BaseManageabilityTransportHelperLib/BaseManageabilityTransportHelper.inf
  create mode 100644 
Features/ManageabilityPkg/Library/BaseManageabilityTransportNullLib/BaseManageabilityTransportNull.inf
  create mode 100644 
Features/ManageabilityPkg/Library/ManageabilityTransportKcsLib/Dxe/DxeManageabilityTransportKcs.inf
  create mode 100644 
Features/ManageabilityPkg/Universal/IpmiProtocol/Dxe/IpmiProtocolDxe.inf
  create mode 100644 
Features/ManageabilityPkg/Universal/IpmiProtocol/Pei/IpmiPpiPei.inf
  create mode 100644 
Features/ManageabilityPkg/Universal/IpmiProtocol/Smm/IpmiProtocolSmm.inf
  create mode 100644 
Features/ManageabilityPkg/Include/Library/ManageabilityTransportHelperLib.h
  create mode 100644 
Features/ManageabilityPkg/Include/Library/ManageabilityTransportIpmiLib.h
  create mode 100644 
Features/ManageabilityPkg/Include/Library/ManageabilityTransportLib.h
  create mode 100644 
Features/ManageabilityPkg/Library/ManageabilityTransportKcsLib/Common/ManageabilityTransportKcs.h
  create mode 100644 
Features/ManageabilityPkg/Universal/IpmiProtocol/Common/IpmiProtocolCommon.h
  create mode 100644 
Features/ManageabilityPkg/Library/BaseManageabilityTransportHelperLib/BaseManageabilityTransportHelper.c
  create mode 100644 
Features/ManageabilityPkg/Library/BaseManageabilityTransportNullLib/BaseManageabilityTransportNull.c
  create mode 100644 
Features/ManageabilityPkg/Library/ManageabilityTransportKcsLib/Common/KcsCommon.c
  create mode 100644 
Features/ManageabilityPkg/Library/ManageabilityTransportKcsLib/Dxe/ManageabilityTransportKcs.c
  create mode 100644 
Features/ManageabilityPkg/Universal/IpmiProtocol/Common/IpmiProtocolCommon.c
  create mode 100644 
Features/ManageabilityPkg/Universal/IpmiProtocol/Dxe/IpmiProtocol.c
  create mode 100644 
Features/ManageabilityPkg/Universal/IpmiProtocol/Pei/IpmiPpi.c
  create mode 100644 
Features/ManageabilityPkg/Universal/IpmiProtocol/Smm/IpmiProtocol.c
  create mode 100644 Features/ManageabilityPkg/Readme.md
  create mode 100644 
Features/ManageabilityPkg/Documents/Media/ManageabilityDriverStack.svg
  create mode 100644 
Features/ManageabilityPkg/Library/BaseManageabilityTransportHelperLib/BaseManageabilityTransportHelper.uni
  create mode 100644 
Features/ManageabilityPkg/Library/BaseManageabilityTransportNullLib/BaseManageabilityTransportNull.uni
  create mode 100644 
Features/ManageabilityPkg/Library/ManageabilityTransportKcsLib/Dxe/ManageabilityTransportKcs.uni



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#100949): https://edk2.groups.io/g/devel/message/100949
Mute This Topic: https://groups.io/mt/97473049/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to