This change modifies NvmExpressPei library to allow usage EDKII_PCI_DEVICE_PPI to manage Nvme device.
For now, the part that performs the enumeration and creates EDKII_PCI_DEVICE_PPI will be implemented in the silicon code.
Sample code can be seen here: https://github.com/mczaj/edk2-platforms/commit/d443062e58f9fba228869b54f2546d9735b3b506
unit test:
- verified the origin EDKII_NVM_EXPRESS_HOST_CONTROLLER_PPI flow in platform project,
Nvme controller can successful initialize.
- merged https://github.com/mczaj/edk2-platforms/commit/d443062e58f9fba228869b54f2546d9735b3b506 to platform project
to enumerate pcie device and create the EDKII_PCI_DEVICE_PPI for Nvme,
Nvme controller also can successful initialize by EDKII_PCI_DEVICE_PPI.
v1: https://edk2.groups.io/g/devel/topic/93340344
v2 changes:
- add the unit test information for cover letter
- refine the BAR type check for no.1 commit
Xiao X Chen (1):
MdeModulePkg/NvmExpressPei: Use PCI_DEVICE_PPI to manage Nvme device
.../Bus/Pci/NvmExpressPei/DevicePath.c | 44 --
.../Bus/Pci/NvmExpressPei/NvmExpressPei.c | 639 ++++++++++++------
.../Bus/Pci/NvmExpressPei/NvmExpressPei.h | 54 ++
.../Bus/Pci/NvmExpressPei/NvmExpressPei.inf | 3 +-
4 files changed, 488 insertions(+), 252 deletions(-)
--
2.37.0.windows.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#92956): https://edk2.groups.io/g/devel/message/92956
Mute This Topic: https://groups.io/mt/93343650/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-