0x144 de Verificação de Bugs: BUGCODE_USB3_DRIVER
O bug BUGCODE_USB3_DRIVER marcar tem um valor de 0x00000144. Esse é o código usado para todas as verificações de bugs USB 3. O parâmetro 1 especifica o tipo do bug USB 3 marcar e os significados dos outros parâmetros dependem do Parâmetro 1.
Importante
Este artigo é para programadores. Se você for um cliente que recebeu um código de erro de tela azul ao usar o computador, consulte Solucionar erros de tela azul.
Parâmetros de BUGCODE_USB3_DRIVER
Parâmetro 1 | Parâmetro 2 | Parâmetro 3 | Parâmetro 4 | Causa do erro |
---|---|---|---|---|
0x1 |
Opcional. Ponteiro para o IRP usado para reenviar o URB |
Ponteiro para o URB |
Ponteiro para o objeto de dispositivo do driver cliente |
Um driver cliente usou um URB que ele havia enviado anteriormente para a pilha de núcleos. |
0x2 |
Ponteiro para o PDO (objeto de dispositivo físico) para o dispositivo de inicialização |
Reservado |
Reservado |
Falha na renumeração de um dispositivo de inicialização ou paginação. |
0x3 |
Opcional. Ponteiro para o IRP usado para enviar o URB |
Ponteiro para o URB corrompido |
Ponteiro para o objeto de dispositivo do driver cliente |
Um driver cliente enviou um URB corrompido para a pilha principal. Isso pode acontecer porque o driver do cliente não alocou o URB usando USBD_xxxUrbAllocate ou porque o driver cliente fez uma subexecução de buffer para o URB. |
0x800 |
IRQL no qual a solicitação Abrir Fluxos Estáticos foi enviada |
Ponteiro para o IRP abrir fluxos estáticos |
Ponteiro para o objeto de dispositivo do driver cliente |
Uma solicitação open static streams foi enviada em IRQL > PASSIVE LEVEL. |
0x801 |
Ponteiro para o IRP abrir fluxos estáticos |
Ponteiro para a URB Abrir Fluxos Estáticos |
Ponteiro para o objeto de dispositivo do driver cliente |
Um driver de cliente tentou abrir fluxos estáticos antes de consultar a funcionalidade de fluxos. Um driver cliente não pode abrir um fluxo estático até que ele consulte com êxito a funcionalidade de fluxos. Para obter mais informações, consulte Comentários. |
0x802 |
Número de fluxos estáticos que o driver cliente tentou abrir |
Número de fluxos estáticos que foram concedidos ao driver cliente |
Ponteiro para o objeto de dispositivo do driver cliente |
Um driver cliente tentou abrir um número inválido de fluxos estáticos. O número de fluxos não pode ser 0 e não pode ser maior do que o valor retornado ao driver cliente na chamada de funcionalidade USB de consulta. |
0x803 |
Ponteiro para o IRP abrir fluxos estáticos |
Ponteiro para a URB Abrir Fluxos Estáticos |
Ponteiro para o objeto de dispositivo do driver cliente |
Um driver de cliente tentou abrir fluxos estáticos para um ponto de extremidade que já tinha fluxos estáticos abertos. Antes de abrir fluxos estáticos, o driver do cliente deve fechar os fluxos estáticos abertos anteriormente. |
0x804 |
O contexto do identificador vazado. Execute !usbanalyze -v para obter informações sobre o identificador e os URBs vazados. Você deve habilitar o Verificador de Driver para o driver cliente. |
Objeto de dispositivo passado para USBD_CreateHandle. |
Reservado |
Um driver cliente esqueceu de fechar um identificador criado anteriormente usando USBD_CreateHandle ou esqueceu de liberar um URB alocado. |
0x805 |
Identificador WDFREQUEST para a URB Fechar Fluxos Estáticos |
Ponteiro para o URB Fechar Fluxos Estáticos |
Ponteiro para o objeto de dispositivo do driver cliente |
Um driver cliente enviou um URB fechar fluxos estáticos em um estado inválido (por exemplo, depois de processar a saída D0). |
0x806 |
Ponteiro para o IRP |
Ponteiro para o URB |
Ponteiro para o objeto de dispositivo do driver cliente |
Um driver de cliente tentou enviar um MDL encadeado antes de consultar a funcionalidade de MDL encadeada. Um driver cliente não pode enviar um MDL encadeado até que ele consulte com êxito a funcionalidade de MDL encadeada. Para obter mais informações, consulte Comentários. |
0x807 |
Ponteiro para o MDL encadeado |
Ponteiro para o URB |
Ponteiro para o objeto de dispositivo do driver cliente, se disponível |
Um driver cliente enviou um URB para a pilha principal com um comprimento de buffer de transferência maior que a contagem de bytes ( retornada por MmGetMdlByteCount) do MDL passado. Para obter mais informações, consulte Comentários. |
0x1001 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
O controlador xHCI afirmou o bit HSE, que indica um erro do sistema host. |
0x1002 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
O controlador xHCI afirmou o bit HCE, o que indica um erro do controlador de host. |
0x1003 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
O comando xHCI stop endpoint retornou um código de conclusão sem tratamento. |
0x1004 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
O estado do ponto de extremidade xHCI recebeu um erro de estado de contexto depois que um comando de parada de ponto de extremidade xHCI foi emitido. |
0x1005 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Falha ao definir o ponteiro de remoção durante uma tentativa de limpar a parada no ponto de extremidade de controle. |
0x1006 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Falha ao redefinir o EP durante uma tentativa de limpar a parada no ponto de extremidade de controle. |
0x1007 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Falha na redefinição do controlador xHCI durante a recuperação de redefinição. |
0x1008 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
A reinicialização do controlador xHCI falhou durante a recuperação de redefinição. |
0x1009 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Falha na conclusão de um comando do controlador xHCI após a anulação do tempo limite do comando. |
0x100A |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Falha ao definir o ponteiro de remoção durante uma tentativa de definir o ponteiro de remoção após a conclusão da interrupção do ponto de extremidade. |
0x100B |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
A parada do controlador xHCI falhou durante a recuperação de redefinição. |
0x100C |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Não há suporte para o firmware no controlador xHCI. O driver xHCI não será carregado nesse controlador, a menos que o firmware seja atualizado. |
0x100D |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
O controlador foi detectado para ser fisicamente removido. |
0x100E |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
O driver detecta um erro em um ponto de extremidade habilitado para fluxo. |
0x100F |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
O firmware no controlador xHCI está desatualizado. O driver xHCI continuará trabalhando com esse controlador, mas pode ter alguns problemas. Recomenda-se uma atualização de firmware. |
0x1010 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Um TRB de evento de transferência concluído com um código de conclusão sem tratamento. |
0x1011 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
O controlador informou que o anel de evento ficou cheio. O controlador também é conhecido por remover eventos quando isso acontece. |
0x1012 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
O controlador concluiu um comando fora de ordem. |
0x1013 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Após a conclusão da anulação do comando, o ponteiro de remoção do anel de comando relatado pelo controlador está incorreto. |
0x1014 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Após habilitar a conclusão do slot, o controlador nos deu uma ID de slot inválida. |
0x1015 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Falha do controlador em um comando SetAddress com BSR1. Isso é inesperado. |
0x1016 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Falha do controlador ao habilitar um slot durante uma redefinição de dispositivo usb. Isso é inesperado. |
0x1017 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Falha do controlador em um comando de configuração de pontos de extremidade em que estávamos desconfigurando os pontos de extremidade. Isso é inesperado. |
0x1018 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Falha no controlador em um comando de slot de desabilitação. Isso é inesperado. |
0x1019 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Falha no controlador em um comando de redefinição de dispositivo USB. Isso é inesperado. |
0x101A |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Após a redefinição do ponto de extremidade, o comando Definir Ponteiro de Dequeue falhou. |
0x101B |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
O comando xHCI reset endpoint retornou um código de conclusão sem tratamento. |
0x101C |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
O D0Entry para xHCI falhou. |
0x101D |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Falha ao remover temporariamente e adicionar um ponto de extremidade de fluxo (como dois comandos), ao usar o comando Configurar Ponto de Extremidade em vez de Definir Ponteiro de Desempador durante o cancelamento da solicitação. |
0x101E |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
O controlador indicou uma conclusão de transferência que não estava pendente no controlador. EventData == 1 (desreferenciar o ponteiro do TRB do Evento de Transferência teria causado uma verificação de bugs) |
0x101F |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
O controlador indicou uma conclusão de transferência que não estava pendente no controlador. EventData == 0 (endereço lógico no evento de transferência TRB não correspondido) |
0x1020 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
O controlador indicou uma conclusão de transferência que não estava pendente no controlador. EventData == 0 (endereço lógico no evento de transferência TRB não correspondido) O TRB do Evento de Transferência pode ser redundante (pontos perto de uma solicitação concluída recentemente). |
0x1021 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Falha ao remover temporariamente e adicionar um ponto de extremidade de fluxo (como dois comandos), ao usar o comando Configurar Ponto de Extremidade como parte da redefinição de um ponto de extremidade que não foi interrompido. |
0x1022 |
XHCI_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Falha ao remover e adicionar o mesmo ponto de extremidade (como um comando). |
0x3000 |
USBHUB3_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Um hub mal comportado foi redefinido com êxito pelo driver do hub. |
0x3001 |
USBHUB3_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Um hub mal comportado não foi redefinido com êxito pelo driver do hub. |
0x3002 |
USBHUB3_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Um hub SuperSpeed não funcional foi desabilitado pelo driver do hub. |
0x3003 |
USBHUB3_LIVEDUMP_CONTEXT |
Reservado |
Reservado |
Falha na enumeração de um dispositivo USB. |
Comentários
Para consultar uma funcionalidade USB, o driver cliente deve chamar WdfUsbTargetDeviceQueryUsbCapability ou USBD_QueryUsbCapability
Para enviar um MDL encadeado, o driver cliente deve chamar USBD_QueryUsbCapability e usar URB_FUNCTION_BULK_OR_INTERRUPT_TRANSFER_USING_CHAINED_MDL ou URB_FUNCTION_ISOCH_TRANSFER_USING_CHAINED_MDL.
Confira também
Barramento Serial Universal (USB)