[edk2] [PATCH 0/4] Add PEI BlockIo support for NVM Express devices

Hao Wu posted 4 patches 5 years, 9 months ago
Failed in applying to current master (apply log)
There is a newer version of this series
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
[edk2] [PATCH 0/4] Add PEI BlockIo support for NVM Express devices
Posted by Hao Wu 5 years, 9 months ago
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

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel