estrutura _URB_CONTROL_FEATURE_REQUEST (usb.h)
A estrutura _URB_CONTROL_FEATURE_REQUEST é usada por drivers de cliente USB para definir ou limpar recursos em um dispositivo, interface ou ponto de extremidade.
Sintaxe
struct _URB_CONTROL_FEATURE_REQUEST {
struct _URB_HEADER Hdr;
PVOID Reserved;
ULONG Reserved2;
ULONG Reserved3;
PVOID Reserved4;
PMDL Reserved5;
struct _URB *UrbLink;
struct _URB_HCD_AREA hca;
USHORT Reserved0;
USHORT FeatureSelector;
USHORT Index;
USHORT Reserved1;
};
Membros
Hdr
Ponteiro para uma estrutura de _URB_HEADER que especifica as informações do cabeçalho URB. Hdr.Function indica um conjunto ou uma operação de recurso clara, a ser executada em um dispositivo, interface, ponto de extremidade ou outro componente não padrão. Hdr.Function deve ter um dos seguintes valores:
Hdr.Length deve ser igual sizeof(_URB_CONTROL_FEATURE_REQUEST)
a .
Reserved
Reservado. Não use.
Reserved2
Reservado. Não use.
Reserved3
Reservado. Não use.
Reserved4
Reservado. Não use.
Reserved5
Reservado. Não use.
UrbLink
Reservado. Não use.
hca
Reservado. Não use.
Reserved0
Reservado. Não use.
FeatureSelector
Especifica o código de recurso definido por USB a ser limpo ou definido. Usar um código de recurso inválido, não pode ser definido ou não pode ser limpo fará com que o destino fique parado. O driver de barramento copiará o valor no membro FeatureSelector para o campo wValue do pacote de instalação.
Index
Especifica o índice definido pelo dispositivo, retornado por uma solicitação de configuração bem-sucedida, se a solicitação for para um ponto de extremidade ou interface. Caso contrário, Index deverá ser zero. O driver de barramento copiará o valor no membro Index para o campo wIndex do pacote de instalação.
Reserved1
Reservado. Não use.
Comentários
Os drivers podem usar a rotina de serviço UsbBuildFeatureRequest para formatar esse URB.
Os membros reservados dessa estrutura devem ser tratados como opacos e são reservados para uso do sistema.
Quando um motorista armaciona um dispositivo USB para ativação remota com uma solicitação IRP_MN_WAIT_WAKE, o motorista do ônibus USB define automaticamente o recurso de ativação remota no dispositivo. Um recurso de controle URB não é necessário.
Da mesma forma, quando um driver emite um URB com um tipo de função de URB_FUNCTION_SYNC_RESET_PIPE_AND_CLEAR_STALL para um pipe, o motorista do ônibus limpará automaticamente o recurso de parada do ponto de extremidade do pipe. O driver não precisa enviar um recurso de controle URB para o pipe para limpar a parada do ponto de extremidade.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | usb.h (inclua Usb.h) |