NVME_CONTROLLER_STATUS unione (nvme.h)
Contiene valori che indicano lo stato del controller.
Questa struttura viene usata nel campo CSTS della struttura NVME_CONTROLLER_REGISTERS .
Sintassi
typedef union {
struct {
ULONG RDY : 1;
ULONG CFS : 1;
ULONG SHST : 2;
ULONG NSSRO : 1;
ULONG PP : 1;
ULONG Reserved0 : 26;
} DUMMYSTRUCTNAME;
ULONG AsUlong;
} NVME_CONTROLLER_STATUS, *PNVME_CONTROLLER_STATUS;
Members
DUMMYSTRUCTNAME
DUMMYSTRUCTNAME.RDY
Indica se il controller è pronto per accettare le scritture della coda di invio.
Quando questo valore è impostato su 1
, il controller è pronto per accettare le scritture della coda di invio Dopo che il campo EN nella configurazione del controller è impostato su 1
.
Questo valore viene cancellato quando 0
EN viene cancellato in 0
. I comandi non possono essere inviati al controller fino a quando questo campo non è impostato su 1
dopo che EN** è impostato su 1
. Non è possibile seguire questo requisito produce risultati non definiti.
Il software host deve attendere almeno fino a quando il valore Timeout TO in Funzionalità controller per questo campo deve essere impostato su 1
dopo che EN è impostato su 1
da un valore precedente di 0
.
DUMMYSTRUCTNAME.CFS
Indica se si è verificato un errore del controller irreversibile.
Quando questo valore è impostato su 1
, si è verificato un errore irreversibile del controller che non è stato possibile comunicare nella coda di completamento appropriata.
Quando questo valore viene cancellato in 0
, non si è verificato un errore del controller irreversibile.
Il valore di reimpostazione di questo campo è 1
quando viene rilevato un errore del controller irreversibile durante l'inizializzazione del controller.
DUMMYSTRUCTNAME.SHST
Valore NVME_CSTS_SHST_SHUTDOWN_STATUS che indica lo stato dell'elaborazione di arresto. L'elaborazione di arresto viene avviata dall'host impostando il campo SHN della configurazione del controller.
Per avviare l'esecuzione dei comandi nel controller dopo un'operazione di arresto (indicato quando questo valore è impostato su NVME_CSTS_SHST_SHUTDOWN_COMPLETED), è necessario impostare il campo EN della configurazione del controller su 0
. Se il software host invia comandi al controller senza emettere una reimpostazione, il comportamento non è definito.
DUMMYSTRUCTNAME.NSSRO
Indica che l'ultima reimpostazione del sottosistema NVM si è verificata durante l'applicazione dell'alimentazione al sottosistema NVM.
Quando questo valore è impostato su 1
, l'ultima occorrenza di un sottosistema NVM Reset si è verificata durante l'applicazione dell'alimentazione al sottosistema NVM.
Il valore iniziale di questo campo segue 0
una reimpostazione del sottosistema NVM a causa dell'applicazione dell'alimentazione al sottosistema NVM. Questo campo è valido solo se il controller supporta la funzionalità Reimpostazione sottosistema NVM, indicata dal campo NSSRS delle funzionalità controller impostate su 1
.
Il valore di reimpostazione di questo campo è 0
se un sottosistema NVM Reset causa l'attivazione di una nuova immagine del firmware.
DUMMYSTRUCTNAME.PP
Indica se il controller sta elaborando i comandi.
Quando questo valore viene cancellato in 0
, il controller esegue normalmente l'elaborazione dei comandi. Quando questo valore è impostato su 1
, il controller ha temporaneamente arrestato i comandi di elaborazione per gestire un evento, ad esempio l'attivazione del firmware.
Questo campo è valido solo quando il campo EN della configurazione del controller è impostato su 1
.
DUMMYSTRUCTNAME.Reserved0
AsUlong
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 10 |
Intestazione | nvme.h |