Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Contiene opciones de configuración de lectura y escritura para el controlador.
El software host establece los siguientes campos en valores válidos antes de habilitar el controlador estableciendo el valor 1del campo Habilitar EN en :
Esta estructura se usa en el campo Capacidades del controlador (CC) de la estructura NVME_CONTROLLER_REGISTERS .
Syntax
typedef union {
struct {
ULONG EN : 1;
ULONG Reserved0 : 3;
ULONG CSS : 3;
ULONG MPS : 4;
ULONG AMS : 3;
ULONG SHN : 2;
ULONG IOSQES : 4;
ULONG IOCQES : 4;
ULONG Reserved1 : 8;
} DUMMYSTRUCTNAME;
ULONG AsUlong;
} NVME_CONTROLLER_CONFIGURATION, *PNVME_CONTROLLER_CONFIGURATION;
Members
DUMMYSTRUCTNAME
DUMMYSTRUCTNAME.EN
Indica si el controlador está habilitado para procesar comandos.
Cuando este valor se establece 1en , el controlador procesará los comandos en función de las escrituras tail doorbell de cola de envío .
Cuando se borra este valor en 0, el controlador no procesará comandos ni entradas posteriores a la cola de finalización en Colas de finalización.
Cuando este campo pasa de 1 a 0, el controlador se restablece (denominado Restablecimiento de controlador). El restablecimiento elimina todas las colas de envío de E/S y las colas de finalización de E/S, restablece la cola de envío de administrador y la cola de finalización, y lleva el hardware a un estado inactivo. El restablecimiento no afecta a los registros de PCI Express ni a los registros de cola de administración (AQA, ASQ o ACQ). Todos los demás registros del controlador y los estados del controlador interno (como los valores de característica que no son persistentes entre estados de energía) se restablecen a sus valores predeterminados. El controlador garantiza que no hay pérdida de datos para los comandos que han tenido entradas de cola de finalización correspondientes publicadas en una cola de finalización de E/S antes de la operación de restablecimiento.
Cuando este campo se borra en 0, el controlador borra 0 el valor del campo Listo (RDY) en Estado del controlador una vez que el controlador está listo para volver a habilitarse. Cuando este campo se establece 1en , el controlador establece el valor del campo RDY en Estado del controlador en 1 cuando está listo para procesar comandos.
RdY se puede establecer en 1 antes de que estén listos para acceder a los espacios de nombres.
Establecer este campo de en 0 un 1 cuando RDY es o 1establecer este campo de "1" en "0" cuando RDY es "0", tiene resultados indefinidos. Los registros de cola de administración (AQA, ASQ y ACQ) solo se modificarán cuando EN se borre en 0.
DUMMYSTRUCTNAME.Reserved0
DUMMYSTRUCTNAME.CSS
Especifica el conjunto de comandos de E/S seleccionado para su uso para las colas de envío de E/S.
El software host solo seleccionará un conjunto de comandos de E/S compatible, como se indica en el campo CSS de Capacidades del controlador.
Este valor de este campo solo se puede cambiar cuando el controlador está deshabilitado ( el campo EN se borra a 0). El conjunto de comandos de E/S seleccionado se usará para todas las colas de envío de E/S.
DUMMYSTRUCTNAME.MPS
Indica el tamaño de página de memoria del host. El tamaño de página de memoria es (2 ^ (12 + MPS)). Por lo tanto, el tamaño mínimo de página de memoria del host es de 4 KB y el tamaño máximo de página de memoria del host es de 128 MB.
El valor establecido por software host debe ser un valor admitido como se indica en los campos MPSMAX y MPSMIN de Capacidades del controlador. En este campo se describe el valor usado para el tamaño de entrada prP.
Este campo solo se puede modificar cuando se borra EN en 0.
DUMMYSTRUCTNAME.AMS
Especifica el mecanismo de arbitraje que se va a usar.
Este campo solo se puede modificar cuando se borra EN en 0.
El software host solo puede establecer este campo en mecanismos de arbitraje admitidos, como se indica en el campo AMS de capacidades del controlador. Si este campo se establece en un valor no admitido, el comportamiento no está definido.
DUMMYSTRUCTNAME.SHN
Especifica un valor de NVME_CC_SHN_SHUTDOWN_NOTIFICATIONS que se usa para iniciar el procesamiento de apagado cuando se produce un apagado. Por ejemplo, cuando se espera una condición de apagado.
Para una notificación de apagado normal, se espera que el controlador tenga tiempo de procesar la notificación de apagado. Para una notificación de cierre abrupto, es posible que el host no espere a que se complete el procesamiento de apagado antes de que se pierda la alimentación. Este campo debe escribirse en el software host antes de cualquier condición de apagado y antes de cualquier cambio del estado de administración de energía PCI. Se recomienda que este campo también se escriba antes de un reinicio intermedio.
Para determinar cuándo se completa el procesamiento de apagado, consulte el valor SHST en Estado del controlador.
DUMMYSTRUCTNAME.IOSQES
Especifica el tamaño de entrada de cola de envío de E/S que se usa para el conjunto de comandos de E/S seleccionado.
Los valores obligatorios y máximos para este campo se especifican en SQES. RequiredEntrySize y SQES. Campos MaxEntrySize de la estructura identificar datos del controlador para cada conjunto de comandos de E/S. El valor está en bytes y se especifica como una potencia de dos (2^n).
DUMMYSTRUCTNAME.IOCQES
Especifica el tamaño de entrada de la cola de finalización de E/S que se usa para el conjunto de comandos de E/S seleccionado.
Los valores obligatorios y máximos para este campo se especifican en el CQES. RequiredEntrySize y CQES. Campos MaxEntrySize de la estructura identificar datos del controlador para cada conjunto de comandos de E/S. El valor está en bytes y se especifica como una potencia de dos (2^n).
DUMMYSTRUCTNAME.Reserved1
AsUlong
Requisitos
| Requirement | Importancia |
|---|---|
| Cliente mínimo compatible | Windows 10 |
| Header | nvme.h |