estructura USB_BUS_INTERFACE_USBDI_V0 (usbbusif.h)
El controlador del concentrador USB proporciona la estructura USB_BUS_INTERFACE_USBDI_V0 para permitir que los clientes USB realicen llamadas directas al controlador del concentrador sin asignar IRP.
Sintaxis
typedef struct _USB_BUS_INTERFACE_USBDI_V0 {
USHORT Size;
USHORT Version;
PVOID BusContext;
PINTERFACE_REFERENCE InterfaceReference;
PINTERFACE_DEREFERENCE InterfaceDereference;
PUSB_BUSIFFN_GETUSBDI_VERSION GetUSBDIVersion;
PUSB_BUSIFFN_QUERY_BUS_TIME QueryBusTime;
PUSB_BUSIFFN_SUBMIT_ISO_OUT_URB SubmitIsoOutUrb;
PUSB_BUSIFFN_QUERY_BUS_INFORMATION QueryBusInformation;
} USB_BUS_INTERFACE_USBDI_V0, *PUSB_BUS_INTERFACE_USBDI_V0;
Miembros
Size
Especifica el tamaño en bytes del búfer que contiene los punteros de interfaz.
Version
Indica, en la entrada, la versión de la interfaz. Este miembro debe tener uno de los siguientes valores:
Valor | Significado |
---|---|
USB_BUSIF_USBDI_VERSION_0 | Versión 0 de la interfaz. |
USB_BUSIF_USBDI_VERSION_1 | Versión 1 de la interfaz. |
USB_BUSIF_USBDI_VERSION_2 | Versión 2 de la interfaz. |
USB_BUSIF_USBDI_VERSION_3 | Versión 3 de la interfaz. |
BusContext
Contiene información que describe el bus USB y el controlador de bus USB que expone esta interfaz. Se trata de una entidad opaca que el autor de la llamada debe pasar a las rutinas de interfaz.
InterfaceReference
Puntero a una rutina que incrementa el número de referencias a esta interfaz. Para obtener más información sobre esta rutina, vea InterfaceReference.
InterfaceDereference
Puntero a una rutina que disminuye el número de referencias a esta interfaz. Para obtener más información sobre esta rutina, vea InterfaceDereference.
GetUSBDIVersion
Puntero a una rutina que devuelve el número de versión de la interfaz USB, el número de versión de la especificación USB que define la interfaz, junto con la información de funcionalidades del controlador de host. Esta rutina devuelve la versión de interfaz USBDI más alta compatible con el controlador de puerto. Para obtener más información sobre esta rutina, vea GetUSBDIVersion.
QueryBusTime
Puntero a una rutina que devuelve el número de marco USB de 32 bits actual. Esta rutina reemplaza la función de USBD_QueryBusTime proporcionada por usbd.sys. Para obtener más información sobre esta rutina, vea QueryBusTime.
SubmitIsoOutUrb
Reservado. No use.
QueryBusInformation
Puntero a una rutina que devuelve información sobre el bus. La información que se devuelve depende del valor del miembro level de . Si nivel es 0, esta rutina devuelve información de ancho de banda de bus. Si nivel es 1, devuelve información de ancho de banda de bus y el nombre simbólico del controlador de host. Esta rutina reemplaza la función USBD_QueryBusInformation proporcionada por usbd.sys. Para obtener más información sobre esta rutina, vea QueryBusInformation.
Observaciones
Para obtener información sobre cómo consultar estas interfaces, consulte Consulta de interfaces USB. Los autores de llamadas de las rutinas de esta estructura se pueden ejecutar en IRQL <= DISPATCH_LEVEL.
Requisitos
Requisito | Valor |
---|---|
encabezado de | usbbusif.h (include Usbbusif.h) |
Consulte también
Rutinas de interfaz del controlador de bus de para controladores de cliente USB