From: "Chang, Abner" <abner.chang@amd.com>
To: <devel@edk2.groups.io>
Cc: Abdul Lateef Attar <abdattar@amd.com>,
Leif Lindholm <quic_llindhol@quicinc.com>,
Michael D Kinney <michael.d.kinney@intel.com>,
Liming Gao <gaoliming@byosoft.com.cn>,
Isaac Oram <isaac.w.oram@intel.com>,
Nickle Wang <nicklew@nvidia.com>
Subject: [PATCH v3 0/8] Introduce ManageabilityPkg
Date: Tue, 21 Mar 2023 11:20:33 +0800 [thread overview]
Message-ID: <20230321032033.1921-1-abner.chang@amd.com> (raw)
From: Abner Chang <abner.chang@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 V3: 1. Address reviewers commnets on V2.
2. Revise IpmiPpi driver to not using global vriable.
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.chang@amd.com>
Cc: Abdul Lateef Attar <abdattar@amd.com>
Cc: Leif Lindholm <quic_llindhol@quicinc.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Isaac Oram <isaac.w.oram@intel.com>
Cc: Nickle Wang <nicklew@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 | 41 +
.../BaseManageabilityTransportNull.inf | 28 +
.../Dxe/DxeManageabilityTransportKcs.inf | 44 +
.../IpmiProtocol/Dxe/IpmiProtocolDxe.inf | 50 ++
.../Universal/IpmiProtocol/Pei/IpmiPpiPei.inf | 53 ++
.../IpmiProtocol/Smm/IpmiProtocolSmm.inf | 52 ++
.../Library/ManageabilityTransportHelperLib.h | 93 +++
.../Library/ManageabilityTransportIpmiLib.h | 24 +
.../Library/ManageabilityTransportLib.h | 336 ++++++++
.../Common/ManageabilityTransportKcs.h | 105 +++
.../IpmiProtocol/Common/IpmiProtocolCommon.h | 108 +++
.../IpmiProtocol/Pei/IpmiPpiInternal.h | 25 +
.../BaseManageabilityTransportHelper.c | 261 ++++++
.../BaseManageabilityTransportNull.c | 64 ++
.../Common/KcsCommon.c | 502 ++++++++++++
.../Dxe/ManageabilityTransportKcs.c | 389 +++++++++
.../IpmiProtocol/Common/IpmiProtocolCommon.c | 252 ++++++
.../Universal/IpmiProtocol/Dxe/IpmiProtocol.c | 177 +++++
.../Universal/IpmiProtocol/Pei/IpmiPpi.c | 159 ++++
.../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 +-
29 files changed, 4005 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/Universal/IpmiProtocol/Pei/IpmiPpiInternal.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
--
2.37.1.windows.1
next reply other threads:[~2023-03-21 3:20 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-21 3:20 Chang, Abner [this message]
2023-03-21 8:26 ` [edk2-devel] Set PCIE MMIO Range as XD attribute Yoshinoya
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=20230321032033.1921-1-abner.chang@amd.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