通用串行总线 (USB)

本参考部分介绍 Windows 驱动程序工具包 (WDK) 中包含的驱动程序编程接口。 编程接口用于开发与 USB 设备、主机控制器、连接器交互的驱动程序。 其中包括驱动程序可以调用的导出函数、驱动程序可以实现的回调例程、驱动程序可以发送到 Microsoft 提供的 USB 驱动程序堆栈的 I/O 请求,以及这些请求中使用的各种数据结构。

有关编程指南,请参阅 通用串行总线 (USB)

通用 USB 客户端驱动程序参考

Windows 驱动程序模型 (基于 WDM) 的 USB 客户端驱动程序可以调用函数来与 Microsoft 提供的 USB 驱动程序堆栈通信。 这些函数在 Usbdlib.h 中定义,客户端驱动程序需要 Usbdex.lib 库。 库在生成时加载并静态链接到客户端驱动程序模块。 调用这些例程的客户端驱动程序可以在 Windows Vista 和更高版本的 Windows 上运行。

编程指南

开发适用于 USB 设备的 Windows 客户端驱动程序

标头

已弃用的函数,所有 USB 驱动程序的 IOCTL 请求

这些函数已弃用。

请勿使用。

  • USBD_CalculateUsbBandwidth
  • USBD_CreateConfigurationRequest
  • USBD_Debug_LogEntry
  • USBD_GetUSBDIVersion
  • USBD_ParseConfigurationDescriptor
  • USBD_QueryBusTime
  • USBD_RegisterHcFilter

这些 I/O 请求已弃用或保留供内部使用。

USB 客户端驱动程序不得使用以下 I/O 请求:

  • IOCTL_USB_DIAG_IGNORE_HUBS_OFF
  • IOCTL_USB_DIAG_IGNORE_HUBS_ON
  • IOCTL_USB_DIAGNOSTIC_MODE_OFF
  • IOCTL_USB_DIAGNOSTIC_MODE_ON
  • IOCTL_USB_GET_HUB_CAPABILITIES
  • IOCTL_USB_HCD_DISABLE_PORT
  • IOCTL_USB_HCD_ENABLE_PORT
  • IOCTL_USB_HCD_GET_STATS_1
  • IOCTL_USB_HCD_GET_STATS_2
  • IOCTL_USB_RESET_HUB

Kernel-Mode IOCTL

USB 客户端驱动程序可以在内核模式下接收或发送以下任何 I/O 请求:

应用程序和服务发送的 User-Mode IOCTL

USB 客户端驱动程序在内核级别接收以下用户模式 I/O 控制请求:

双角色控制器驱动程序参考

双角色控制器的 USB 驱动程序可以充当主控制器或功能控制器,具体取决于它连接到的硬件。 这些控制器在移动设备上很常见,允许连接到电脑以及键盘和鼠标等 USB 外设。 移动设备在连接到电脑时可以充当外围设备,使你可以在电脑和移动设备之间传输文件。 在这种情况下,设备上的控制器以函数角色运行。 相反,当连接到 USB 外设(如存储驱动器、键盘、鼠标)时,控制器可以在主机角色中运行。

双角色控制器的驱动程序main职责之一是在这两个角色之间切换,拆掉前一个角色的设备节点,并为新角色加载设备节点。 编写驱动程序时,请使用 WDF 类扩展客户端驱动程序模型。 有关 WDF 类扩展客户端驱动程序模型的详细信息,请参阅 Ursdevice.h。

双角色控制器驱动程序编程指南

有关为 Windows 系统启用 USB 双角色支持的信息,请参阅 USB 双角色驱动程序堆栈体系结构

双角色控制器驱动程序标头

仿真主机控制器驱动程序参考

Windows 驱动程序可以将非 USB 设备呈现为模拟 USB 设备。 通过使用 WDF 类扩展客户端驱动程序模型,可以编写一个驱动程序,该驱动程序使用硬件的接口将 USB 级构造转换 (重置、数据传输) 到实际的基础总线。 类扩展和客户端驱动程序表示具有根集线器的仿真主机控制器,该集线器能够将连接的设备作为 USB 设备呈现给系统。

  • USB 设备仿真类扩展 (UdeCx) 。 这是Windows 10随附的内置驱动程序。
  • 客户端驱动程序由 IHV/OEM 编写。 此驱动程序称为 UDE 客户端驱动程序。

驱动程序对作为 FDO 加载到主机控制器设备堆栈中。 UDE 客户端驱动程序使用一组方法和事件回调函数与 Udecx 通信,以处理设备请求并通知类扩展各种事件。

仿真主机控制器编程指南

(UDE) 开发适用于模拟 USB 设备的 Windows 驱动程序

模拟主机控制器标头

函数类驱动程序参考

USB 函数类驱动程序实现 USB 设备上) 特定接口 (或一组接口的功能。 类驱动程序处理用户模式服务发出的请求,也可以将请求转发到 UFX) 及其函数客户端驱动程序 (USB 函数类扩展。 某些类驱动程序包含在 Windows 中,例如 MTP 和 IpOverUsb。 Windows 还提供泛型内核模式类驱动程序、泛型 USBFN (GenericUSBFn.sys) 。 如果系统提供的驱动程序未提供特定接口或功能,则可能需要编写函数类驱动程序。 类驱动程序可以通过使用 Windows 驱动程序框架 (WDF) 实现为内核模式驱动程序。 或者,可以将它作为用户模式服务实现。 在这种情况下,类驱动程序必须与系统提供的类驱动程序通用 USBFN 配对。 例如,MTP 类驱动程序作为用户模式服务运行,该服务将文件传输到设备或从设备传输文件。

函数类驱动程序标头

USB 功能控制器客户端驱动程序参考

USB 函数客户端驱动程序负责实现特定于函数控制器的操作。 客户端驱动程序与 UFX) 模块 (USB 函数类扩展通信,以处理终结点数据传输、USB 设备状态更改 (重置、暂停、恢复) 、附加/分离检测、端口/充电器检测。 客户端驱动程序还负责处理电源管理和 PnP 事件。

USB 功能控制器客户端驱动程序编程指南

编写 USB 功能控制器客户端驱动程序

USB 功能控制器客户端驱动程序标头

用于支持 USB 充电器的筛选器驱动程序

如果功能控制器使用内置 Synopsys 和 ChipIdea 驱动程序,则编写支持充电器检测的筛选器驱动程序。 如果要为专有功能控制器编写客户端驱动程序,则通过实现 EVT_UFX_DEVICE_PROPRIETARY_CHARGER_SET_PROPERTYEVT_UFX_DEVICE_PROPRIETARY_CHARGER_RESETEVT_UFX_DEVICE_DETECT_PROPRIETARY_CHARGER,将充电器/附加检测集成到客户端驱动程序中。

用于支持 USB 充电器的筛选器驱动程序编程指南

支持 USB 充电器的 USB 筛选器驱动程序

用于支持 USB 充电器标头的筛选器驱动程序

主机控制器驱动程序参考

USB 主机控制器扩展是系统提供的 Kernel-Mode 驱动程序框架的扩展 (KMDF) 。 在 Microsoft USB 驱动程序堆栈体系结构中,UCX 提供的功能可帮助主机控制器客户端驱动程序管理 USB 主控制器设备。 客户端驱动程序处理硬件操作和事件、电源管理和 PnP 事件。 UCX 充当 Microsoft USB 3.0 堆栈其余部分的抽象接口,将请求排队到客户端驱动程序,并执行其他任务。

如果要开发不符合规范的 xHCI 主控制器或开发自定义的非 xHCI 硬件 ((例如虚拟主机控制器) ),则可以编写与 UCX 类扩展通信的主控制器驱动程序。

主机控制器驱动程序编程指南

为 USB 主控制器开发 Windows 驱动程序

主机控制器驱动程序标头

类型 C 驱动程序参考

Windows 10 引入了对新 USB 连接器:USB 类型 C 的支持。 可以为以下方案编写驱动程序:

方案 标头 编程指南
如果 USB Type-C 硬件能够处理电源输送 (PD) 状态机。

ucmmanager.h

编写 USB 类型 C 连接器驱动程序
如果驱动程序希望参与 USB 类型 C 连接器的策略决策。 Usbpmapi.h 编写 USB 类型 C 策略管理器客户端驱动程序
如果硬件不支持 PD。

ucmtcpcidevice.h

ucmtcpciglobals.h

ucmtcpciportcontroller.h

ucmtcpciportcontrollerrequests.h

ucmtypes.h

编写 USB Type-C 端口控制器驱动程序

Ucmucsicx.h

Ucmucsidevice.h

Ucmucsifuncenum.h

Ucmucsiglobals.h

Ucmucsippm.h

Ucmucsippmrequests.h

Ucmucsispec.h

编写 UCSI 客户端驱动程序

IOCTL

 
IOCTL_GET_HCD_DRIVERKEY_NAME

IOCTL_GET_HCD_DRIVERKEY_NAME I/O 控制请求检索 USB 主机控制器驱动程序的注册表中的驱动程序密钥名称。
IOCTL_INTERNAL_USB_CYCLE_PORT

IOCTL_INTERNAL_USB_CYCLE_PORT I/O 请求模拟设备拔出并重新拔出与 PDO 关联的端口。
IOCTL_INTERNAL_USB_ENABLE_PORT

IOCTL_INTERNAL_USB_ENABLE_PORT IOCTL 已弃用。 请勿使用。
IOCTL_INTERNAL_USB_GET_BUS_INFO

IOCTL_INTERNAL_USB_GET_BUS_INFO I/O 请求向总线驱动程序查询某些总线信息。
IOCTL_INTERNAL_USB_GET_BUSGUID_INFO

IOCTL_INTERNAL_USB_GET_BUSGUID_INFO IOCTL 已弃用。 请勿使用。
IOCTL_INTERNAL_USB_GET_CONTROLLER_NAME

IOCTL_INTERNAL_USB_GET_CONTROLLER_NAME I/O 请求向总线驱动程序查询 USB 主机控制器的设备名称。
IOCTL_INTERNAL_USB_GET_DEVICE_CONFIG_INFO

IOCTL_INTERNAL_USB_GET_DEVICE_CONFIG_INFO I/O 请求返回有关 USB 设备及其连接到的集线器的信息。
IOCTL_INTERNAL_USB_GET_DEVICE_HANDLE

IOCTL_INTERNAL_USB_GET_DEVICE_HANDLE IOCTL 由 USB 集线器驱动程序使用。 请勿使用。
IOCTL_INTERNAL_USB_GET_DEVICE_HANDLE_EX

IOCTL_INTERNAL_USB_GET_DEVICE_HANDLE_EX IOCTL 由 USB 集线器驱动程序使用。 请勿使用。
IOCTL_INTERNAL_USB_GET_HUB_COUNT

IOCTL_INTERNAL_USB_GET_HUB_COUNT IOCTL 由 USB 集线器驱动程序使用。 请勿使用。
IOCTL_INTERNAL_USB_GET_HUB_NAME

如果 PDO 用于中心,驱动程序使用IOCTL_INTERNAL_USB_GET_HUB_NAME I/O 请求来检索目标 PDO 的 UNICODE 符号名称。
IOCTL_INTERNAL_USB_GET_PARENT_HUB_INFO

USB 集线器驱动程序使用IOCTL_INTERNAL_USB_GET_PARENT_HUB_INFO。 请勿使用。
IOCTL_INTERNAL_USB_GET_PORT_STATUS

IOCTL_INTERNAL_USB_GET_PORT_STATUS I/O 请求查询 PDO 的状态。 IOCTL_INTERNAL_USB_GET_PORT_STATUS是内核模式 I/O 控制请求。 此请求面向 USB 集线器 PDO。 必须在 IRQL = PASSIVE_LEVEL 发送此 IOCTL。
IOCTL_INTERNAL_USB_GET_ROOTHUB_PDO

IOCTL_INTERNAL_USB_GET_ROOTHUB_PDO IOCTL 由 USB 集线器驱动程序使用。 请勿使用。
IOCTL_INTERNAL_USB_GET_TOPOLOGY_ADDRESS

IOCTL_INTERNAL_USB_GET_TOPOLOGY_ADDRESS I/O 请求返回有关 USB 设备连接到的主控制器以及设备在 USB 设备树中的位置的信息。
IOCTL_INTERNAL_USB_GET_TT_DEVICE_HANDLE

USB 集线器驱动程序使用IOCTL_INTERNAL_USB_GET_TT_DEVICE_HANDLE。 请勿使用。
IOCTL_INTERNAL_USB_NOTIFY_IDLE_READY

IOCTL_INTERNAL_USB_NOTIFY_IDLE_READY IOCTL 由 USB 集线器驱动程序使用。 请勿使用。
IOCTL_INTERNAL_USB_RECORD_FAILURE

IOCTL_INTERNAL_USB_RECORD_FAILURE IOCTL 由 USB 集线器驱动程序使用。 请勿使用。
IOCTL_INTERNAL_USB_REGISTER_COMPOSITE_DEVICE

IOCTL_INTERNAL_USB_REGISTER_COMPOSITE_DEVICE I/O 请求将 USB 多功能设备的驱动程序注册到基础 USB 驱动程序堆栈 (复合驱动程序) 。
IOCTL_INTERNAL_USB_REQ_GLOBAL_RESUME

IOCTL_INTERNAL_USB_REQ_GLOBAL_RESUME IOCTL 由 USB 集线器驱动程序使用。 请勿使用。
IOCTL_INTERNAL_USB_REQ_GLOBAL_SUSPEND

IOCTL_INTERNAL_USB_REQ_GLOBAL_SUSPEND IOCTL 由 USB 集线器驱动程序使用。 请勿使用。
IOCTL_INTERNAL_USB_REQUEST_REMOTE_WAKE_NOTIFICATION

IOCTL_INTERNAL_USB_REQUEST_REMOTE_WAKE_NOTIFICATION I/O 请求由通用串行总线 (USB) 多功能设备的驱动程序发送, (复合驱动程序) 从设备中的特定功能请求远程唤醒通知。
IOCTL_INTERNAL_USB_RESET_PORT

驱动程序使用IOCTL_INTERNAL_USB_RESET_PORT I/O 控制请求来重置其所管理设备的上游端口。
IOCTL_INTERNAL_USB_SUBMIT_IDLE_NOTIFICATION

驱动程序使用IOCTL_INTERNAL_USB_SUBMIT_IDLE_NOTIFICATION I/O 请求来通知 USB 总线驱动程序设备处于空闲状态并可以暂停。
IOCTL_INTERNAL_USB_SUBMIT_URB

驱动程序使用IOCTL_INTERNAL_USB_SUBMIT_URB I/O 控制请求向总线驱动程序提交 URB。 IOCTL_INTERNAL_USB_SUBMIT_URB是内核模式 I/O 控制请求。 此请求面向 USB 集线器 PDO。
IOCTL_INTERNAL_USB_UNREGISTER_COMPOSITE_DEVICE

IOCTL_INTERNAL_USB_UNREGISTER_COMPOSITE_DEVICE I/O 请求取消注册 USB 多功能设备的驱动程序, (复合驱动程序) 并释放与注册关联的所有资源。
IOCTL_INTERNAL_USBFN_ACTIVATE_USB_BUS

USB 类驱动程序发送此请求以激活总线,以便驱动程序可以准备处理总线事件和处理流量。
IOCTL_INTERNAL_USBFN_BUS_EVENT_NOTIFICATION

USB 类驱动程序发送此请求以准备从 USB 函数类扩展 (UFX) 接收的通知,以响应总线上的事件,例如端口类型更改或接收非标准设置数据包。
IOCTL_INTERNAL_USBFN_CONTROL_STATUS_HANDSHAKE_IN

类驱动程序发送此请求,以在 IN 方向上的终结点 0 上发送零长度控制状态握手。
IOCTL_INTERNAL_USBFN_CONTROL_STATUS_HANDSHAKE_OUT

类驱动程序发送此请求,以在 OUT 方向上的终结点 0 上发送零长度控制状态握手。
IOCTL_INTERNAL_USBFN_DEACTIVATE_USB_BUS

请勿使用。
IOCTL_INTERNAL_USBFN_DESCRIPTOR_UPDATE

USB 函数类扩展将此请求发送到客户端驱动程序,以更新到指定终结点的终结点描述符。
IOCTL_INTERNAL_USBFN_GET_CLASS_INFO

类驱动程序发送此请求 IO 控制代码,以检索有关设备可用管道的信息,如注册表中配置的那样。
IOCTL_INTERNAL_USBFN_GET_INTERFACE_DESCRIPTOR_SET

类驱动程序发送此请求以获取设备上函数的整个 USB 接口描述符集。
IOCTL_INTERNAL_USBFN_GET_PIPE_STATE

类驱动程序发送此请求以获取指定管道的停止状态。
IOCTL_INTERNAL_USBFN_REGISTER_USB_STRING

类驱动程序发送此请求来注册 USB 字符串描述符。
IOCTL_INTERNAL_USBFN_RESERVED

请勿使用此 (IOCTL_INTERNAL_USBFN_RESERVED) 文章。
IOCTL_INTERNAL_USBFN_SET_PIPE_STATE

类驱动程序发送此请求以设置指定 USB 管道的停止状态。
IOCTL_INTERNAL_USBFN_SET_POWER_FILTER_EXIT_LPM

请勿使用此 (IOCTL_INTERNAL_USBFN_SET_POWER_FILTER_EXIT_LPM) 文章。
IOCTL_INTERNAL_USBFN_SET_POWER_FILTER_STATE

请勿使用此 (IOCTL_INTERNAL_USBFN_SET_POWER_FILTER_STATE) 文章。
IOCTL_INTERNAL_USBFN_SIGNAL_REMOTE_WAKEUP

类驱动程序发送此请求以从终结点获取远程唤醒通知。
IOCTL_INTERNAL_USBFN_TRANSFER_IN

类驱动程序发送此请求,以启动到指定管道上的主机的数据传输。
IOCTL_INTERNAL_USBFN_TRANSFER_IN_APPEND_ZERO_PKT

类驱动程序发送此请求以启动到指定管道的 IN 传输,并追加零长度数据包以指示传输结束。
IOCTL_INTERNAL_USBFN_TRANSFER_OUT

类驱动程序发送此请求,以从指定管道上的主机启动数据传输。
IOCTL_UCMTCPCI_PORT_CONTROLLER_ALTERNATE_MODE_ENTERED

通知客户端驱动程序已进入备用模式,以便驱动程序可以执行其他任务。
IOCTL_UCMTCPCI_PORT_CONTROLLER_ALTERNATE_MODE_EXITED

通知客户端驱动程序退出备用模式,以便驱动程序可以执行其他任务。
IOCTL_UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_CONFIGURED

通知客户端驱动程序,合作伙伴设备上的 DisplayPort 备用模式已配置引脚分配,以便驱动程序可以执行其他任务。
IOCTL_UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_DISPLAY_OUT_STATUS_CHANGED

通知客户端驱动程序 DisplayPort 连接的显示输出状态已更改,以便驱动程序可以执行其他任务。
IOCTL_UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_HPD_STATUS_CHANGED

通知客户端驱动程序 DisplayPort 连接的热插拔检测状态已更改,以便驱动程序可以执行其他任务。
IOCTL_UCMTCPCI_PORT_CONTROLLER_GET_CONTROL

获取根据通用串行总线类型 C 端口控制器接口规范定义的所有控件寄存器的值。
IOCTL_UCMTCPCI_PORT_CONTROLLER_GET_STATUS

根据通用串行总线类型 C 端口控制器接口规范获取所有状态寄存器的值。 客户端驱动程序必须检索CC_STATUS、POWER_STATUS和FAULT_STATUS寄存器的值。
IOCTL_UCMTCPCI_PORT_CONTROLLER_SET_COMMAND

设置根据通用串行总线类型 C 端口控制器接口规范定义的命令寄存器的值。
IOCTL_UCMTCPCI_PORT_CONTROLLER_SET_CONFIG_STANDARD_OUTPUT

设置根据通用串行总线类型 C 端口控制器接口规范定义的CONFIG_STANDARD_OUTPUT寄存器。
IOCTL_UCMTCPCI_PORT_CONTROLLER_SET_CONTROL

设置根据通用串行总线类型 C 端口控制器接口规范定义的控制寄存器的值。
IOCTL_UCMTCPCI_PORT_CONTROLLER_SET_MESSAGE_HEADER_INFO

设置根据通用串行总线类型 C 端口控制器接口规范定义的MESSAGE_HEADER_INFO寄存器的值。
IOCTL_UCMTCPCI_PORT_CONTROLLER_SET_RECEIVE_DETECT

设置根据通用串行总线类型 C 端口控制器接口规范定义的RECEIVE_DETECT寄存器。
IOCTL_UCMTCPCI_PORT_CONTROLLER_SET_TRANSMIT

设置根据通用串行总线类型 C 端口控制器接口规范定义的传输寄存器。
IOCTL_UCMTCPCI_PORT_CONTROLLER_SET_TRANSMIT_BUFFER

设置根据通用串行总线类型 C 端口控制器接口规范定义的TRANSMIT_BUFER寄存器。
IOCTL_UCMUCSI_PPM_GET_UCSI_DATA_BLOCK

详细了解:IOCTL_UCMUCSI_PPM_GET_UCSI_DATA_BLOCK IOCTL
IOCTL_UCMUCSI_PPM_SEND_UCSI_DATA_BLOCK

将 UCSI 数据块发送到客户端驱动程序。
IOCTL_USB_DIAG_IGNORE_HUBS_OFF

IOCTL_USB_DIAG_IGNORE_HUBS_OFF I/O 控件已弃用。 请勿使用。
IOCTL_USB_DIAG_IGNORE_HUBS_ON

IOCTL_USB_DIAG_IGNORE_HUBS_ON I/O 控件已弃用。 请勿使用。
IOCTL_USB_DIAGNOSTIC_MODE_OFF

IOCTL_USB_DIAGNOSTIC_MODE_OFF I/O 控件已弃用。 请勿使用。
IOCTL_USB_DIAGNOSTIC_MODE_ON

IOCTL_USB_DIAGNOSTIC_MODE_ON I/O 控件已弃用。 请勿使用。
IOCTL_USB_GET_DESCRIPTOR_FROM_NODE_CONNECTION

IOCTL_USB_GET_DESCRIPTOR_FROM_NODE_CONNECTION I/O 控制请求检索与指示的端口索引关联的设备的一个或多个描述符。IOCTL_USB_GET_DESCRIPTOR_FROM_NODE_CONNECTION是用户模式 I/O 控制请求。
IOCTL_USB_GET_DEVICE_CHARACTERISTICS

客户端驱动程序发送此请求以确定 USB 设备的常规特征,例如任何请求的最大发送和接收延迟。
IOCTL_USB_GET_FRAME_NUMBER_AND_QPC_FOR_TIME_SYNC

IOCTL_USB_GET_FRAME_NUMBER_AND_QPC_FOR_TIME_SYNC IOCTL 函数获取系统查询性能计数器 (特定帧和微帧的 QPC) 值。
IOCTL_USB_GET_HUB_CAPABILITIES

IOCTL_USB_GET_HUB_CAPABILITIES I/O 控制请求检索 USB 集线器的功能。
IOCTL_USB_GET_HUB_CAPABILITIES_EX

IOCTL_USB_GET_HUB_CAPABILITIES_EX I/O 控制请求检索 USB 集线器的功能。IOCTL_USB_GET_HUB_CAPABILITIES_EX是用户模式 I/O 控制请求。 此请求面向 USB 集线器设备 (GUID_DEVINTERFACE_USB_HUB) 。
IOCTL_USB_GET_HUB_INFORMATION_EX

IOCTL_USB_GET_HUB_INFORMATION_EX I/O 控制请求由应用程序发送,以检索有关USB_HUB_INFORMATION_EX结构中的 USB 集线器的信息。请求检索中心上的最高端口号。
IOCTL_USB_GET_NODE_CONNECTION_ATTRIBUTES

IOCTL_USB_GET_NODE_CONNECTION_ATTRIBUTES I/O 控制请求检索特定端口的 Microsoft 扩展端口属性。
IOCTL_USB_GET_NODE_CONNECTION_DRIVERKEY_NAME

IOCTL_USB_GET_NODE_CONNECTION_DRIVERKEY_NAME I/O 控制请求检索与连接到所指示端口的设备关联的驱动程序注册表项名称。
IOCTL_USB_GET_NODE_CONNECTION_INFORMATION

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION请求检索有关指示的 USB 端口和连接到端口的设备(如果有) 的信息。客户端驱动程序必须在 IRQL PASSIVE_LEVEL 发送此 IOCTL。IOCTL_USB_GET_NODE_CONNECTION_INFORMATION是用户模式 I/O 控制请求。 此请求面向 USB 集线器设备 (GUID_DEVINTERFACE_USB_HUB) 。 不要将此请求发送到根中心。
IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX请求检索有关 USB 端口和连接到端口的设备(如果有) 的信息。客户端驱动程序必须在 IRQL PASSIVE_LEVEL 发送此 IOCTL。IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX是用户模式 I/O 控制请求。 此请求面向 USB 集线器设备 (GUID_DEVINTERFACE_USB_HUB) 。 不要将此请求发送到根中心。
IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX_V2

IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX_V2 I/O 控件由应用程序发送,用于检索集线器上特定 USB 端口支持的协议的相关信息。 请求还会检索端口的速度功能。
IOCTL_USB_GET_NODE_CONNECTION_NAME

IOCTL_USB_GET_NODE_CONNECTION_NAME I/O 控制请求与 USB_NODE_CONNECTION_NAME 结构一起使用,以检索附加到下游端口的中心符号链接名称。IOCTL_USB_GET_NODE_CONNECTION_NAME是用户模式 I/O 控制请求。 此请求面向 USB 集线器设备 (GUID_DEVINTERFACE_USB_HUB) 。
IOCTL_USB_GET_NODE_INFORMATION

IOCTL_USB_GET_NODE_INFORMATION I/O 控制请求与 USB_NODE_INFORMATION 结构一起使用,以检索有关父设备的信息。IOCTL_USB_GET_NODE_INFORMATION是用户模式 I/O 控制请求。
IOCTL_USB_GET_PORT_CONNECTOR_PROPERTIES

IOCTL_USB_GET_PORT_CONNECTOR_PROPERTIES I/O 控制请求由应用程序发送,以检索有关 USB 集线器上特定端口的信息。
IOCTL_USB_GET_ROOT_HUB_NAME

IOCTL_USB_GET_ROOT_HUB_NAME I/O 控制请求与 USB_ROOT_HUB_NAME 结构一起使用,以检索根中心的符号链接名称。IOCTL_USB_GET_ROOT_HUB_NAME是用户模式 I/O 控制请求。
IOCTL_USB_GET_TRANSPORT_CHARACTERISTICS

客户端驱动程序发送此请求以检索传输特征。
IOCTL_USB_HCD_DISABLE_PORT

IOCTL_USB_HCD_DISABLE_PORT IOCTL 已弃用。 请勿使用。
IOCTL_USB_HCD_ENABLE_PORT

IOCTL_USB_HCD_ENABLE_PORT IOCTL 已弃用。 请勿使用。
IOCTL_USB_HCD_GET_STATS_1

IOCTL_USB_HCD_GET_STATS_1 IOCTL 已弃用。 请勿使用。
IOCTL_USB_HCD_GET_STATS_2

IOCTL_USB_HCD_GET_STATS_2 IOCTL 已弃用。 请勿使用。
IOCTL_USB_HUB_CYCLE_PORT

IOCTL_USB_HUB_CYCLE_PORT I/O 控制请求对与接收请求的 PDO 关联的端口进行电源循环。
IOCTL_USB_NOTIFY_ON_TRANSPORT_CHARACTERISTICS_CHANGE

此请求通知调用方传输特征的更改。
IOCTL_USB_REGISTER_FOR_TRANSPORT_CHARACTERISTICS_CHANGE

此请求注册有关传输特征更改的通知。
IOCTL_USB_RESET_HUB

IOCTL_USB_RESET_HUB IOCTL 由 USB 驱动程序堆栈使用。 请勿使用。
IOCTL_USB_START_TRACKING_FOR_TIME_SYNC

此请求将调用方注册到用于时间同步服务的 USB 驱动程序堆栈。
IOCTL_USB_STOP_TRACKING_FOR_TIME_SYNC

此请求使用 USB 驱动程序堆栈取消注册时间同步服务的调用方。
IOCTL_USB_UNREGISTER_FOR_TRANSPORT_CHARACTERISTICS_CHANGE

此请求取消注册调用方,无法获取有关传输特征更改的通知。

枚举

 
CONTROLLER_TYPE

此枚举指定 USB 主控制器是否是 xHCI) 控制器 (扩展主机控制器接口。
ENDPOINT_RESET_FLAGS

定义用于重置终结点的请求的参数。
TRISTATE

TRISTATE 枚举指示 true 或 false 的泛型状态值。
UCM_CHARGING_STATE

定义 Type-C 连接器的充电状态。
UCM_PD_CONN_STATE

定义电源 (PD) Type-C 端口的协商状态。
UCM_PD_POWER_DATA_OBJECT_TYPE

定义 Power Data 对象类型。
UCM_POWER_ROLE

定义 USB Type-C 连接的设备的电源角色。
UCM_TYPEC_CURRENT

定义不同的 Type-C 当前级别,如 Type-C 规范中定义。
UCM_TYPEC_OPERATING_MODE

定义 USB 类型 C 连接器的操作模式。
UCM_TYPEC_PARTNER

定义 Type-C 连接器的状态。
UCMTCPCI_PORT_CONTROLLER_ALERT_TYPE

定义通用警报值,这些值用于指示在端口控制器上收到的硬件警报的类型。
UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_DISPLAY_OUT_STATUS

定义值,以确定是否启用了 DisplayPort 设备的显示输出状态。
UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_HPD_STATUS

定义用于确定是否插入 DisplayPort 设备的值。
UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_PIN_ASSIGNMENT

详细了解:_UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_PIN_ASSIGNMENT枚举
UCMTCPCI_PORT_CONTROLLER_IOCTL

定义发送到端口控制器客户端驱动程序的各种设备 I/O 控制请求。 这表示 WPP 中 IOCTL 的类型。
UCMUCSI_PPM_IOCTL

定义客户端驱动程序处理的 I/O 控制代码。
UCMUCSIFUNCENUM

定义由 UcmUcsiCx 类扩展的客户端驱动程序调用的所有导出函数的值。
UCSI_BATTERY_CHARGING_STATUS

请参阅表 4-42,偏移量 64。
UCSI_COMMAND

请参阅表 4-51 命令代码。
UCSI_CONNECTOR_PARTNER_FLAGS

在 GET_CONNECTOR_STATUS 命令中使用。 请参阅表 4-42,偏移量 21。
UCSI_CONNECTOR_PARTNER_TYPE

在 GET_CONNECTOR_STATUS 命令中使用。 请参阅表 4-42,偏移量 29。
UCSI_GET_ALTERNATE_MODES_RECIPIENT

在 GET_ALTERNATE_MODES 命令中使用。 请参阅表 4-24,偏移量 16。
UCSI_GET_PDOS_SOURCE_CAPABILITIES_TYPE

在 GET_PDOS 命令中使用。 请参阅表 4-34,偏移量 35。
UCSI_GET_PDOS_TYPE

在 GET_PDOS 命令中使用。 请参阅表 4-34,偏移量 34。
UCSI_POWER_DIRECTION

在 GET_CONNECTOR_STATUS 命令中使用。 请参阅表 4-42,偏移量 20。
UCSI_POWER_DIRECTION_MODE

在 GET_CONNECTOR_STATUS 命令中使用。 请参阅表 4-42,偏移量 20。
UCSI_POWER_DIRECTION_ROLE

在 SET_PDR 命令中使用。 请参阅表 4-22,偏移量 23。
UCSI_POWER_OPERATION_MODE

在 GET_CONNECTOR_STATUS 命令中使用。 请参阅表 4-42,偏移量 16。
UCSI_USB_OPERATION_MODE

在 SET_UOR 命令中使用。 请参阅表 4-18,偏移量 23。
UCSI_USB_OPERATION_ROLE

在 SET_UOR 命令中使用。 请参阅表 4-20,偏移量 23
UCX_CONTROLLER_ENDPOINT_CHARACTERISTIC_PRIORITY

指示终结点的优先级。
UCX_CONTROLLER_PARENT_BUS_TYPE

UCX_CONTROLLER_PARENT_BUS_TYPE枚举定义父总线类型。
UCX_CONTROLLER_STATE

此枚举提供值,用于在重置后指定 UCX 控制器状态。
UCX_ENDPOINT_CHARACTERISTIC_TYPE

定义指示终结点特征类型的值。
UCX_USBDEVICE_CHARACTERISTIC_TYPE

定义指示设备特征类型的值。
UCX_USBDEVICE_RECOVERY_ACTION

定义 FLDR 和 PLDR 触发器重置的值。
UDECX_ENDPOINT_TYPE

定义虚拟 USB 设备支持的终结点类型的值。
UDECX_ENDPOINTS_CONFIGURE_TYPE

定义终结点配置选项的值。
UDECX_USB_DEVICE_FUNCTION_POWER

定义虚拟 USB 3.0 设备的函数唤醒功能的值。
UDECX_USB_DEVICE_SPEED

定义 USB 设备速度的值。
UDECX_USB_DEVICE_WAKE_SETTING

定义虚拟 USB 设备的远程唤醒功能的值。
UDECX_WDF_DEVICE_RESET_ACTION

定义指示模拟 USB 主机控制器支持的重置操作类型的值。
UDECX_WDF_DEVICE_RESET_TYPE

定义指示 UDE 设备的重置类型的值。
UFX_CLASS_FUNCTIONS

详细了解:_UFX_CLASS_FUNCTIONS枚举
URS_HARDWARE_EVENT

定义 USB 双角色控制器的客户端驱动程序可以报告的硬件事件的值。
URS_HOST_INTERFACE_TYPE

定义各种类型的 USB 主机控制器的值。
URS_ROLE

定义 USB 双角色控制器支持的角色的值。
USB_CONNECTION_STATUS

USB_CONNECTION_STATUS枚举器指示与 USB 集线器端口上的设备的连接状态。
USB_CONTROLLER_FLAVOR

USB_CONTROLLER_FLAVOR枚举指定 USB 主机控制器的类型。
USB_DEVICE_SPEED

USB_DEVICE_SPEED 枚举定义 USB 设备速度的常量。
USB_HUB_NODE

USB_HUB_NODE枚举器指示设备是中心设备还是复合设备。
USB_HUB_TYPE

USB_HUB_TYPE 枚举定义指示 USB 集线器类型的常量。 中心类型由IOCTL_USB_GET_HUB_INFORMATION_EX I/O 控制请求检索。
USB_NOTIFICATION_TYPE

详细了解:_USB_NOTIFICATION_TYPE枚举
USBC_CHARGING_STATE

了解USBC_CHARGING_STATE如何定义 Type-C 连接器的充电状态。
USBC_CURRENT

了解 USBC_CURRENT 如何根据 Type-C 规范中的定义定义不同的 Type-C 当前级别。
USBC_DATA_ROLE

定义 USB 类型 C 连接设备的数据角色。
USBC_PARTNER

定义 USB Type-C 连接器上检测到的连接器伙伴类型的值。
USBC_PD_AUGMENTED_POWER_DATA_OBJECT_TYPE

了解USBC_PD_AUGMENTED_POWER_DATA_OBJECT_TYPE如何 (APDO) 类型定义增强型电源数据对象。
USBC_PD_CONN_STATE

了解 USBC_PD_CONN_STATE 如何定义电源 (PD) Type-C 端口的协商状态。
USBC_PD_POWER_DATA_OBJECT_TYPE

了解USBC_PD_POWER_DATA_OBJECT_TYPE如何 (PDO) 类型定义电源数据对象。
USBC_POWER_ROLE

了解 USBC_POWER_ROLE 如何定义 USB Type-C 连接的设备的电源角色。
USBC_TYPEC_OPERATING_MODE

了解 USBC_TYPEC_OPERATING_MODE 如何定义 USB Type-C 连接器的操作模式。
USBC_UCSI_SET_POWER_LEVEL_C_CURRENT

定义当前电源操作模式的值。
USBD_ENDPOINT_OFFLOAD_MODE

定义 USB 设备或主机控制器中终结点卸载选项的值。
USBD_PIPE_TYPE

USBD_PIPE_TYPE枚举器指示管道的类型。
USBFN_ACTION

定义当客户端驱动程序调用 UfxDevicePortDetectCompleteEx 函数时 UFX 应采取的特殊操作。
USBFN_ATTACH_ACTION

定义设备连接到 USB 端口时通用串行总线 (USB) 函数堆栈执行的操作。
USBFN_BUS_SPEED

USBFN_BUS_SPEED枚举定义可能的总线速度。
USBFN_DEVICE_STATE

定义设备/控制器 (USB) 设备状态的通用串行总线。 这些状态对应于 USB 2.0 规范第 9.1 节中定义的 USB 设备状态。
USBFN_DIRECTION

定义 USB 数据传输方向类型。
USBFN_EVENT

定义发送到类驱动程序的通知。
USBFN_PORT_TYPE

定义客户端驱动程序在端口检测期间可能返回的端口类型。
USBPM_ACCESS_TYPE

定义用于调用 Policy Manager 函数的访问类型。
USBPM_ASSIGN_POWER_LEVEL_PARAMS_FORMAT

定义 USBPM_ASSIGN_CONNECTOR_POWER_LEVEL_PARAMS中使用的格式值。
USBPM_EVENT_TYPE

定义事件类型的值。

函数

 
COMPOSITE_DEVICE_CAPABILITIES_INIT

COMPOSITE_DEVICE_CAPABILITIES_INIT 宏初始化COMPOSITE_DEVICE_CAPABILITIES结构。
EVT_UCM_CONNECTOR_SET_DATA_ROLE

客户端驱动程序实现的 EVT_UCM_CONNECTOR_SET_DATA_ROLE 事件回调函数,该函数在附加到合作伙伴连接器时将连接器的数据角色交换为指定角色。
EVT_UCM_CONNECTOR_SET_POWER_ROLE

客户端驱动程序实现的 EVT_UCM_CONNECTOR_SET_POWER_ROLE 事件回调函数,该函数在附加到合作伙伴连接器时将连接器的电源角色设置为指定角色。
EVT_UCX_CONTROLLER_GET_CURRENT_FRAMENUMBER

UCX 调用以检索当前 32 位帧号的客户端驱动程序实现。
EVT_UCX_CONTROLLER_GET_FRAME_NUMBER_AND_QPC_FOR_TIME_SYNC

UCX 调用此回调以检索系统查询性能计数器 (QPC) 与帧和微帧同步的值。
EVT_UCX_CONTROLLER_GET_TRANSPORT_CHARACTERISTICS

UCX 调用此回调以检索主机控制器特征。
EVT_UCX_CONTROLLER_QUERY_USB_CAPABILITY

客户端驱动程序的实现,用于确定控制器是否支持特定功能。
EVT_UCX_CONTROLLER_RESET

UCX 调用以重置控制器的客户端驱动程序实现。
EVT_UCX_CONTROLLER_SET_TRANSPORT_CHARACTERISTICS_CHANGE_NOTIFICATION

UCX 调用此回调函数以指定其在传输特征中的首选项,客户端驱动程序必须在发生更改时发送通知。
EVT_UCX_CONTROLLER_START_TRACKING_FOR_TIME_SYNC

UCX 将此回调函数调用控制器中的开始时间跟踪功能。
EVT_UCX_CONTROLLER_STOP_TRACKING_FOR_TIME_SYNC

UCX 将此回调函数调用控制器中的停止时间跟踪功能。
EVT_UCX_CONTROLLER_USBDEVICE_ADD

检测到新的 USB 设备时 UCX 调用的客户端驱动程序实现。
EVT_UCX_DEFAULT_ENDPOINT_UPDATE

UCX 使用有关默认终结点的信息调用的客户端驱动程序实现。
EVT_UCX_ENDPOINT_ABORT

客户端驱动程序的实现,UCX 调用中止与终结点关联的队列。
EVT_UCX_ENDPOINT_GET_ISOCH_TRANSFER_PATH_DELAYS

UCX 调用此回调函数以获取有关常时等量终结点的传输路径延迟的信息。
EVT_UCX_ENDPOINT_OK_TO_CANCEL_TRANSFERS

UCX 调用客户端驱动程序的实现,以通知控制器驱动程序它可以在终结点上完成取消的传输。
EVT_UCX_ENDPOINT_PURGE

客户端驱动程序的实现,用于完成终结点上所有未完成的 I/O 请求。
EVT_UCX_ENDPOINT_RESET

客户端驱动程序的实现,UCX 调用该实现来重置终结点的控制器编程。
EVT_UCX_ENDPOINT_SET_CHARACTERISTIC

UCX 调用此回调函数来设置终结点上的优先级。
EVT_UCX_ENDPOINT_START

UCX 调用以启动与终结点关联的队列的客户端驱动程序实现。
EVT_UCX_ENDPOINT_STATIC_STREAMS_ADD

UCX 调用以创建静态流的客户端驱动程序实现。
EVT_UCX_ENDPOINT_STATIC_STREAMS_DISABLE

客户端驱动程序的实现,UCX 调用释放终结点的所有流的控制器资源。
EVT_UCX_ENDPOINT_STATIC_STREAMS_ENABLE

UCX 调用以启用静态流的客户端驱动程序实现。
EVT_UCX_ROOTHUB_CONTROL_URB

客户端驱动程序使用此回调类型来实现 UCX 在 USB 集线器上接收功能控制请求时调用的处理程序。
EVT_UCX_ROOTHUB_GET_20PORT_INFO

客户端驱动程序的实现,UCX 在收到有关根集线器上的 USB 2.0 端口信息的请求时调用。
EVT_UCX_ROOTHUB_GET_30PORT_INFO

客户端驱动程序的实现,UCX 在收到有关根集线器上的 USB 3.0 端口信息的请求时调用。
EVT_UCX_ROOTHUB_GET_INFO

客户端驱动程序的实现,UCX 在收到有关根中心的信息的请求时调用。
EVT_UCX_ROOTHUB_INTERRUPT_TX

客户端驱动程序的实现,UCX 在收到有关已更改端口的信息的请求时调用。
EVT_UCX_USBDEVICE_ADDRESS

UCX 调用客户端驱动程序的实现来寻址 USB 设备。
EVT_UCX_USBDEVICE_DEFAULT_ENDPOINT_ADD

客户端驱动程序的实现,UCX 调用为 USB 设备添加新的默认终结点。
EVT_UCX_USBDEVICE_DISABLE

UCX 调用的客户端驱动程序实现,用于释放与设备及其默认终结点关联的控制器资源。
EVT_UCX_USBDEVICE_ENABLE

客户端驱动程序的实现,UCX 调用将有关设备及其默认控制终结点的信息编程到控制器中。
EVT_UCX_USBDEVICE_ENDPOINT_ADD

客户端驱动程序的实现,UCX 调用为 USB 设备添加新终结点。
EVT_UCX_USBDEVICE_ENDPOINTS_CONFIGURE

UCX 调用的客户端驱动程序实现,用于在控制器中配置终结点。
EVT_UCX_USBDEVICE_GET_CHARACTERISTIC

UCX 调用此回调以检索设备特征。
EVT_UCX_USBDEVICE_HUB_INFO

UCX 调用以检索中心属性的客户端驱动程序实现。
EVT_UCX_USBDEVICE_RESET

重置设备所连接到的端口时,UCX 调用的客户端驱动程序实现。
EVT_UCX_USBDEVICE_RESUME

UCX 调用此回调函数以将设备从挂起状态恢复。
EVT_UCX_USBDEVICE_SUSPEND

UCX 调用此回调函数以发送设备挂起状态。
EVT_UCX_USBDEVICE_UPDATE

UCX 调用以更新设备属性的客户端驱动程序实现。
EVT_UDECX_USB_DEVICE_D0_ENTRY

USB 设备仿真类扩展 (UdeCx) 获取将虚拟 USB 设备从低功耗状态调出工作状态的请求时调用此回调函数。
EVT_UDECX_USB_DEVICE_D0_EXIT

USB 设备仿真类扩展 (UdeCx) 在收到将虚拟 USB 设备发送到低功耗状态的请求时调用此回调函数。
EVT_UDECX_USB_DEVICE_DEFAULT_ENDPOINT_ADD

USB 设备仿真类扩展 (UdeCx) 调用此回调函数,以请求客户端驱动程序在虚拟 USB 设备上创建默认控制终结点。
EVT_UDECX_USB_DEVICE_ENDPOINT_ADD

USB 设备仿真类扩展 (UdeCx) 调用此回调函数,以请求客户端驱动程序在虚拟 USB 设备上创建动态终结点。
EVT_UDECX_USB_DEVICE_ENDPOINTS_CONFIGURE

USB 设备仿真类扩展 (UdeCx) 调用此回调函数,通过选择备用设置、禁用当前终结点或添加动态终结点来更改配置。
EVT_UDECX_USB_DEVICE_SET_FUNCTION_SUSPEND_AND_WAKE

USB 设备仿真类扩展 (UdeCx) 在收到更改虚拟 USB 3.0 设备指定接口的函数状态的请求时调用此回调函数。
EVT_UDECX_USB_ENDPOINT_PURGE

USB 设备仿真类扩展 (UdeCx) 调用此回调函数,以停止对终结点队列的 I/O 请求排队并取消未处理的请求。
EVT_UDECX_USB_ENDPOINT_RESET

UdeCx (USB 设备仿真类扩展) 调用此回调函数来重置虚拟 USB 设备的终结点。
EVT_UDECX_USB_ENDPOINT_START

USB 设备仿真类扩展 (UdeCx) 调用此回调函数,以开始处理虚拟 USB 设备的指定终结点上的 I/O 请求。
EVT_UDECX_WDF_DEVICE_QUERY_USB_CAPABILITY

UDE 客户端驱动程序的实现,用于确定模拟 USB 主机控制器支持的功能。
EVT_UDECX_WDF_DEVICE_RESET

UDE 客户端驱动程序的实现,用于重置模拟主机控制器或附加到它的设备。
EVT_UFX_DEVICE_ADDRESSED

客户端驱动程序的实现,用于在函数控制器上分配地址。
EVT_UFX_DEVICE_CONTROLLER_RESET

客户端驱动程序的实现,用于将函数控制器重置为其初始状态。
EVT_UFX_DEVICE_DEFAULT_ENDPOINT_ADD

用于创建默认控制终结点的客户端驱动程序实现。
EVT_UFX_DEVICE_ENDPOINT_ADD

用于创建默认终结点对象的客户端驱动程序实现。
EVT_UFX_DEVICE_HOST_CONNECT

客户端驱动程序的实现,用于启动与主机的连接。
EVT_UFX_DEVICE_HOST_DISCONNECT

客户端驱动程序的实现,用于禁用函数控制器与主机的通信。
EVT_UFX_DEVICE_PORT_CHANGE

客户端驱动程序的实现,用于更新 USB 设备连接到的新端口的类型。
EVT_UFX_DEVICE_PORT_DETECT

客户端驱动程序用于启动端口检测的实现。
EVT_UFX_DEVICE_PROPRIETARY_CHARGER_DETECT

客户端驱动程序的实现,用于启动专有充电器检测。
EVT_UFX_DEVICE_PROPRIETARY_CHARGER_RESET

用于重置专有充电器的客户端驱动程序实现。
EVT_UFX_DEVICE_PROPRIETARY_CHARGER_SET_PROPERTY

客户端驱动程序的实现,用于设置充电器信息,用于启用通过 USB 充电。
EVT_UFX_DEVICE_REMOTE_WAKEUP_SIGNAL

客户端驱动程序的实现,用于在函数控制器上启动远程唤醒。
EVT_UFX_DEVICE_SUPER_SPEED_POWER_FEATURE

客户端驱动程序的实现,用于设置或清除函数控制器上的指定电源功能。
EVT_UFX_DEVICE_TEST_MODE_SET

客户端驱动程序的实现,用于设置函数控制器的测试模式。
EVT_UFX_DEVICE_TESTHOOK

不支持此 IOCTL 代码。
EVT_UFX_DEVICE_USB_STATE_CHANGE

客户端驱动程序的实现,用于更新 USB 设备的状态。
EVT_URS_DEVICE_FILTER_RESOURCE_REQUIREMENTS

USB 双角色类扩展调用此回调,以允许客户端驱动程序将资源从 resource-requirements-list 对象插入到将在每个角色生存期内使用的资源列表。
EVT_URS_SET_ROLE

当 URS 类扩展需要客户端驱动程序更改控制器的角色时,它会调用此事件回调。
EVT_USBPM_EVENT_CALLBACK

发送有关中心到达/删除和连接器状态更改的通知。
GET_ISO_URB_SIZE

GET_ISO_URB_SIZE宏返回保存常量传输请求所需的字节数。
PUSB_BUSIFFN_ENUM_LOG_ENTRY

不支持此回调函数。 EnumLogEntry 例程生成日志条目。
PUSB_BUSIFFN_GETUSBDI_VERSION

GetUSBDIVersion 例程返回定义接口的 USB 接口版本号和 USB 规范的版本号,以及有关主机控制器功能的信息。
PUSB_BUSIFFN_IS_DEVICE_HIGH_SPEED

如果设备高速运行,USB_BUSIFFN_IS_DEVICE_HIGH_SPEED例程将返回 TRUE。
PUSB_BUSIFFN_QUERY_BUS_INFORMATION

QueryBusInformation 例程获取有关总线的信息。
PUSB_BUSIFFN_QUERY_BUS_TIME

QueryBusTime 函数获取当前的 32 位 USB 帧编号。
PUSB_BUSIFFN_QUERY_BUS_TIME_EX

QueryBusTimeEx 例程获取当前的 32 位 USB 微帧编号。
PUSB_BUSIFFN_QUERY_CONTROLLER_TYPE

QueryControllerType 例程获取有关 USB 设备所连接到的 USB 主机控制器的信息。
PUSB_BUSIFFN_SUBMIT_ISO_OUT_URB

不支持此回调函数。SubmitIsoOutUrb 函数将 USB 请求块 (URB) 直接提交到总线驱动程序,而无需分配 IRP。
UCM_CONNECTOR_CONFIG_INIT

初始化UCM_CONNECTOR_CONFIG结构。
UCM_CONNECTOR_PD_CONFIG_INIT

初始化UCM_CONNECTOR_PD_CONFIG结构。
UCM_CONNECTOR_PD_CONN_STATE_CHANGED_PARAMS_INIT

初始化UCM_CONNECTOR_PD_CONN_STATE_CHANGED_PARAMS结构。
UCM_CONNECTOR_TYPEC_ATTACH_PARAMS_INIT

初始化UCM_CONNECTOR_TYPEC_ATTACH_PARAMS结构。
UCM_CONNECTOR_TYPEC_CONFIG_INIT

初始化UCM_CONNECTOR_TYPEC_CONFIG结构。
UCM_MANAGER_CONFIG_INIT

初始化UCM_MANAGER_CONFIG结构。
UCM_PD_POWER_DATA_OBJECT_GET_TYPE

从UCM_PD_POWER_DATA_OBJECT结构检索 Power Data 对象的类型。
UCM_PD_POWER_DATA_OBJECT_INIT_BATTERY

将UCM_PD_POWER_DATA_OBJECT结构初始化为电池电源类型 Power Data 对象。
UCM_PD_POWER_DATA_OBJECT_INIT_FIXED

将 初始化为固定电源类型 Power Data 对象的UCM_PD_POWER_DATA_OBJECT。
UCM_PD_POWER_DATA_OBJECT_INIT_ULONG

通过解释 Power Data Object 值初始化UCM_PD_POWER_DATA_OBJECT结构,并正确设置每个字段。
UCM_PD_POWER_DATA_OBJECT_INIT_VARIABLE_NON_BATTERY

将UCM_PD_POWER_DATA_OBJECT结构初始化为可变电源非电池类型电源数据对象。
UCM_PD_REQUEST_DATA_OBJECT_INIT_ULONG

通过解释请求数据对象值初始化UCM_PD_REQUEST_DATA_OBJECT结构,并正确设置每个字段。
UcmConnectorChargingStateChanged

将 USB 连接器管理器框架扩展 (UcmCx) 通知合作伙伴连接器的更新充电状态。
UcmConnectorCreate

创建连接器对象。
UcmConnectorDataDirectionChanged

通知 USB 连接器管理器框架扩展 (UcmCx) 新的数据角色更改数据角色。
UcmConnectorPdConnectionStateChanged

通知 USB 连接器管理器框架扩展 (UcmCx) 当前协商的 PD 合同的连接功能 ((如果有) )。
UcmConnectorPdPartnerSourceCaps

通知 USB 连接器管理器框架扩展 (UcmCx) 合作伙伴连接器的电源功能。
UcmConnectorPdSourceCaps

使用连接器的电源功能通知 USB 连接器管理器框架扩展 (UcmCx) 。
UcmConnectorPowerDirectionChanged

通知 USB 连接器管理器框架扩展 (UcmCx) 合作伙伴连接器的新电源角色。
UcmConnectorTypeCAttach

连接合作伙伴连接器时,通知 USB 连接器管理器框架扩展 (UcmCx) 。
UcmConnectorTypeCCurrentAdChanged

当指定的连接器更改当前播发时, (UcmCx) 通知 USB 连接器管理器框架扩展。 连接器在 DFP/Source) 时 (更改它,或者合作伙伴在为 UFP/Sink) 时 (更改它。
UcmConnectorTypeCDetach

当合作伙伴连接器从指定的 Type-C 连接器分离时,通知 USB 连接器管理器框架扩展 (UcmCx) 。
UcmInitializeDevice

初始化 UcmCx) (USB 连接器管理器框架扩展。
UCMTCPCI_DEVICE_CONFIG_INIT

初始化UCMTCPCI_DEVICE_CONFIG结构。
UCMTCPCI_PORT_CONTROLLER_ALERT_DATA_INIT

初始化UCMTCPCI_PORT_CONTROLLER_ALERT_DATA结构。
UCMTCPCI_PORT_CONTROLLER_CAPABILITIES_INIT

初始化UCMTCPCI_PORT_CONTROLLER_CAPABILITIES结构。
UCMTCPCI_PORT_CONTROLLER_CONFIG_INIT

初始化UCMTCPCI_PORT_CONTROLLER_CONFIG结构。
UCMTCPCI_PORT_CONTROLLER_IDENTIFICATION_INIT

初始化UCMTCPCI_PORT_CONTROLLER_IDENTIFICATION结构。
UcmTcpciDeviceInitialize

初始化 USB Type-C 端口控制器接口框架扩展 (UcmTcpciCx) 。
UcmTcpciDeviceInitInitialize

当即插即用 (PnP) 管理器报告存在设备时,初始化设备初始化操作。
UcmTcpciPortControllerAlert

将端口控制器上收到的硬件警报的相关信息发送到 UcmTcpciCx。
UcmTcpciPortControllerCreate

创建要注册到 UcmTcpciCx 的端口控制器对象。
UcmTcpciPortControllerSetHardwareRequestQueue

分配一个框架队列对象,UcmTcpciCx 将端口控制器的硬件请求调度到该对象。
UcmTcpciPortControllerStart

向 UcmTcpciCx 类扩展指示客户端驱动程序现在已准备好为端口控制器的硬件请求提供服务。
UcmTcpciPortControllerStop

指示 UcmTcpciCx 类扩展停止向端口控制器对象发送硬件请求。
UCMUCSI_CONNECTOR_INFO_INIT

初始化UCMUCSI_CONNECTOR_INFO结构。
UCMUCSI_DEVICE_CONFIG_INIT

初始化 UCMUCSI_DEVICE_CONFIG 结构。
UCMUCSI_PPM_CONFIG_INIT

初始化UCMUCSI_PPM_CONFIG结构。
UcmUcsiConnectorCollectionAddConnector

将连接器添加到连接器集合对象。
UcmUcsiConnectorCollectionCreate

使用 UcmUcsiCx 创建连接器集合对象。
UcmUcsiDeviceInitialize

(UcmUcsiCx) 初始化 UCSI 扩展。
UcmUcsiDeviceInitInitialize

初始化框架提供的 WDFDEVICE_INIT
UcmUcsiPpmCreate

(PPM) 对象创建平台策略管理器。
UcmUcsiPpmNotification

通知 UcmUcsiCx 类扩展有关 UCSI 通知的信息。
UcmUcsiPpmSetUcsiCommandRequestQueue

提供用于将 UCSI 命令调度到客户端驱动程序的框架队列对象。
UcmUcsiPpmStart

指示类扩展开始向客户端驱动程序发送请求。
UcmUcsiPpmStop

指示类扩展停止向客户端驱动程序发送请求。
UCSI_CMD_SUCCEEDED

成功完成 UCSI 命令后,PPM 固件将填充客户端驱动程序提供的 CCI 数据结构。
UCX_CONTROLLER_CONFIG_SET_ACPI_INFO

使用 ACPI 作为父级的控制器的指定值初始化UCX_CONTROLLER_CONFIG结构。
UCX_CONTROLLER_CONFIG_SET_PCI_INFO

使用 PCI 作为父总线类型的控制器的指定值初始化UCX_CONTROLLER_CONFIG结构。
UCX_DEFAULT_ENDPOINT_EVENT_CALLBACKS_INIT

使用客户端驱动程序的回调函数初始化 UCX_DEFAULT_ENDPOINT_EVENT_CALLBACKS 结构。 客户端驱动程序在调用 UcxEndpointCreate 方法之前调用此函数,以创建终结点并将其回调函数注册到 UCX。
UCX_ENDPOINT_EVENT_CALLBACKS_INIT

使用客户端驱动程序的回调函数初始化 UCX_ENDPOINT_EVENT_CALLBACKS 结构。 客户端驱动程序在调用 UcxEndpointCreate 方法之前调用此函数,以创建终结点并将其回调函数注册到 UCX。
UCX_USBDEVICE_EVENT_CALLBACKS_INIT

使用指向客户端驱动程序回调函数的函数指针初始化 UCX_USBDEVICE_EVENT_CALLBACKS 结构。
UcxControllerCreate

创建主机控制器对象。
UcxControllerNeedsReset

通过将事件排队到控制器重置状态机中,启动非即插即用 (PnP) 控制器重置操作。
UcxControllerNotifyTransportCharacteristicsChange

通知 UCX 有关主机控制器的新端口更改事件。
UcxControllerResetComplete

通知 USB 主机控制器扩展 (UCX) 重置操作已竞争。
UcxControllerSetFailed

通知 USB 主控制器扩展 (UCX) 控制器遇到严重故障。
UcxControllerSetIdStrings

初始化控制器后,汇报控制器的标识符字符串。
UcxDefaultEndpointInitSetEventCallbacks

使用与默认终结点相关的客户端驱动程序的事件回调函数初始化UCXENDPOINT_INIT结构。
UcxEndpointAbortComplete

通知 UCX 已对指定的终结点对象完成传输中止操作。
UcxEndpointCreate

在指定的 USB 设备对象上创建终结点。
UcxEndpointGetStaticStreamsReferenced

返回指定终结点的引用静态流对象。
UcxEndpointInitSetEventCallbacks

使用与设备上的终结点相关的客户端驱动程序的事件回调函数初始化UCXENDPOINT_INIT结构。
UcxEndpointNeedToCancelTransfers

客户端驱动程序在取消网络上的传输之前调用此方法。
UcxEndpointNoPingResponseError

通知 UCX 有关指定终结点对象上传输的“无 Ping 响应”错误。
UcxEndpointPurgeComplete

通知 UCX 已对指定的终结点对象完成清除操作。
UcxEndpointSetWdfIoQueue

在指定的终结点对象上设置框架队列。
UcxInitializeDeviceInit

当即插即用 (PnP) 管理器报告存在设备时,UcxInitializeDeviceInit 初始化设备初始化操作。
UcxIoDeviceControl

允许 USB 主机控制器扩展 (UCX) 处理 I/O 控制代码 (IOCTL) 用户模式的请求。
UcxRootHubPortChanged

通知 UCX 主机控制器上的新端口更改事件。
UcxStaticStreamsCreate

创建静态流对象。
UcxStaticStreamsSetStreamInfo

为客户端驱动程序启用的每个流设置流信息。
UcxUsbDeviceCreate

在指定的控制器上创建 USB 设备对象。
UcxUsbDeviceInitSetEventCallbacks

使用客户端驱动程序的事件回调函数初始化 UCXUSBDEVICE_INIT 结构。
UcxUsbDeviceRemoteWakeNotification

通知 UCX 收到来自设备的远程唤醒信号。
UDECX_USB_DEVICE_CALLBACKS_INIT

在 UdecxUsbDeviceCreate 调用之前初始化 UDECX_USB_DEVICE_STATE_CHANGE_CALLBACKS 结构。
UDECX_USB_DEVICE_PLUG_IN_OPTIONS_INIT

初始化UDECX_USB_DEVICE_PLUG_IN_OPTIONS结构。
UDECX_USB_ENDPOINT_CALLBACKS_INIT

在 UdecxUsbEndpointCreate 调用之前初始化 UDECX_USB_ENDPOINT_CALLBACKS 结构。
UDECX_WDF_DEVICE_CONFIG_INIT

初始化UDECX_WDF_DEVICE_CONFIG 结构。
UdecxInitializeWdfDeviceInit

当即插即用 (PnP) 管理器报告存在设备时,UdecxInitializeWdfDeviceInit 初始化设备初始化操作。
UdecxUrbComplete

使用特定于 USB 的完成状态代码完成 URB 请求。
UdecxUrbCompleteWithNtStatus

使用 NTSTATUS 代码完成 URB 请求。
UdecxUrbRetrieveBuffer

从发送到终结点队列的指定框架请求对象检索 URB 的传输缓冲区。
UdecxUrbRetrieveControlSetupPacket

从指定的框架请求对象检索 USB 控制设置数据包。
UdecxUrbSetBytesCompleted

设置为框架请求对象中包含的 URB 传输的字节数。
UdecxUsbDeviceCreate

创建 USB 设备仿真 (UDE) 设备对象。
UdecxUsbDeviceInitAddDescriptor

将 USB 描述符添加到用于创建虚拟 USB 设备的初始化参数。
UdecxUsbDeviceInitAddDescriptorWithIndex

了解 UdecxUsbDeviceInitAddDescriptorWithIndex 函数如何将 USB 描述符添加到用于创建虚拟 USB 设备的初始化参数。
UdecxUsbDeviceInitAddStringDescriptor

将 USB 字符串描述符添加到用于创建虚拟 USB 设备的初始化参数。
UdecxUsbDeviceInitAddStringDescriptorRaw

了解此方法如何将 USB 字符串描述符添加到用于创建虚拟 USB 设备的初始化参数。
UdecxUsbDeviceInitAllocate

为用于初始化虚拟 USB 设备的UDECXUSBDEVICE_INIT结构分配内存。
UdecxUsbDeviceInitFree

释放由 UdecxUsbDeviceInitAllocate 调用分配的资源。
UdecxUsbDeviceInitSetEndpointsType

指示客户端驱动程序用于创建虚拟 USB 设备的初始化参数中 (简单或动态) 终结点的类型。
UdecxUsbDeviceInitSetSpeed

设置要创建的虚拟 USB 设备的 USB 速度。
UdecxUsbDeviceInitSetStateChangeCallbacks

使用指向回调函数的指针初始化 WDF 分配的结构。
UdecxUsbDeviceLinkPowerEntryComplete

完成使设备退出低功耗状态的异步请求。
UdecxUsbDeviceLinkPowerExitComplete

完成将设备发送到低功耗状态的异步请求。
UdecxUsbDevicePlugIn

通知 USB 设备仿真类扩展 (UdeCx) USB 设备已插入指定的端口。
UdecxUsbDevicePlugOutAndDelete

断开虚拟 USB 设备的连接。
UdecxUsbDeviceSetFunctionSuspendAndWakeComplete

完成一个异步请求,用于更改虚拟 USB 3.0 设备的特定函数的电源状态。
UdecxUsbDeviceSignalFunctionWake

从低功耗状态启动指定函数的唤醒。 这适用于虚拟 USB 3.0 设备。
UdecxUsbDeviceSignalWake

为虚拟 USB 2.0 设备从低链路电源状态启动唤醒。
UdecxUsbEndpointCreate

创建 UDE 终结点对象。
UdecxUsbEndpointInitFree

释放由 UdecxUsbSimpleEndpointInitAllocate 调用分配的资源。
UdecxUsbEndpointInitSetCallbacks

在要创建的简单终结点的初始化参数中设置指向 UDE 客户端驱动程序实现的回调函数的指针。
UdecxUsbEndpointInitSetEndpointAddress

在要创建的简单终结点的初始化参数中设置终结点的地址。
UdecxUsbEndpointPurgeComplete

完成异步请求,以取消排队到指定终结点的所有 I/O 请求。
UdecxUsbEndpointSetWdfIoQueue

设置具有 UDE 终结点的框架队列对象。
UdecxUsbSimpleEndpointInitAllocate

为初始化结构分配内存,该结构用于为指定的虚拟 USB 设备创建简单终结点。
UdecxWdfDeviceAddUsbDeviceEmulation

初始化框架设备对象,以支持与主机控制器和连接到控制器的虚拟 USB 设备相关的操作。
UdecxWdfDeviceNeedsReset

通知 USB 设备仿真类扩展 (UdeCx) 设备需要重置操作。
UdecxWdfDeviceResetComplete

通知 USB 设备仿真类扩展 (UdeCx) 指定控制器上的重置操作已竞争。
UdecxWdfDeviceTryHandleUserIoctl

尝试处理用户模式软件发送的 IOCTL 请求。
UFX_DEVICE_CALLBACKS_INIT

UFX_DEVICE_CALLBACKS_INIT宏初始化 UFX_DEVICE_CALLBACKS 结构。
UFX_DEVICE_CAPABILITIES_INIT

UFX_DEVICE_CAPABILITIES_INIT 宏初始化 UFX_DEVICE_CAPABILITIES 结构。
UFX_ENDPOINT_CALLBACKS_INIT

UFX_ENDPOINT_CALLBACKS_INIT宏初始化 UFX_ENDPOINT_CALLBACKS 结构。
UFX_PROPRIETARY_CHARGER_ABORT_OPERATION

用于中止充电器操作的筛选器驱动程序实现。
UFX_PROPRIETARY_CHARGER_DETECT

筛选器驱动程序的实现,用于检测是否已连接充电器并获取有关充电器的详细信息。
UFX_PROPRIETARY_CHARGER_RESET_OPERATION

用于重置充电器操作的筛选器驱动程序的实现。
UFX_PROPRIETARY_CHARGER_SET_PROPERTY

筛选器驱动程序的实现,用于在充电器上设置可配置属性。
UfxDeviceCreate

创建 UFX 设备对象,注册事件回调例程,并指定特定于控制器的功能。
UfxDeviceEventComplete

通知 UFX 客户端驱动程序已完成处理 UFX 回调函数。
UfxDeviceIoControl

将非内部 IOCTL 从用户模式传递到 UFX。
UfxDeviceIoInternalControl

将内核模式 IOCTL 传递到 UFX。
UfxDeviceNotifyAttach

通知 UFX 设备的 USB 电缆已连接。
UfxDeviceNotifyDetach

通知 UFX 设备的 USB 电缆已分离。
UfxDeviceNotifyFinalExit

通知 UFX 设备已分离。
UfxDeviceNotifyHardwareFailure

通知 UFX 控制器中出现不可恢复的硬件故障。
UfxDeviceNotifyHardwareReady

通知 UFX 硬件已准备就绪。
UfxDeviceNotifyReset

通知 UFX 有关 USB 总线重置事件。
UfxDeviceNotifyResume

通知 UFX 有关 USB 总线恢复事件。
UfxDeviceNotifySuspend

通知 UFX 有关 USB 总线挂起事件。
UfxDevicePortDetectComplete

通知 UFX 检测到的端口类型。
UfxDevicePortDetectCompleteEx

通知 UFX 有关检测到的端口类型,并选择性地请求操作。
UfxDeviceProprietaryChargerDetectComplete

通知 UFX 检测到的专有端口/充电器类型。
UfxEndpointCreate

创建终结点对象。
UfxEndpointGetCommandQueue

返回之前由 UfxEndpointCreate 创建的命令队列。
UfxEndpointGetTransferQueue

返回以前由 UfxEndpointCreate 创建的传输队列。
UfxEndpointInitSetEventCallbacks

初始化UFXENDPOINT_INIT结构。
UfxEndpointNotifySetup

当客户端驱动程序从主机收到设置数据包时,通知 UFX。
UfxFdoInit

初始化客户端驱动程序随后在调用 WdfDeviceCreate 时提供的 WDFDEVICE_INIT 结构。
URS_CONFIG_INIT

初始化URS_CONFIG 结构。
UrsDeviceInitialize

初始化框架设备对象以支持与 USB 双角色控制器相关的操作,并将相关事件回调函数注册到 USB 双角色控制器类扩展。
UrsDeviceInitInitialize

了解当即插即用 (PnP) 管理器报告存在设备时,此函数如何初始化设备初始化操作。
UrsIoResourceListAppendDescriptor

将指定的资源描述符追加到维护主机或函数角色的资源描述符的指定 I/O 资源列表对象。
UrsReportHardwareEvent

通知 USB 双角色类扩展有关新硬件事件的信息。
UrsSetHardwareEventSupport

指示客户端驱动程序对报告新硬件事件的支持。
UrsSetPoHandle

将客户端驱动程序注册到电源管理框架 (PoFx) 。
UsbBuildGetStatusRequest

UsbBuildGetStatusRequest 宏格式化 URB,以从 USB 设备上的设备、接口、终结点或其他设备定义的目标获取状态。
UsbBuildInterruptOrBulkTransferRequest

UsbBuildInterruptOrBulkTransferRequest 宏格式化 URB 以在批量管道上发送或接收数据,或从中断管道接收数据。
UsbBuildOpenStaticStreamsRequest

UsbBuildOpenStaticStreamsRequest 内联函数为开放流请求设置 URB 结构的格式。 请求将打开与指定批量终结点关联的流。
USBC_PD_POWER_DATA_OBJECT_GET_TYPE

检索 PDO) (Power Data 对象的类型。
USBC_START_DEVICE_CALLBACK

USBC_START_DEVICE_CALLBACK例程允许 USB 客户端驱动程序提供设备上接口集合的自定义定义。
USBD_AssignUrbToIoStackLocation

客户端驱动程序调用USBD_AssignUrbToIoStackLocation例程,以将 URB 与 IRP 的下一个堆栈位置相关联。
USBD_BuildRegisterCompositeDevice

USBD_BuildRegisterCompositeDevice例程由 USB 多功能设备的驱动程序 (复合驱动程序) 调用,以使用向 USB 驱动程序堆栈注册驱动程序所需的信息初始化REGISTER_COMPOSITE_DEVICE结构。
USBD_CalculateUsbBandwidth

USBD_CalculateUsbBandwidth例程已在 Windows XP 及更高版本的操作系统中弃用。 请勿使用。
USBD_CloseHandle

USBD_CLOSEHANDLE例程由 USB 客户端驱动程序调用,以关闭 USBD 句柄并释放与驱动程序注册关联的所有资源。
USBD_CreateConfigurationRequest

USBD_CreateConfigurationRequest例程已弃用。 请改用 USBD_CreateConfigurationRequestEx。
USBD_CreateConfigurationRequestEx

USBD_CreateConfigurationRequestEx例程分配 URB 并设置其格式,以选择 USB 设备的配置。USBD_CreateConfigurationRequestEx替换USBD_CreateConfigurationRequest。
USBD_CreateHandle

USBD_CreateHandle例程由 WDM USB 客户端驱动程序调用,以获取 USBD 句柄。 例程将客户端驱动程序注册到基础 USB 驱动程序堆栈。
USBD_GetInterfaceLength

USBD_GetInterfaceLength例程获取给定接口描述符的长度,包括接口中包含的所有终结点描述符的长度。
USBD_GetPdoRegistryParameter

USBD_GetPdoRegistryParameter例程从 USB 设备的硬件注册表中的指定键检索值。
USBD_GetUSBDIVersion

USBD_GetUSBDIVersion例程返回有关控制客户端 USB 设备的主机控制器驱动程序 (HCD) 的版本信息。注意 USBD_IsInterfaceVersionSupported 替换USBD_GetUSBDIVersion例程
USBD_IsInterfaceVersionSupported

USBD_ISINTERFACEVERSIONSUPPORTED例程由 USB 客户端驱动程序调用,以检查基础 USB 驱动程序堆栈是否支持特定的 USBD 接口版本。
USBD_IsochUrbAllocate

USBD_IsochUrbAllocate例程为常时等量传输请求分配 URB 结构并设置其格式。
USBD_ParseConfigurationDescriptor

USBD_ParseConfigurationDescriptor例程已弃用。 请改用 USBD_ParseConfigurationDescriptorEx。
USBD_ParseConfigurationDescriptorEx

USBD_ParseConfigurationDescriptorEx例程搜索给定的配置描述符,并返回指向与给定搜索条件匹配的接口的指针。
USBD_ParseDescriptors

USBD_ParseDescriptors例程搜索给定的配置描述符,并返回指向与搜索条件匹配的第一个描述符的指针。
USBD_QueryBusTime

USBD_QueryBusTime例程已在 Windows XP 及更高版本的操作系统中弃用。 请勿使用。
USBD_QueryUsbCapability

USBD_QueryUsbCapability例程由 WDM 客户端驱动程序调用,以确定基础 USB 驱动程序堆栈和主机控制器硬件是否支持特定功能。
USBD_RegisterHcFilter

USBD_RegisterHcFilter例程已在 Windows XP 和更高版本的操作系统中弃用。
USBD_SelectConfigUrbAllocateAndBuild

USBD_SelectConfigUrbAllocateAndBuild例程分配和格式化选择 USB 设备配置所需的 URB 结构。
USBD_SelectInterfaceUrbAllocateAndBuild

USBD_SelectInterfaceUrbAllocateAndBuild例程分配和格式化请求选择接口或更改其备用设置所需的 URB 结构。
USBD_UrbAllocate

USBD_UrbAllocate例程分配 USB 请求块 (URB) 。
USBD_UrbFree

USBD_UrbFree例程释放由USBD_UrbAllocate、USBD_IsochUrbAllocate、USBD_SelectConfigUrbAllocateAndBuild或USBD_SelectInterfaceUrbAllocateAndBuild分配的 URB。
USBD_ValidateConfigurationDescriptor

USBD_ValidateConfigurationDescriptor例程验证设备在响应配置描述符请求时返回的所有描述符。
USBFN_GET_ATTACH_ACTION

将充电器连接到端口时调用的筛选器驱动程序的实现。
USBFN_GET_ATTACH_ACTION_ABORT

筛选器驱动程序的实现,用于中止附加检测操作。
USBFN_SET_DEVICE_STATE

筛选器驱动程序的实现,用于设置设备状态和运行总线速度。
USBPM_ASSIGN_CONNECTOR_POWER_LEVEL_PARAMS_INIT

初始化 USBPM_ASSIGN_CONNECTOR_POWER_LEVEL_PARAMS 结构。
UsbPm_AssignConnectorPowerLevel

尝试使用指定的电压/电流/功率值重新协商 PD 协定。
USBPM_CLIENT_CONFIG_EXTRA_INFO_INIT

初始化 USBPM_CLIENT_CONFIG_EXTRA_INFO 结构。
USBPM_CLIENT_CONFIG_INIT

初始化 USBPM_CLIENT_CONFIG 结构。
USBPM_CONNECTOR_PROPERTIES_INIT

初始化 USBPM_CONNECTOR_PROPERTIES 结构。
USBPM_CONNECTOR_STATE_INIT

初始化 USBPM_CONNECTOR_STATE_INIT 结构。
UsbPm_Deregister

向策略管理器取消注册客户端驱动程序。
USBPM_HUB_CONNECTOR_HANDLES_INIT

初始化 USBPM_HUB_CONNECTOR_HANDLES 结构。
USBPM_HUB_PROPERTIES_INIT

初始化 [USBPM_HUB_PROPERTIES] 结构。
UsbPm_Register

向策略管理器注册客户端驱动程序,以报告中心到达/删除和连接器状态更改。
UsbPm_RetrieveConnectorProperties

检索连接器的属性。 属性是静态信息,在连接器的生命周期内不会更改。
UsbPm_RetrieveConnectorState

检索连接器的当前状态。 与连接器属性不同,状态信息是动态的,可在运行时更改。
UsbPm_RetrieveHubConnectorHandles

检索中心的所有连接器的连接器句柄。
UsbPm_RetrieveHubProperties

检索中心的属性。 属性是中心生命周期内不会更改的静态信息。

结构

 
_URB_BULK_OR_INTERRUPT_TRANSFER

USB 客户端驱动程序使用_URB_BULK_OR_INTERRUPT_TRANSFER结构在批量管道或中断管道上发送或接收数据。
_URB_CONTROL_DESCRIPTOR_REQUEST

USB 客户端驱动程序使用 _URB_CONTROL_DESCRIPTOR_REQUEST 结构在 USB 设备上获取或设置描述符。
_URB_CONTROL_FEATURE_REQUEST

USB 客户端驱动程序使用_URB_CONTROL_FEATURE_REQUEST结构来设置或清除设备、接口或终结点上的功能。
_URB_CONTROL_GET_CONFIGURATION_REQUEST

USB 客户端驱动程序使用_URB_CONTROL_GET_CONFIGURATION_REQUEST结构来检索设备的当前配置。
_URB_CONTROL_GET_INTERFACE_REQUEST

USB 客户端驱动程序使用_URB_CONTROL_GET_INTERFACE_REQUEST结构来检索当前配置中接口的当前备用接口设置。
_URB_CONTROL_GET_STATUS_REQUEST

USB 客户端驱动程序使用_URB_CONTROL_GET_STATUS_REQUEST结构从设备、接口、终结点或其他设备定义的目标检索状态。
_URB_CONTROL_TRANSFER

USB 客户端驱动程序使用_URB_CONTROL_TRANSFER结构向/从控制管道传输数据。
_URB_CONTROL_TRANSFER_EX

USB 客户端驱动程序使用 _URB_CONTROL_TRANSFER_EX 结构将数据传入或传出控制管道,超时会限制可接受的传输时间。
_URB_CONTROL_VENDOR_OR_CLASS_REQUEST

USB 客户端驱动程序使用_URB_CONTROL_VENDOR_OR_CLASS_REQUEST结构向设备、接口、终结点或其他设备定义的目标发出供应商或特定于类的命令。
_URB_GET_CURRENT_FRAME_NUMBER

USB 客户端驱动程序使用_URB_GET_CURRENT_FRAME_NUMBER结构来检索当前帧编号。
_URB_GET_ISOCH_PIPE_TRANSFER_PATH_DELAYS

USB 客户端驱动程序使用_URB_GET_ISOCH_PIPE_TRANSFER_PATH_DELAYS结构来检索与主机控制器中的常时等量传输编程和传输完成相关的延迟,以便客户端驱动程序可以确保设备及时获取常时等量数据包。
_URB_HEADER

USB 客户端驱动程序使用 _URB_HEADER 结构来提供有关发送到主控制器驱动程序的请求的基本信息。
_URB_ISOCH_TRANSFER

USB 客户端驱动程序使用_URB_ISOCH_TRANSFER结构向常时等量传输管道发送数据或从中检索数据。
_URB_OPEN_STATIC_STREAMS

USB 客户端驱动程序使用_URB_OPEN_STATIC_STREAMS结构在指定的批量终结点中打开流。
_URB_OS_FEATURE_DESCRIPTOR_REQUEST

USB 集线器驱动程序使用 _URB_OS_FEATURE_DESCRIPTOR_REQUEST 结构从 USB 设备或 USB 设备上的接口检索 Microsoft OS 功能描述符。
_URB_PIPE_REQUEST

USB 客户端驱动程序使用_URB_PIPE_REQUEST结构来清除终结点上的停止条件。
_URB_SELECT_CONFIGURATION

客户端驱动程序使用 _URB_SELECT_CONFIGURATION 结构为 USB 设备选择配置。
_URB_SELECT_INTERFACE

USB 客户端驱动程序使用_URB_SELECT_INTERFACE结构为接口选择备用设置,或更改 USB 设备上当前配置中管道的最大数据包大小。
ADDRESS0_OWNERSHIP_ACQUIRE

包含用于配置设备的参数。
ALTERNATE_INTERFACE

ALTERNATE_INTERFACE 结构提供有关通用串行总线 (USB) 接口的备用设置的信息。
COMPOSITE_DEVICE_CAPABILITIES

COMPOSITE_DEVICE_CAPABILITIES 结构指定 USB 多功能设备驱动程序的功能 (复合驱动程序) 。 若要初始化 结构,请使用 COMPOSITE_DEVICE_CAPABILITIES_INIT 宏。
CONTROLLER_USB_20_HARDWARE_LPM_FLAGS

介绍按照 USB 2.0 规范的定义在 中链接电源管理 (LPM) 支持的协议功能。
DEFAULT_ENDPOINT_UPDATE

包含调用EVT_UCX_DEFAULT_ENDPOINT_UPDATE回调函数时由 UCX 传递的框架请求中更新的默认终结点的句柄。
ENDPOINT_RESET

描述重置终结点所需的信息。 此结构由 UCX 在 EVT_UCX_ENDPOINT_RESET 回调函数中传递。
ENDPOINTS_CONFIGURE

描述用于启用或禁用终结点的终结点。 此结构由 UCX 在EVT_UCX_USBDEVICE_ENDPOINTS_CONFIGURE回调函数中传递。
ENDPOINTS_CONFIGURE_FAILURE_FLAGS

此结构提供故障标志来指示在请求EVT_UCX_USBDEVICE_ENDPOINTS_CONFIGURE回调函数期间可能发生的错误(如果有)。
HUB_DEVICE_CONFIG_INFO

HUB_DEVICE_CONFIG_INFO结构与内核模式 IOCTL 结合使用,IOCTL_INTERNAL_USB_GET_DEVICE_CONFIG_INFO请求报告有关 USB 设备和设备所连接的集线器的信息。
HUB_INFO_FROM_PARENT

描述来自其父设备的中心的相关信息。
PARENT_HUB_FLAGS

HUB_INFO_FROM_PARENT 结构使用此结构从父级获取中心信息。
REGISTER_COMPOSITE_DEVICE

REGISTER_COMPOSITE_DEVICE结构与IOCTL_INTERNAL_USB_REGISTER_COMPOSITE_DEVICE I/O 控制请求一起使用,以将通用串行总线 (USB) 多功能设备的父驱动程序注册到 USB 驱动程序堆栈 (复合驱动程序) 。
REQUEST_REMOTE_WAKE_NOTIFICATION

REQUEST_REMOTE_WAKE_NOTIFICATION 结构的用途是为IOCTL_INTERNAL_USB_REQUEST_REMOTE_WAKE_NOTIFICATION I/O 控制请求指定输入参数。
ROOTHUB_20PORT_INFO

提供有关 USB 2.0 根集线器端口的信息。 此结构由 UCX 在 EVT_UCX_ROOTHUB_GET_20PORT_INFO 回调函数中传递。
ROOTHUB_20PORTS_INFO

此结构具有根中心支持的 2.0 端口数组。 此结构由 UCX 在 EVT_UCX_ROOTHUB_GET_20PORT_INFO 回调函数的框架请求中提供。
ROOTHUB_30PORT_INFO

提供有关 USB 3.0 根集线器端口的信息。 此结构由 UCX 在EVT_UCX_ROOTHUB_GET_30PORT_INFO回调函数中传递。
ROOTHUB_30PORT_INFO_EX

提供有关速度的扩展 USB 3.0 端口信息。
ROOTHUB_30PORTS_INFO

提供有关 USB 3.0 根集线器端口的信息。 此结构由 UCX 在EVT_UCX_ROOTHUB_GET_30PORT_INFO回调函数中传递。
ROOTHUB_INFO

提供有关 USB 根集线器的信息。 此结构由 UCX 在EVT_UCX_ROOTHUB_GET_INFO回调函数中传递。
STREAM_INFO

此结构存储与批量终结点关联的流的相关信息。
UCM_CONNECTOR_CONFIG

描述 Type-C 连接器对象的配置选项。 初始化的 UCM_MANAGER_CONFIG 结构是 UcmInitializeDevice 的输入参数值。
UCM_CONNECTOR_PD_CONFIG

介绍连接器的 Power Delivery 2.0 功能。
UCM_CONNECTOR_PD_CONN_STATE_CHANGED_PARAMS

描述 PD 连接更改事件的参数。
UCM_CONNECTOR_TYPEC_ATTACH_PARAMS

描述当前附加到连接器的合作伙伴。
UCM_CONNECTOR_TYPEC_CONFIG

介绍 Type-C 连接器的配置选项。
UCM_MANAGER_CONFIG

介绍 UCM 管理器的配置选项。 初始化的 UCM_MANAGER_CONFIG 结构是 UcmInitializeDevice 的输入参数值。
UCM_PD_POWER_DATA_OBJECT

描述 Power Data 对象。 有关这些成员的信息,请参阅电源交付规范。
UCM_PD_REQUEST_DATA_OBJECT

描述请求数据对象 (RDO) 。 有关这些成员的信息,请参阅电源交付规范。
UCMTCPCI_DEVICE_CONFIG

用于客户端驱动程序对 UcmTcpciDeviceInitialize 的调用。 调用 UCMTCPCI_DEVICE_CONFIG_INIT 以初始化此结构。
UCMTCPCI_DRIVER_GLOBALS

USB 类型 C 端口控制器接口框架扩展的全局结构 (UcmTcpciCx) 。
UCMTCPCI_PORT_CONTROLLER_ALERT_DATA

包含有关端口控制器对象上收到的硬件警报的信息。 此结构用于 UcmTcpciPortControllerAlert 调用。 调用 UCMTCPCI_PORT_CONTROLLER_ALERT_DATA_INIT 初始化此结构。
UCMTCPCI_PORT_CONTROLLER_ALTERNATE_MODE_ENTERED_IN_PARAMS

存储有关检测到的备用模式的信息。 此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_ALTERNATE_MODE_ENTERED请求中。
UCMTCPCI_PORT_CONTROLLER_ALTERNATE_MODE_EXITED_IN_PARAMS

存储有关已退出的备用模式的信息。 此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_ALTERNATE_MODE_EXITED请求。
UCMTCPCI_PORT_CONTROLLER_CAPABILITIES

包含有关端口控制器的功能的信息。
UCMTCPCI_PORT_CONTROLLER_CONFIG

包含端口控制器对象的配置选项,该对象由客户端驱动程序在调用 UcmTcpciPortControllerCreate 中传递。 调用 UCMTCPCI_PORT_CONTROLLER_CONFIG_INIT 初始化此结构。
UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_CONFIGURED_IN_PARAMS

存储有关配置的 DisplayPort 备用模式的引脚分配的信息。 此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_CONFIGURED请求。
UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_DISPLAY_OUT_STATUS_CHANGED_IN_PARAMS

存储有关 DisplayPort 连接的显示状态的信息。 此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_DISPLAY_OUT_STATUS_CHANGED请求。
UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_HPD_STATUS_CHANGED_IN_PARAMS

存储有关 DisplayPort 连接的热插拔检测状态的信息。 此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_DISPLAYPORT_HPD_STATUS_CHANGED请求中。
UCMTCPCI_PORT_CONTROLLER_GET_CONTROL_IN_PARAMS

此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_GET_CONTROL请求中。
UCMTCPCI_PORT_CONTROLLER_GET_CONTROL_OUT_PARAMS

存储IOCTL_UCMTCPCI_PORT_CONTROLLER_GET_CONTROL请求检索的端口控制器的所有控制寄存器的值。
UCMTCPCI_PORT_CONTROLLER_GET_STATUS_IN_PARAMS

此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_GET_STATUS请求中。
UCMTCPCI_PORT_CONTROLLER_GET_STATUS_OUT_PARAMS

存储端口控制器的所有状态寄存器的值。 此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_GET_STATUS请求中。
UCMTCPCI_PORT_CONTROLLER_IDENTIFICATION

包含有关端口控制器的标识信息和 USB 规范版本信息, (BCD 格式) 。
UCMTCPCI_PORT_CONTROLLER_SET_COMMAND_IN_PARAMS

存储指定的命令寄存器。 此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_SET_COMMAND请求。
UCMTCPCI_PORT_CONTROLLER_SET_CONFIG_STANDARD_OUTPUT_IN_PARAMS

存储CONFIG_STANDARD_OUTPUT寄存器的值。 此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_SET_CONFIG_STANDARD_OUTPUT请求中。
UCMTCPCI_PORT_CONTROLLER_SET_CONTROL_IN_PARAMS

存储所有控件寄存器的值。 此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_SET_CONTROL请求。
UCMTCPCI_PORT_CONTROLLER_SET_MESSAGE_HEADER_INFO_IN_PARAMS

存储VBUS_VOLTAGE_ALARM_LO_CFG寄存器的值。 此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_SET_MESSAGE_HEADER_INFO请求。
UCMTCPCI_PORT_CONTROLLER_SET_RECEIVE_DETECT_IN_PARAMS

存储RECEIVE_DETECT寄存器的值。 此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_SET_RECEIVE_DETECT请求。
UCMTCPCI_PORT_CONTROLLER_SET_TRANSMIT_BUFFER_IN_PARAMS

存储TRANSMIT_BUFFER寄存器的值。 此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_SET_TRANSMIT_BUFFER请求中。
UCMTCPCI_PORT_CONTROLLER_SET_TRANSMIT_IN_PARAMS

存储 TRANSMIT 寄存器的值。 此结构用于IOCTL_UCMTCPCI_PORT_CONTROLLER_SET_TRANSMIT请求。
UCMUCSI_CONNECTOR_INFO

存储有关无法通过发送 UCSI 命令(如“获取连接器功能”)获取的连接器的信息。
UCMUCSI_DEVICE_CONFIG

UcmUcsiDeviceInitialize 的配置结构。
UCMUCSI_DRIVER_GLOBALS

保留给UCMUCSI_DRIVER_GLOBALS。
UCMUCSI_PPM_CONFIG

存储创建平台策略管理器所需的配置信息, (PPM) 。
UCMUCSI_PPM_GET_UCSI_DATA_BLOCK_IN_PARAMS

包含用于输入到IOCTL_UCMUCSI_PPM_GET_UCSI_DATA_BLOCK的 USCI 数据块。
UCMUCSI_PPM_GET_UCSI_DATA_BLOCK_OUT_PARAMS

包含用于输出到IOCTL_UCMUCSI_PPM_GET_UCSI_DATA_BLOCK的 USCI 数据块。
UCMUCSI_PPM_SEND_UCSI_DATA_BLOCK_IN_PARAMS

包含用于输入到IOCTL_UCMUCSI_PPM_SEND_UCSI_DATA_BLOCK的 USCI 数据块。
UCSI_ACK_CC_CI_COMMAND

在 ACK_CC_CI 命令中使用。 请参阅表 4-7。
UCSI_ALTERNATE_MODE

在 GET_ALTERNATE_MODES 命令中使用。 请参阅表 4-26。
UCSI_BM_POWER_SOURCE

在 GET_CAPABILITY 命令中使用。 请参阅表 4-14 中的位 15:8。
UCSI_CCI

在 GET_CONNECTOR_CAPABILITY 命令中使用。 请参阅表 4-16。
UCSI_CONNECTOR_RESET_COMMAND

在 CONNECTOR_RESET 命令中使用。 请参阅表 4-5。
UCSI_CONTROL

在 SET_NOTIFICATION_ENABLE 命令中使用。 请参阅表 4-9。
UCSI_DATA_BLOCK

内存位置的数据结构。 请参阅第 3 部分。
UCSI_GET_ALTERNATE_MODES_COMMAND

在 GET_ALTERNATE_MODES 命令中使用。 请参阅表 4-24。
UCSI_GET_ALTERNATE_MODES_IN

了解如何在 GET_ALTERNATE_MODES 命令中使用 UCSI_GET_ALTERNATE_MODES_IN。 请参阅表 4-24。
UCSI_GET_CABLE_PROPERTY_COMMAND

在 GET_CABLE_PROPERTY 命令中使用。 请参阅表 4-37。
UCSI_GET_CABLE_PROPERTY_IN

在 GET_CABLE_PROPERTY 命令中使用。 请参阅表 4-39。
UCSI_GET_CAM_SUPPORTED_COMMAND

在 GET_CAM_SUPPORTED 命令中使用。 请参阅表 4-27。
UCSI_GET_CAM_SUPPORTED_IN

了解如何在 GET_CAM_SUPPORTED 命令中使用 UCSI_GET_CAM_SUPPORTED_IN。 请参阅表 4-27。
UCSI_GET_CAPABILITY_IN

在 GET_CAPABILITY 命令中使用。 请参阅表 4-13。
UCSI_GET_CONNECTOR_CAPABILITY_COMMAND

在 GET_CONNECTOR_CAPABILITY 命令中使用。 请参阅表 4-15。
UCSI_GET_CONNECTOR_CAPABILITY_IN

在 GET_CONNECTOR_CAPABILITY 命令中使用。
UCSI_GET_CONNECTOR_STATUS_COMMAND

在 GET_CONNECTOR_STATUS 命令中使用。 请参阅表 4-40。
UCSI_GET_CONNECTOR_STATUS_IN

在 GET_CONNECTOR_STATUS 命令中使用。 请参阅表 4-42。
UCSI_GET_CURRENT_CAM_COMMAND

在 GET_CURRENT_CAM 命令中使用。 请参阅表 4-29。
UCSI_GET_CURRENT_CAM_IN

在 GET_CURRENT_CAM 命令中使用。 请参阅表 4-31。
UCSI_GET_ERROR_STATUS_COMMAND

在 GET_ERROR_STATUS 命令中使用。 请参阅表 4-45
UCSI_GET_ERROR_STATUS_IN

在 GET_ERROR_STATUS 命令中使用。 请参阅表 4-47。
UCSI_GET_PDOS_COMMAND

在 GET_PDOS 命令中使用。 请参阅表 4-34。
UCSI_GET_PDOS_IN

在 GET_PDOS 命令中使用。 请参阅表 4-36。
UCSI_MESSAGE_IN

MESSAGE IN 数据结构。 请参阅第 3.4 节。
UCSI_MESSAGE_OUT

MESSAGE OUT 数据结构。 请参阅第 3.5 节。
UCSI_SET_NEW_CAM_COMMAND

在 SET_NEW_CAM 命令中使用。 请参阅表 4-32。
UCSI_SET_NOTIFICATION_ENABLE_COMMAND

了解如何在 SET_NOTIFICATION_ENABLE 命令中使用UCSI_SET_NOTIFICATION_ENABLE_COMMAND。 请参阅表 4-9。
UCSI_SET_PDM_COMMAND

_UCSI_SET_PDM_COMMAND已过时。
UCSI_SET_PDR_COMMAND

在 SET_PDR 命令中使用。 请参阅表 4-22。
UCSI_SET_POWER_LEVEL_COMMAND

在 SET_POWER_LEVEL 命令中使用。 请参阅表 4-48。
UCSI_SET_UOM_COMMAND

在 SET_UOM 命令中使用。 请参阅表 4-18。
UCSI_SET_UOR_COMMAND

在 SET_UOR 命令中使用。 请参阅表 4-20。
UCSI_VERSION

VERSION 数据结构。 请参阅第 3.1 节。
UCX_CONTROLLER_ACPI_INFORMATION

此结构提供有关高级配置和电源接口的信息 (ACPI) USB 控制器。
UCX_CONTROLLER_CONFIG

USB 控制器的此结构配置数据。
UCX_CONTROLLER_PCI_INFORMATION

此结构提供有关 PCI USB 控制器的信息。
UCX_CONTROLLER_RESET_COMPLETE_INFO

包含有关重置控制器的操作的信息。 这由客户端驱动程序在其EVT_UCX_CONTROLLER_RESET回调函数中使用。
UCX_CONTROLLER_TRANSPORT_CHARACTERISTICS

将传输特征存储在相关时间点。 此结构用于EVT_UCX_CONTROLLER_GET_TRANSPORT_CHARACTERISTICS回调函数。
UCX_CONTROLLER_TRANSPORT_CHARACTERISTICS_CHANGE_FLAGS

定义传输特征更改的标志。 此结构用于EVT_UCX_CONTROLLER_SET_TRANSPORT_CHARACTERISTICS_CHANGE_NOTIFICATION回调函数。
UCX_DEFAULT_ENDPOINT_EVENT_CALLBACKS

此结构提供 UCX 默认终结点事件回调函数的列表。
UCX_ENDPOINT_CHARACTERISTIC

存储终结点的特征。
UCX_ENDPOINT_EVENT_CALLBACKS

此结构提供指向 UCX 终结点事件回调函数的指针列表。
UCX_ENDPOINT_ISOCH_TRANSFER_PATH_DELAYS

存储常量传输路径延迟值。
UCX_ROOTHUB_CONFIG

包含指向事件回调函数的指针,用于通过调用 UcxRootHubCreate 创建根中心。 通过调用 UCX_ROOTHUB_CONFIG_INIT 初始化函数来初始化此结构, (请参阅 Ucxclass.h) 。
UCX_USBDEVICE_CHARACTERISTIC

存储设备的特征。
UCX_USBDEVICE_CHARACTERISTIC_PATH_DELAY

了解UCX_USBDEVICE_CHARACTERISTIC_PATH_DELAY如何存储常量传输路径延迟值。
UCX_USBDEVICE_EVENT_CALLBACKS

此结构提供 UCX USB 设备事件回调函数的列表。
UCXUSBDEVICE_INFO

包含有关 USB 设备的信息。 此结构由 UCX 在 EVT_UCX_CONTROLLER_USBDEVICE_ADD 事件回调函数中传递。
UDECX_ENDPOINTS_CONFIGURE_PARAMS

包含 USB 设备仿真类扩展指定的配置选项, (类扩展调用EVT_UDECX_USB_DEVICE_ENDPOINTS_CONFIGURE时,UdeCx) 客户端驱动程序。
UDECX_USB_DEVICE_PLUG_IN_OPTIONS

包含虚拟 USB 设备连接到的端口号。 通过调用 UDECX_USB_DEVICE_PLUG_IN_OPTIONS_INIT 方法初始化此结构。
UDECX_USB_DEVICE_STATE_CHANGE_CALLBACKS

使用指向由虚拟 USB 设备的 UDE 客户端实现的回调函数的指针初始化UDECX_USB_DEVICE_STATE_CHANGE_CALLBACKS结构。
UDECX_USB_ENDPOINT_CALLBACKS

包含指向由 UDE 客户端驱动程序实现的终结点回调函数的函数指针。 通过调用 UDECX_USB_ENDPOINT_CALLBACKS_INIT 初始化此结构。
UDECX_USB_ENDPOINT_INIT_AND_METADATA

包含虚拟 USB 设备的终结点支持的描述符。
UDECX_WDF_DEVICE_CONFIG

包含指向由 USB 主控制器的 UDE 客户端驱动程序实现的事件回调函数的指针。 通过调用 UDECX_WDF_DEVICE_CONFIG_INIT 初始化此结构。
UFX_DEVICE_CALLBACKS

UFX_DEVICE_CALLBACKS结构用于定义客户端驱动程序支持的 then 事件回调函数。
UFX_DEVICE_CAPABILITIES

UFX_DEVICE_CAPABILITIES 结构用于定义控制器创建的 USB) 设备 (通用串行总线的属性。
UFX_ENDPOINT_CALLBACKS

UFX_ENDPOINT_CALLBACKS结构用于定义客户端驱动程序支持的 then 事件回调函数。
UFX_HARDWARE_FAILURE_CONTEXT

UFX_HARDWARE_FAILURE_CONTEXT结构用于定义特定于控制器的硬件故障属性。
UFX_INTERFACE_PROPRIETARY_CHARGER

存储指向驱动程序实现的回调函数的指针,用于处理专有充电器操作。
UFX_PROPRIETARY_CHARGER

介绍专有充电器的设备电源要求。
URB

USB 客户端驱动程序使用 URB 结构来描述将请求发送到 USB 驱动程序堆栈的 USB 请求块 (URB) 。 URB 结构为可以发送到 USB 设备的所有可能命令定义格式。
URS_CONFIG

包含指向由 USB 双角色控制器的 URS 客户端驱动程序实现的事件回调函数的指针。 通过调用 URS_CONFIG_INIT 初始化此结构。
USB_30_HUB_DESCRIPTOR

USB_30_HUB_DESCRIPTOR 结构包含 SuperSpeed 中心描述符。 有关结构成员的信息,请参阅通用串行总线修订版 3.0 规范,10.13.2.1 中心描述符,表 10-3。 SuperSpeed Hub 描述符。
USB_BUS_INFORMATION_LEVEL_0

USB_BUS_INFORMATION_LEVEL_0 结构与 QueryBusInformation 接口例程结合使用,以报告有关总线的信息。
USB_BUS_INFORMATION_LEVEL_1

USB_BUS_INFORMATION_LEVEL_1 结构与 QueryBusInformation 接口例程结合使用,以报告有关总线的信息。
USB_BUS_INTERFACE_USBDI_V0

USB_BUS_INTERFACE_USBDI_V0结构由 USB 集线器驱动程序提供,允许 USB 客户端直接调用中心驱动程序,而无需分配 IRP。
USB_BUS_INTERFACE_USBDI_V1

USB_BUS_INTERFACE_USBDI_V1结构由 USB 中心驱动程序提供,允许 USB 客户端在不分配 IRP 的情况下直接调用中心驱动程序。
USB_BUS_INTERFACE_USBDI_V2

USB_BUS_INTERFACE_USBDI_V2结构由 USB 集线器驱动程序提供,允许 USB 客户端直接调用中心驱动程序,而无需分配 IRP。
USB_BUS_INTERFACE_USBDI_V3

USB_BUS_INTERFACE_USBDI_V3结构由 USB 集线器驱动程序提供,允许 USB 客户端直接调用中心驱动程序,而无需分配 IRP。
USB_BUS_NOTIFICATION

详细了解:_USB_BUS_NOTIFICATION结构
USB_COMMON_DESCRIPTOR

USB_COMMON_DESCRIPTOR 结构包含与调用USBD_ParseDescriptors中的搜索条件匹配的第一个描述符的头。
USB_CONFIGURATION_DESCRIPTOR

USB 客户端驱动程序使用 USB_CONFIGURATION_DESCRIPTOR 结构来保存 USB 定义的配置描述符。
USB_CYCLE_PORT_PARAMS

USB_CYCLE_PORT_PARAMS 结构与 IOCTL_USB_HUB_CYCLE_PORT I/O 控制请求一起使用,以便对与接收请求的 PDO 关联的端口进行电源循环。
USB_DESCRIPTOR_REQUEST

USB_DESCRIPTOR_REQUEST 结构与 IOCTL_USB_GET_DESCRIPTOR_FROM_NODE_CONNECTION I/O 控制请求一起使用,以检索与指示的连接索引关联的设备的一个或多个描述符。
USB_DEVICE_CAPABILITY_FIRMWARE_STATUS_DESCRIPTOR

USB 3.2 工程更改通知中定义的 USB FW 更新。
USB_DEVICE_CHARACTERISTICS

包含有关 USB 设备特征的信息,例如任何请求的最大发送和接收延迟。 此结构用于IOCTL_USB_GET_DEVICE_CHARACTERISTICS请求。
USB_DEVICE_DESCRIPTOR

USB 客户端驱动程序使用USB_DEVICE_DESCRIPTOR结构来检索 USB 定义的设备描述符。
USB_DEVICE_PORT_PATH

包含 USB 设备的端口路径。
USB_DEVICE_QUALIFIER_DESCRIPTOR

USB 客户端驱动程序使用USB_DEVICE_QUALIFIER_DESCRIPTOR结构来检索 USB 定义的设备限定符描述符。
USB_ENDPOINT_DESCRIPTOR

USB 客户端驱动程序使用USB_ENDPOINT_DESCRIPTOR结构来检索 USB 定义的终结点描述符。
USB_FRAME_NUMBER_AND_QPC_FOR_TIME_SYNC_INFORMATION

存储帧和微帧数以及计算的系统 QPC 值。 此结构用于IOCTL_USB_GET_FRAME_NUMBER_AND_QPC_FOR_TIME_SYNC请求。
USB_HCD_DRIVERKEY_NAME

USB_HCD_DRIVERKEY_NAME结构与 IOCTL_GET_HCD_DRIVERKEY_NAME I/O 控制请求一起使用,以检索 USB 主机控制器驱动程序的注册表中的驱动程序密钥。
USB_HUB_CAP_FLAGS

USB_HUB_CAP_FLAGS结构用于报告中心的功能。
USB_HUB_CAPABILITIES

USB_HUB_CAPABILITIES 结构已弃用。 请改用 USB_HUB_CAPABILITIES_EX。
USB_HUB_CAPABILITIES_EX

USB_HUB_CAPABILITIES_EX 结构与 IOCTL_USB_GET_HUB_CAPABILITIES I/O 控制请求一起使用,以检索特定 USB 集线器的功能。
USB_HUB_DESCRIPTOR

USB_HUB_DESCRIPTOR 结构包含中心描述符。
USB_HUB_INFORMATION

USB_HUB_INFORMATION 结构包含有关中心的信息。
USB_HUB_INFORMATION_EX

USB_HUB_INFORMATION_EX结构与IOCTL_USB_GET_HUB_INFORMATION_EX I/O 控制请求一起使用,以检索有关通用串行总线 (USB) 集线器的信息。
USB_HUB_NAME

USB_HUB_NAME结构存储中心的符号设备名称。
USB_ID_STRING

USB_ID_STRING 结构用于存储字符串或多字符串。
USB_INTERFACE_DESCRIPTOR

USB 客户端驱动程序使用 USB_INTERFACE_DESCRIPTOR 结构来检索 USB 定义的接口描述符。
USB_MI_PARENT_INFORMATION

USB_MI_PARENT_INFORMATION结构包含有关复合设备的信息。
USB_NODE_CONNECTION_ATTRIBUTES

USB_NODE_CONNECTION_ATTRIBUTES 结构与 IOCTL_USB_GET_NODE_CONNECTION_ATTRIBUTES I/O 控制请求一起使用,以检索连接的属性。
USB_NODE_CONNECTION_DRIVERKEY_NAME

USB_NODE_CONNECTION_DRIVERKEY_NAME 结构与IOCTL_USB_GET_NODE_CONNECTION_DRIVERKEY_NAME I/O 控制请求一起使用,以检索连接到所指示端口的设备驱动程序密钥名称。
USB_NODE_CONNECTION_INFORMATION

USB_NODE_CONNECTION_INFORMATION 结构与IOCTL_USB_GET_NODE_CONNECTION_INFORMATION请求一起使用,以检索有关 USB 端口和已连接设备的信息。
USB_NODE_CONNECTION_INFORMATION_EX

USB_NODE_CONNECTION_INFORMATION_EX 结构与 IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX 请求结合使用,以获取与指示的 USB 端口关联的连接的相关信息。
USB_NODE_CONNECTION_INFORMATION_EX_V2

USB_NODE_CONNECTION_INFORMATION_EX_V2 结构与 IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX_V2 I/O 控制请求一起使用,以检索连接到特定端口的通用串行总线 (USB) 设备的速度信息。
USB_NODE_CONNECTION_INFORMATION_EX_V2_FLAGS

USB_NODE_CONNECTION_INFORMATION_EX_V2_FLAGS联合用于指示 USB 3.0 设备当前运行的速度,以及连接到特定端口时是否可以以更高的速度运行。
USB_NODE_CONNECTION_NAME

USB_NODE_CONNECTION_NAME 结构与 IOCTL_USB_GET_NODE_CONNECTION_NAME I/O 控制请求一起使用,以检索附加到端口的下游中心的符号链接。
USB_NODE_INFORMATION

USB_NODE_INFORMATION 结构与 IOCTL_USB_GET_NODE_INFORMATION I/O 控制请求一起使用,以检索有关父设备的信息。
USB_PIPE_INFO

USB_PIPE_INFO 结构与 USB_NODE_CONNECTION_INFORMATION_EX 结构和 IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX 请求结合使用,以获取有关连接及其关联管道的信息。
USB_PORT_CONNECTOR_PROPERTIES

USB_PORT_CONNECTOR_PROPERTIES 结构与 IOCTL_USB_GET_PORT_CONNECTOR_PROPERTIES I/O 控制请求一起使用,以检索有关特定 SuperSpeed 中心上的端口的信息。
USB_PORT_PROPERTIES

USB_PORT_PROPERTIES联合用于报告通用串行总线 (USB) 端口的功能。IOCTL_USB_GET_PORT_CONNECTOR_PROPERTIES I/O 控制请求在USB_PORT_CONNECTOR_PROPERTIES结构中检索端口功能。
USB_PROTOCOLS

USB_PROTOCOLS联合用于报告端口支持的通用串行总线 (USB) 信号协议。
USB_ROOT_HUB_NAME

USB_ROOT_HUB_NAME结构存储根中心的符号设备名称。
USB_START_TRACKING_FOR_TIME_SYNC_INFORMATION

IOCTL_USB_START_TRACKING_FOR_TIME_SYNC请求的输入和输出缓冲区。
USB_STOP_TRACKING_FOR_TIME_SYNC_INFORMATION

IOCTL_USB_STOP_TRACKING_FOR_TIME_SYNC请求的输入缓冲区。
USB_STRING_DESCRIPTOR

USB_STRING_DESCRIPTOR结构由 USB 客户端驱动程序用来保存 USB 定义的字符串描述符。
USB_SUPERSPEED_ENDPOINT_COMPANION_DESCRIPTOR

USB 客户端驱动程序使用 USB_SUPERSPEED_ENDPOINT_COMPANION_DESCRIPTOR 结构来检索 USB 定义的 SuperSpeed Endpoint Companion 描述符。 有关详细信息,请参阅官方 USB 3.0 规范中的第 9.6.7 节和表 9-20。
USB_TOPOLOGY_ADDRESS

USB_TOPOLOGY_ADDRESS结构与IOCTL_INTERNAL_USB_GET_TOPOLOGY_ADDRESS I/O 请求一起使用,以检索有关 USB 设备在 USB 设备树中的位置的信息。
USB_TRANSPORT_CHARACTERISTICS

将传输特征存储在相关时间点。 此结构用于IOCTL_USB_GET_TRANSPORT_CHARACTERISTICS请求。
USB_TRANSPORT_CHARACTERISTICS_CHANGE_NOTIFICATION

包含IOCTL_USB_REGISTER_FOR_TRANSPORT_CHARACTERISTICS_CHANGE请求完成时填充的注册信息。
USB_TRANSPORT_CHARACTERISTICS_CHANGE_REGISTRATION

包含IOCTL_USB_REGISTER_FOR_TRANSPORT_CHARACTERISTICS_CHANGE请求的注册信息。
USB_TRANSPORT_CHARACTERISTICS_CHANGE_UNREGISTRATION

包含IOCTL_USB_UNREGISTER_FOR_TRANSPORT_CHARACTERISTICS_CHANGE请求的注销信息。
USBC_DEVICE_CONFIGURATION_INTERFACE_V1

USBC_DEVICE_CONFIGURATION_INTERFACE_V1结构由供应商提供的筛选器驱动程序公开,以帮助 USB 通用父驱动程序定义接口集合。
USBC_FUNCTION_DESCRIPTOR

USBC_FUNCTION_DESCRIPTOR 结构描述 USB 函数及其关联的接口集合。
USBC_PD_ALTERNATE_MODE

存储有关检测到的备用模式的信息。
USBC_PD_POWER_DATA_OBJECT

描述 PDO) (电源数据对象。
USBC_PD_REQUEST_DATA_OBJECT

描述 RDO) (请求数据对象。
USBD_ENDPOINT_OFFLOAD_INFORMATION

存储客户端驱动程序用来向/从卸载的终结点传输数据的 xHCI 特定信息。
USBD_INTERFACE_INFORMATION

USBD_INTERFACE_INFORMATION 结构保存有关 USB 设备上配置的接口的信息。
USBD_INTERFACE_LIST_ENTRY

USB 客户端驱动程序使用 USBD_INTERFACE_LIST_ENTRY 结构来创建要插入到配置请求中的接口数组。
USBD_ISO_PACKET_DESCRIPTOR

USB 客户端驱动程序使用USBD_ISO_PACKET_DESCRIPTOR结构来描述常时等量传输数据包。
USBD_PIPE_INFORMATION

USB 客户端驱动程序使用USBD_PIPE_INFORMATION结构来保存来自特定接口的管道的相关信息。
USBD_STREAM_INFORMATION

USBD_STREAM_INFORMATION 结构存储与批量终结点关联的流的相关信息。
USBD_VERSION_INFORMATION

getUSBDIVersion 函数使用 USBD_VERSION_INFORMATION 结构来报告其输出数据。
USBDEVICE_ABORTIO

包含通用串行总线的句柄 (USB) 集线器或要中止数据传输的设备。
USBDEVICE_ADDRESS

包含将指定设备转换为“已寻址”状态的请求的参数。 此结构由 UCX 在请求参数 (parameters.Others.Arg1) EVT_UCX_USBDEVICE_ADDRESS回调函数的框架请求对象传递。
USBDEVICE_DISABLE

包含用于禁用指定设备的请求的参数。 此结构由 UCX 在请求参数 (parameters.Others.Arg1) EVT_UCX_USBDEVICE_DISABLE回调函数的框架请求对象传递。
USBDEVICE_ENABLE

包含用于启用指定设备的请求的参数。 此结构由 UCX 在请求参数 (Parameters.Others.Arg1) EVT_UCX_USBDEVICE_ENABLE回调函数的框架请求对象传递。
USBDEVICE_ENABLE_FAILURE_FLAGS

客户端驱动程序在 EVT_UCX_USBDEVICE_ENABLE 回调函数中设置的标志。 指示启用设备时可能发生的错误(如果有)。
USBDEVICE_HUB_INFO

包含用于获取有关指定中心的信息的请求的参数。 此结构由 UCX 在请求参数 (parameters.Others.Arg1) EVT_UCX_USBDEVICE_HUB_INFO回调函数的框架请求对象传递。
USBDEVICE_MGMT_HEADER

此结构为物理连接到总线的 USB) 集线器或设备 (通用串行总线提供句柄。
USBDEVICE_PURGEIO

USBDEVICE_PURGEIO结构包含通用串行总线的句柄, (USB) 集线器或设备清除 I/O。
USBDEVICE_RESET

包含重置指定设备的请求的参数。 此结构由 UCX 在请求参数 (parameters.Others.Arg1) EVT_UCX_USBDEVICE_RESET回调函数的框架请求对象传递。
USBDEVICE_STARTIO

包含通用串行总线的句柄, (USB) 集线器或设备上开始数据传输。
USBDEVICE_TREE_PURGEIO

此结构为通用串行总线 (USB) 设备树提供句柄,用于清除其 I/O。
USBDEVICE_UPDATE

由 UCX 传递以更新指定的设备。 此结构位于 EVT_UCX_USBDEVICE_UPDATE 回调函数中传递的框架请求对象的 Parameters.Others.Arg1 (请求参数) 中。
USBDEVICE_UPDATE_20_HARDWARE_LPM_PARAMETERS

包含请求更新 USB 2.0 链路电源管理 (LPM) 的参数。 UCX 在EVT_UCX_USBDEVICE_UPDATE回调函数中传递此结构。
USBDEVICE_UPDATE_FAILURE_FLAGS

客户端驱动程序在 EVT_UCX_USBDEVICE_UPDATE 回调函数中设置的标志。 指示更新设备时可能发生的错误(如果有)。
USBDEVICE_UPDATE_FLAGS

包含 UCX 设置的请求标志,当 UCX 调用客户端驱动程序的 EVT_UCX_USBDEVICE_UPDATE 回调函数时,这些标志在 USBDEVICE_UPDATE 结构中传递。
USBFN_BUS_CONFIGURATION_INFO

存储有关可用 USB 配置的信息的配置数据包。
USBFN_CLASS_INFORMATION_PACKET

描述与 USB 接口关联的设备接口类信息。 此结构只能保存有关单个函数接口的信息。
USBFN_CLASS_INFORMATION_PACKET_EX

描述与 USB 接口关联的设备接口类信息。 此结构可用于描述单接口和多接口函数。
USBFN_CLASS_INTERFACE

描述接口及其终结点。
USBFN_CLASS_INTERFACE_EX

了解 USBFN_CLASS_INTERFACE_EX 如何描述接口及其终结点。
USBFN_INTERFACE_ATTACH

存储指向驱动程序实现的回调函数的指针,用于处理附加和分离操作。
USBFN_INTERFACE_INFO

了解 USBFN_INTERFACE_INFO 如何描述接口及其终结点。
USBFN_NOTIFICATION

介绍使用 IOCTL_INTERNAL_USBFN_BUS_EVENT_NOTIFICATION 接收的通用串行总线 (USB) 事件通知的信息。
USBFN_ON_ATTACH

描述检测到的端口类型和附加操作。
USBFN_PIPE_INFORMATION

描述与特定接口上的终结点关联的管道的属性。
USBFN_POWER_FILTER_STATE

保留。 请勿使用。
USBFN_USB_STRING

描述 USB 字符串描述符和关联的字符串索引。
USBPM_ASSIGN_CONNECTOR_POWER_LEVEL_PARAMS

描述 UsbPm_AssignConnectorPowerLevel的参数。
USBPM_CLIENT_CONFIG

向策略管理器注册客户端驱动程序时使用的配置结构
USBPM_CLIENT_CONFIG_EXTRA_INFO

包含用于配置客户端驱动程序注册的可选信息。
USBPM_CONNECTOR_PROPERTIES

描述连接器的属性。
USBPM_CONNECTOR_STATE

描述连接器的状态。
USBPM_EVENT_CALLBACK_PARAMS

包含与策略管理器到达/删除、中心到达/删除或连接器状态更改中的更改相关的事件的详细信息。
USBPM_HUB_CONNECTOR_HANDLES

存储中心上所有连接器的连接器句柄。
USBPM_HUB_PROPERTIES

连接器中心的属性。