From: Hao Wu <hao.a.wu@intel.com>
To: edk2-devel@lists.01.org
Cc: Hao Wu <hao.a.wu@intel.com>, Star Zeng <star.zeng@intel.com>,
Eric Dong <eric.dong@intel.com>, Ruiyu Ni <ruiyu.ni@intel.com>,
Jiewen Yao <jiewen.yao@intel.com>
Subject: [PATCH 0/4] Add PEI BlockIo support for NVM Express devices
Date: Fri, 15 Jun 2018 15:03:38 +0800 [thread overview]
Message-ID: <20180615070342.13388-1-hao.a.wu@intel.com> (raw)
The series is also available at:
https://github.com/hwu25/edk2/tree/nvme_pei_blockio
The series will add the PEI BlockIo support for NVM Express devices.
A new EDKII PEI NVME host controller PPI will be introduced. It will
provide the caller with the MMIO BAR address and the device path
information of the NVM Express host controllers within system.
The NvmExpressPei driver is added to comsume the EDKII PEI NVME host
controller PPI and produce the BlockIo PPIs for those NVME devices.
Also, FatPei driver has been updated to support the recovery from NVME
devices.
Tests done for the patch:
(NOTE: All tests are performed with 1 NVME device attached, and 2 NVME
devices attached. And all tests are performed with Vtd enabled and
disabled on platform.)
1. Use the BlockIo PPIs to read and verify the data on NVME devices.
2. Recovery from NVME device test on real platform.
Cc: Star Zeng <star.zeng@intel.com>
Cc: Eric Dong <eric.dong@intel.com>
Cc: Ruiyu Ni <ruiyu.ni@intel.com>
Cc: Jiewen Yao <jiewen.yao@intel.com>
Hao Wu (4):
MdeModulePkg: Add definitions for EDKII PEI NVME host controller PPI
MdeModulePkg/NvmExpressPei: Add the NVME device PEI BlockIo support
MdeModulePkg: Add GUID for recovery capsule on NVM Express devices
FatPkg/FatPei: Add the recognition of recovery capsule on NVME device
FatPkg/FatPei/FatLiteApi.c | 6 +-
FatPkg/FatPei/FatPei.inf | 3 +-
MdeModulePkg/Bus/Pci/NvmExpressPei/DmaMem.c | 249 +++++++
MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPei.c | 368 ++++++++++
MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPei.h | 265 +++++++
MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPei.inf | 70 ++
MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPei.uni | 21 +
MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPeiBlockIo.c | 531 ++++++++++++++
MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPeiBlockIo.h | 266 +++++++
MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPeiExtra.uni | 19 +
MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPeiHci.c | 748 ++++++++++++++++++++
MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPeiHci.h | 166 +++++
MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPeiPassThru.c | 628 ++++++++++++++++
MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPeiPassThru.h | 107 +++
MdeModulePkg/Include/Guid/RecoveryDevice.h | 9 +
MdeModulePkg/Include/Ppi/NvmExpressHostController.h | 97 +++
MdeModulePkg/MdeModulePkg.dec | 6 +
MdeModulePkg/MdeModulePkg.dsc | 1 +
18 files changed, 3558 insertions(+), 2 deletions(-)
create mode 100644 MdeModulePkg/Bus/Pci/NvmExpressPei/DmaMem.c
create mode 100644 MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPei.c
create mode 100644 MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPei.h
create mode 100644 MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPei.inf
create mode 100644 MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPei.uni
create mode 100644 MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPeiBlockIo.c
create mode 100644 MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPeiBlockIo.h
create mode 100644 MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPeiExtra.uni
create mode 100644 MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPeiHci.c
create mode 100644 MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPeiHci.h
create mode 100644 MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPeiPassThru.c
create mode 100644 MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPeiPassThru.h
create mode 100644 MdeModulePkg/Include/Ppi/NvmExpressHostController.h
--
2.12.0.windows.1
next reply other threads:[~2018-06-15 7:03 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-15 7:03 Hao Wu [this message]
2018-06-15 7:03 ` [PATCH 1/4] MdeModulePkg: Add definitions for EDKII PEI NVME host controller PPI Hao Wu
2018-06-21 7:35 ` Ni, Ruiyu
2018-06-21 8:31 ` Wu, Hao A
2018-06-22 1:42 ` Zeng, Star
2018-06-15 7:03 ` [PATCH 2/4] MdeModulePkg/NvmExpressPei: Add the NVME device PEI BlockIo support Hao Wu
2018-06-21 7:45 ` Ni, Ruiyu
2018-06-21 8:31 ` Wu, Hao A
2018-06-22 1:43 ` Zeng, Star
2018-06-15 7:03 ` [PATCH 3/4] MdeModulePkg: Add GUID for recovery capsule on NVM Express devices Hao Wu
2018-06-21 7:54 ` Ni, Ruiyu
2018-06-22 1:42 ` Zeng, Star
2018-06-15 7:03 ` [PATCH 4/4] FatPkg/FatPei: Add the recognition of recovery capsule on NVME device Hao Wu
2018-06-21 7:52 ` Ni, Ruiyu
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=20180615070342.13388-1-hao.a.wu@intel.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