Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The QueryControllerType routine gets information about the USB host controller to which the USB device is attached.
Syntax
typedef NTSTATUS
(USB_BUSIFFN *PUSB_BUSIFFN_QUERY_CONTROLLER_TYPE) (
IN PVOID,
OUT PULONG,
OUT PUSHORT,
OUT PUSHORT,
OUT PUCHAR,
OUT PUCHAR,
OUT PUCHAR,
OUT PUCHAR
);
Parameters
[in] unnamedParam1
Handle returned in the BusContext member of the USB_BUS_INTERFACE_USBDI_V3 structure by an IRP_MN_QUERY_INTERFACE request.
[out] unnamedParam2
Reserved. Do not use.
[out] unnamedParam3
Pointer to a UCHAR variable that receives the PCI class for the USB host controller.
[out] unnamedParam4
Pointer to a USHORT variable that receives the PCI device ID for the USB host controller.
[out] unnamedParam5
Pointer to a UCHAR variable that receives the PCI programming interface for the USB host controller.
[out] unnamedParam6
Pointer to a UCHAR variable that receives the PCI revision number for the USB host controller.
[out] unnamedParam7
Pointer to a UCHAR variable that receives the PCI subclass for the USB host controller.
[out] unnamedParam8
Pointer to a USHORT variable that receives the PCI vendor ID for the USB host controller.
Return value
Returns STATUS_SUCCESS on success, and the appropriate error code on failure.
Remarks
PciClass is typically set to PCI_CLASS_SERIAL_BUS_CTLR (0x0C).
PciSubClass is typically set to PCI_SUBCLASS_SB_USB (0x03).
PciProgif is typically set to one of the following values:
- 0x00 - Universal Host Controller Interface (UHCI)
- 0x10 - Open Host Controller Interface (OHCI)
- 0x20 - Enhanced Host Controller Interface (EHCI)
Requirements
| Requirement | Value |
|---|---|
| Target Platform | Desktop |
| Header | usbbusif.h (include Usbbusif.h) |
| IRQL | < = DISPATCH_LEVEL |