|
|
||
|---|---|---|
| .. | ||
| Include | ||
| NvmePciHcPei | ||
| PowerLossNotifyDxe | ||
| library/NvmePcieRpLibNull | ||
| NvmeFeaturePkg.dec | ||
| NvmeFeaturePkg.dsc | ||
| Readme.md | ||
Readme.md
Overview
- Feature Name: platform NVMe feature
- PI Phase(s) Supported: PEI, DXE
- SMM Required? No
Purpose
This feature package implements NVMe related platform features.
High-Level Theory of Operation
This feature provides NVMe related platform features:
- NvmePciHcPei.inf will call a library function to get the PCI bridge information, and scan PCI devices on PCI bus. Platform can implement its own library.
- PowerLossNotifyDxe.inf will get platform policy and perform platform configuration via POWER_LOSS_NOTIFY_SETTING_PROTOCOL.
Firmware Volumes
- PostMemory
Modules
- NvmePciHcPei
- PowerLossNotifyDxe
- NvmePcieRpLibNull
NvmePciHcPei
The driver scans NVMe devices on PCI bus and provides NVMe controller information via EDKII_NVM_EXPRESS_HOST_CONTROLLER_PPI.
PowerLossNotifyDxe
The driver send command to control PLN feature on NVMe devices, and perfrom platform configuration via POWER_LOSS_NOTIFY_SETTING_PROTOCOL.
NvmePcieRpLibNull
A NULL implemention of library NvmePcieRpLib, it return NULL for function GetNextRootPortComplex(). Platform maybe implemente its own NvmePcieRpLib.
Configuration
There is not special configuration. But the platform maybe implemente its own NvmePcieRpLib.
Data Flows
Architecturally defined data structures and flows for the feature.
Data flows of NvmePciHcPei
The driver install EDKII_NVM_EXPRESS_HOST_CONTROLLER_PPI which is consumed by EDK2 NVMe drivers.
Data flows of PowerLossNotifyDxe
The driver consumed POWER_LOSS_NOTIFY_SETTING_PROTOCOL which is installed by platform.
Control Flows
Consumer gets NVMe controller configuration via EDKII_NVM_EXPRESS_HOST_CONTROLLER_PPI.
Build Flows
No any special build flows is needed.
Test Point Results
Verified by bios debug log.
Functional Exit Criteria
Check by bios debug log to see if EDKII_NVM_EXPRESS_HOST_CONTROLLER_PPI is installed successfully.
Feature Enabling Checklist
Include NvmeFeature.dsc