continue;\r
}\r
\r
+ //\r
+ // Nvm Express Pass Thru PPI\r
+ //\r
+ Private->PassThruMode.Attributes = EFI_NVM_EXPRESS_PASS_THRU_ATTRIBUTES_PHYSICAL |\r
+ EFI_NVM_EXPRESS_PASS_THRU_ATTRIBUTES_LOGICAL |\r
+ EFI_NVM_EXPRESS_PASS_THRU_ATTRIBUTES_CMD_SET_NVM;\r
+ Private->PassThruMode.IoAlign = sizeof (UINTN);\r
+ Private->PassThruMode.NvmeVersion = EDKII_PEI_NVM_EXPRESS_PASS_THRU_PPI_REVISION;\r
+ Private->NvmePassThruPpi.Mode = &Private->PassThruMode;\r
+ Private->NvmePassThruPpi.GetDevicePath = NvmePassThruGetDevicePath;\r
+ Private->NvmePassThruPpi.GetNextNameSpace = NvmePassThruGetNextNameSpace;\r
+ Private->NvmePassThruPpi.PassThru = NvmePassThru;\r
+ CopyMem (\r
+ &Private->NvmePassThruPpiList,\r
+ &mNvmePassThruPpiListTemplate,\r
+ sizeof (EFI_PEI_PPI_DESCRIPTOR)\r
+ );\r
+ Private->NvmePassThruPpiList.Ppi = &Private->NvmePassThruPpi;\r
+ PeiServicesInstallPpi (&Private->NvmePassThruPpiList);\r
+\r
+ //\r
+ // Block Io PPI\r
+ //\r
Private->BlkIoPpi.GetNumberOfBlockDevices = NvmeBlockIoPeimGetDeviceNo;\r
Private->BlkIoPpi.GetBlockDeviceMediaInfo = NvmeBlockIoPeimGetMediaInfo;\r
Private->BlkIoPpi.ReadBlocks = NvmeBlockIoPeimReadBlocks;\r
Private->BlkIo2PpiList.Ppi = &Private->BlkIo2Ppi;\r
PeiServicesInstallPpi (&Private->BlkIoPpiList);\r
\r
- //\r
- // Nvm Express Pass Thru PPI\r
- //\r
- Private->PassThruMode.Attributes = EFI_NVM_EXPRESS_PASS_THRU_ATTRIBUTES_PHYSICAL |\r
- EFI_NVM_EXPRESS_PASS_THRU_ATTRIBUTES_LOGICAL |\r
- EFI_NVM_EXPRESS_PASS_THRU_ATTRIBUTES_CMD_SET_NVM;\r
- Private->PassThruMode.IoAlign = sizeof (UINTN);\r
- Private->PassThruMode.NvmeVersion = EDKII_PEI_NVM_EXPRESS_PASS_THRU_PPI_REVISION;\r
- Private->NvmePassThruPpi.Mode = &Private->PassThruMode;\r
- Private->NvmePassThruPpi.GetDevicePath = NvmePassThruGetDevicePath;\r
- Private->NvmePassThruPpi.GetNextNameSpace = NvmePassThruGetNextNameSpace;\r
- Private->NvmePassThruPpi.PassThru = NvmePassThru;\r
- CopyMem (\r
- &Private->NvmePassThruPpiList,\r
- &mNvmePassThruPpiListTemplate,\r
- sizeof (EFI_PEI_PPI_DESCRIPTOR)\r
- );\r
- Private->NvmePassThruPpiList.Ppi = &Private->NvmePassThruPpi;\r
- PeiServicesInstallPpi (&Private->NvmePassThruPpiList);\r
-\r
//\r
// Check if the NVME controller supports the Security Receive/Send commands\r
//\r