Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Contém as configurações de leitura/gravação para o controlador.
O software host define os seguintes campos como valores válidos antes de habilitar o controlador definindo o valor do campo Habilitar EN como 1:
Essa estrutura é usada no campo RECURSOS do Controlador (CC) da estrutura de NVME_CONTROLLER_REGISTERS .
Sintaxe
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 se o controlador está habilitado para processar comandos.
Quando esse valor for definido como 1, o controlador processará comandos com base nas gravações de Porta de Porta da Fila de Envio .
Quando esse valor for desmarcado, 0o controlador não processará comandos nem postará entradas de Fila de Conclusão em Filas de Conclusão.
Quando esse campo faz a transição de 1 para 0, o controlador é redefinido (chamado de Redefinição do Controlador). A redefinição exclui todas as Filas de Envio de E/S e Filas de Conclusão de E/S, redefine a Fila de Envio de Administrador e a Fila de Conclusão e leva o hardware para um estado ocioso. A redefinição não afeta os registros PCI Express ou os registros de Fila de Administradores (AQA, ASQ ou ACQ). Todos os outros registros do controlador e estados do controlador interno (como, valores de recurso que não são persistentes entre estados de energia) são redefinidos para seus valores padrão. O controlador garante que não haja perda de dados para comandos que tiveram entradas de Fila de Conclusão correspondentes postadas em uma Fila de Conclusão de E/S antes da operação de redefinição.
Quando esse campo é desmarcado, 0o valor do campo Pronto (RDY) no Status do Controlador é desmarcado 0 pelo controlador quando o controlador estiver pronto para ser habilitado novamente. Quando esse campo é definido como 1, o controlador define o valor do campo RDY no Status do Controlador para 1 quando ele está pronto para processar comandos.
O RDY pode ser definido 1 para antes que os namespaces estejam prontos para serem acessados.
Definir esse campo de um 0 para um 1 quando RDY é um 1, ou definir esse campo de um '1' para um '0' quando RDY é um '0', tem resultados indefinidos. Os registros de Fila de Administradores (AQA, ASQ e ACQ) só serão modificados quando EN for desmarcado para 0.
DUMMYSTRUCTNAME.Reserved0
DUMMYSTRUCTNAME.CSS
Especifica o Conjunto de Comandos de E/S selecionado para uso para as Filas de Envio de E/S.
O software host selecionará apenas um Conjunto de Comandos de E/S com suporte, conforme indicado no campo CSS de Recursos do Controlador.
Esse valor desse campo só pode ser alterado quando o controlador está desabilitado (o campo EN é desmarcado).0 O conjunto de comandos de E/S selecionado será usado para todas as Filas de Envio de E/S.
DUMMYSTRUCTNAME.MPS
Indica o tamanho da página de memória do host. O tamanho da página de memória é (2 ^ (12 + MPS)). Portanto, o tamanho mínimo da página de memória do host é 4KB e o tamanho máximo da página de memória do host é de 128 MB.
O valor definido pelo software host deve ser um valor com suporte, conforme indicado pelos campos MPSMAX e MPSMIN de Recursos do Controlador. Este campo descreve o valor usado para o tamanho da entrada PRP.
Esse campo só pode ser modificado quando EN é desmarcado para 0.
DUMMYSTRUCTNAME.AMS
Especifica o mecanismo de arbitragem a ser usado.
Esse campo só pode ser modificado quando EN é desmarcado para 0.
O software host só pode definir esse campo para mecanismos de arbitragem com suporte, conforme indicado no campo AMS de Recursos do Controlador. Se esse campo for definido como um valor sem suporte, o comportamento será indefinido.
DUMMYSTRUCTNAME.SHN
Especifica um valor NVME_CC_SHN_SHUTDOWN_NOTIFICATIONS usado para iniciar o processamento de desligamento quando um desligamento está ocorrendo. Por exemplo, quando uma condição de queda de energia é esperada.
Para uma notificação de desligamento normal, espera-se que o controlador tenha tempo para processar a notificação de desligamento. Para uma notificação de desligamento abrupta, o host pode não esperar que o processamento de desligamento seja concluído antes que a energia seja perdida. Esse campo deve ser gravado pelo software host antes de qualquer condição de desligamento e antes de qualquer alteração do estado de gerenciamento de energia PCI. É recomendável que esse campo também seja gravado antes de uma reinicialização morna.
Para determinar quando o processamento de desligamento está concluído, consulte o valor SHST no Status do Controlador.
DUMMYSTRUCTNAME.IOSQES
Especifica o tamanho da entrada da Fila de Envio de E/S que é usado para o conjunto de comandos de E/S selecionado.
Os valores necessários e máximos para esse campo são especificados no SQES. RequiredEntrySize e SQES. Campos MaxEntrySize da estrutura de dados Identificar Controlador para cada Conjunto de Comandos de E/S. O valor está em bytes e é especificado como uma potência de dois (2^n).
DUMMYSTRUCTNAME.IOCQES
Especifica o tamanho da entrada da Fila de Conclusão de E/S que é usado para o conjunto de comandos de E/S selecionado.
Os valores necessários e máximos para esse campo são especificados no CQES. RequiredEntrySize e CQES. Campos MaxEntrySize da estrutura de dados Identificar Controlador para cada Conjunto de Comandos de E/S. O valor está em bytes e é especificado como uma potência de dois (2^n).
DUMMYSTRUCTNAME.Reserved1
AsUlong
Requirements
| Requirement | Value |
|---|---|
| Cliente mínimo suportado | Windows 10 |
| Header | nvme.h |