audk/MdeModulePkg/Bus/Pci/NvmExpressDxe
Ruiyu Ni 7111e46fde MdeModulePkg/NvmExpressDxe: Notify NVME HW when system reset happens
Per NVM Express Spec, software should notify NVME HW when shutdown
occurs.

The NVME controller requires notification for shutdown as part of
its management of internal structures. Even with FUA, failing to
notify the NVME controller to shutdown power off causes the NVME
controller to take quite some time to organize its tables on the
next power on. This time exceeds the normal timeout, so we would
fail to boot the NVME disk.

The host should set the Shutdown Notification (CC.SHN) field to 01b
to indicate a normal shutdown operation. The controller indicates
when shutdown processing is completed by updating the Shutdown Status
(CSTS.SHST) field to 10b.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
2017-08-09 15:59:13 +08:00
..
ComponentName.c MdeModulePkg/NvmExpressDxe: Fix wrong logic in GetControllerName() 2015-12-01 00:40:37 +00:00
NvmExpress.c MdeModulePkg/NvmExpressDxe: Notify NVME HW when system reset happens 2017-08-09 15:59:13 +08:00
NvmExpress.h MdeModulePkg/NvmExpressDxe: Notify NVME HW when system reset happens 2017-08-09 15:59:13 +08:00
NvmExpressBlockIo.c MdeModulePkg NvmExpressDxe: Add BlockIo2 support 2016-05-19 12:37:59 +08:00
NvmExpressBlockIo.h MdeModulePkg NvmExpressDxe: Add BlockIo2 support 2016-05-19 12:37:59 +08:00
NvmExpressDiskInfo.c Fix CRLF format 2014-01-22 08:38:50 +00:00
NvmExpressDiskInfo.h Fix CRLF format 2014-01-22 08:38:50 +00:00
NvmExpressDxe.inf MdeModulePkg/NvmExpressDxe: Notify NVME HW when system reset happens 2017-08-09 15:59:13 +08:00
NvmExpressDxe.uni MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00
NvmExpressDxeExtra.uni MdeModulePkg: Convert all .uni files to utf-8 2015-12-15 04:56:23 +00:00
NvmExpressHci.c MdeModulePkg/NvmExpressDxe: Notify NVME HW when system reset happens 2017-08-09 15:59:13 +08:00
NvmExpressHci.h MdeModulePkg: Move/Replace NvmExpressHci.h definitions to Nvme.h. 2016-05-27 13:31:35 +08:00
NvmExpressPassthru.c MdeModulePkg/NvmExpressDxe: Handle timeout for blocking PassThru req 2017-07-06 12:53:36 +08:00