首页 > 代码库 > USBD_STATUS

USBD_STATUS

USBD_STATUS

 

该USBD_STATUS数据类型为USB请求定义USB状态值。

 
 
的typedef LONG USBD_STATUS;

USB状态值的最显著4位被如下表中所定义。

含义

00(USBD_STATUS_SUCCESS)

请求已成功完成。

01(USBD_STATUS_PENDING)

请求被挂起。

10或11(USBD_STATUS_ERROR)

请求被错误完成。

 

USB状态值的至少显著28位在下表中定义。

含义

USBD_STATUS_CRC

0xC0000001

CRC错误(与USB 1.0的向后兼容性定义)。

USBD_STATUS_BTSTUFF

0xC0000002

BTS误差(与USB 1.0的向后兼容性定义)。

USBD_STATUS_DATA_TOGGLE_MISMATCH

0xC0000003

数据触发不匹配。

USBD_STATUS_STALL_PID

0xC0000004

该设备返回摆摊包标识符(向后兼容性定义与USB 1.0)

USBD_STATUS_DEV_NOT_RESPONDING

0000005

设备没有响应(与USB 1.0的向后兼容性定义)。

USBD_STATUS_PID_CHECK_FAILURE

0xC0000006

设备返回的数据包识别符检查失败(与USB 1.0的向后兼容性定义)。

USBD_STATUS_UNEXPECTED_PID

0xC0000007

该装置返回了意外的数据包识别误差(与USB 1.0的向后兼容性定义)。

USBD_STATUS_DATA_OVERRUN

0xC0000008

设备返回的数据溢出错误(与USB 1.0的向后兼容性定义)。

USBD_STATUS_DATA_UNDERRUN

0xC0000009

设备返回的数据溢出错误(与USB 1.0的向后兼容性定义)。

USBD_STATUS_RESERVED1

0xC000000A

保留。

USBD_STATUS_RESERVED2

0xC000000B

保留。

USBD_STATUS_BUFFER_OVERRUN

0xC000000C

该设备返回缓冲区溢出错误(与USB 1.0的向后兼容性定义)。

USBD_STATUS_BUFFER_UNDERRUN

0xC000000D

该设备返回缓冲区欠载错误(与USB 1.0的向后兼容性定义)。

USBD_STATUS_NOT_ACCESSED

0xC000000F

USB协议栈无法访问设备(定义向后兼容的USB 1.0)。

USBD_STATUS_FIFO

0xC0000010

该设备返回一个错误FIFO(与USB 1.0的向后兼容性定义)。

USBD_STATUS_XACT_ERROR

0xC0000011

该装置返回事务错误(与USB 1.0的向后兼容性定义)。

USBD_STATUS_BABBLE_DETECTED

0xC0000012

该装置返回潺潺检测到的错误(与USB 1.0的向后兼容性定义)。

USBD_STATUS_DATA_BUFFER_ERROR

0xC0000013

从00000001到0x000000FF的硬件状态代码(定义为向后兼容的USB 1.0协议栈)。

USBD_STATUS_NO_PING_RESPONSE

0xC0000014没有响应是从设备接收主机发送ping包。

USBD_STATUS_INVALID_STREAM_TYPE

0xC0000015流类型是端点无效。

USBD_STATUS_INVALID_STREAM_ID

0xC0000016该流标识符无效。

USBD_STATUS_ENDPOINT_HALTED

0xC0000030

的转移已提交到正在陷入僵局的端点。

USBD_STATUS_INVALID_URB_FUNCTION

0x80000200

无效的URB功能。

USBD_STATUS_INVALID_PARAMETER

0x80000300

参数无效。

USBD_STATUS_ERROR_BUSY

0x80000400

客户机驱动程序通过尝试关闭一个端点,接口或配置具有突出的手柄转移导致了错误。

USBD_STATUS_REQUEST_FAILED

0x80000500

集线器驱动程序无法完成URB请求。

USBD_STATUS_INVALID_PIPE_HANDLE

0x80000600

无效的管道句柄。

USBD_STATUS_NO_BANDWIDTH

0x80000700

没有足够的带宽来打开所请求的端点。

USBD_STATUS_INTERNAL_HC_ERROR

0x80000900

未指定的主机控制器错误。

USBD_STATUS_ERROR_SHORT_TRANSFER

0x80000900

转印带短分组结束,但USBD_SHORT_TRANSFER_OK位未设置的管道。

USBD_STATUS_BAD_START_FRAME

0xC0000A00

所需的起始帧是不是一个范围当前USB帧的USBD_ISO_START_FRAME_RANGE帧内的。每当这个错误时,系统将在管道上摆摊位。

USBD_STATUS_ISOCH_REQUEST_FAILED

0xC0000B00

主机控制器返回此错误,每当在同步传输的所有数据包完整的错误。

USBD_STATUS_FRAME_CONTROL_OWNED

0xC0000C00

集线器驱动程序返回此错误每当主机控制器帧长度控制正在使用比主控制器驱动程序等驱动程序。

USBD_STATUS_FRAME_CONTROL_NOT_OWNED

0xC0000D00

集线器驱动程序返回如果调用者没有自己的帧长度控制和尝试释放或修改主机控制器帧长此错误。

USBD_STATUS_NOT_SUPPORTED

0xC0000E00

不支持该请求。

USBD_STATUS_INAVLID_CONFIGURATION_DESCRIPTOR

0xC0000F00

无效的配置描述符。

USBD_STATUS_INSUFFICIENT_RESOURCES

0xC0001000

资源不足。

USBD_STATUS_SET_CONFIG_FAILED

0xC0002000

更改设备配置的尝试失败。

USBD_STATUS_BUFFER_TOO_SMALL

0xC0003000

缓冲区太小。

USBD_STATUS_INTERFACE_NOT_FOUND

0xC0004000

接口没有被发现。

USBD_STATUS_INAVLID_PIPE_FLAGS

0xC0005000

无效的管道标志。

USBD_STATUS_TIMEOUT

0xC0006000

请求超时。

USBD_STATUS_DEVICE_GONE

0xC0007000

该设备不再存在于系统中。

USBD_STATUS_STATUS_NOT_MAPPED

0xc0008000的

设备总线地址没有被映射到系统存储器中。

USBD_STATUS_HUB_INTERNAL_ERROR

0xC0009000

每当截获这是针对一些其他的设备URB集线器驱动程序返回此错误。

USBD_STATUS_CANCELED

0xC0010000

USB协议栈报告这个错误每当它完成,因为从客户端驱动程序AbortPipe请求的传输。

USBD_STATUS_ISO_NOT_ACCESSED_BY_HW

0xC0020000

主控制器没有访问与该分组相关联的传递描述符(TD)。USB协议栈报告这个错误在同步传输数据包的数据包状态字段。

USBD_STATUS_ISO_TD_ERROR

0xC0030000

主机控制器在传送描述符(TD)报告一个错误。USB协议栈报告这个错误在同步传输数据包的数据包状态字段。

USBD_STATUS_ISO_NA_LATE_USBPORT

0xC0040000

客户机驱动程序按时提交的数据包,但该数据包未能按时到达微型端口驱动程序。USB协议栈报告这个错误在同步传输数据包的数据包状态字段。

USBD_STATUS_ISO_NOT_ACCESSED_LATE

0xC0050000

客户机驱动程序没有按时提交数据包。USB协议栈报告这个错误在同步传输数据包的数据包状态字段。

USBD_STATUS_BAD_DESCRIPTOR

0xC0100000

无效的描述符。

USBD_STATUS_BAD_DESCRIPTOR_BLEN

0xC0100001

无效的描述符长度。

USBD_STATUS_BAD_DESCRIPTOR_TYPE

0xC0100002

无效的描述符类型。

USBD_STATUS_BAD_INTERFACE_DESCRIPTOR

0xC0100003

无效的接口描述。

USBD_STATUS_BAD_ENDPOINT_DESCRIPTOR

0xC0100004

无效的端点描述。

USBD_STATUS_BAD_INTERFACE_ASSOC_DESCRIPTOR

0xC0100005

无效的接口关联描述符。

USBD_STATUS_BAD_CONFIG_DESC_LENGTH

0xC0100006

无效的配置描述符的长度。

USBD_STATUS_BAD_NUMBER_OF_INTERFACES

0xC0100007

无效数量的接口。

USBD_STATUS_BAD_NUMBER_OF_ENDPOINTS

0xC0100008

数无效端点。

USBD_STATUS_BAD_ENDPOINT_ADDRESS

0xC0100009

无效的端点地址。

 

原文:https://msdn.microsoft.com/en-us/library/windows/hardware/ff539136(v=vs.85).aspx

USBD_STATUS