Jungo WinDriver
Official Documentation
|
enum WD_ERROR_CODES |
Enumerator | |
---|---|
WD_STATUS_SUCCESS | [0] Operation completed successfully |
WD_STATUS_INVALID_WD_HANDLE | [0xffffffff] |
WD_WINDRIVER_STATUS_ERROR | [0x20000000] |
WD_INVALID_HANDLE | [0x20000001] Invalid WinDriver handle. This usually occurs when
|
WD_INVALID_PIPE_NUMBER | [0x20000002] USB: Invalid Pipe Number. Occurs when the provided pipe number does not exist or is not available on the USB device. |
WD_READ_WRITE_CONFLICT | [0x20000003] Request to read from an OUT (write) pipe or request to write to an IN (read) pipe |
WD_ZERO_PACKET_SIZE | [0x20000004] Maximum packet size is zero |
WD_INSUFFICIENT_RESOURCES | [0x20000005] Insufficient resources. Occurs when WinDriver is trying to allocate more memory than currently available. |
WD_UNKNOWN_PIPE_TYPE | [0x20000006] Obsolete. |
WD_SYSTEM_INTERNAL_ERROR | [0x20000007] Internal System Error |
WD_DATA_MISMATCH | [0x20000008] Data Mismatch. Occurs when compiling a 32 bit user application on a 64-bit platform without adding the KERNEL_64BIT define. |
WD_NO_LICENSE | 0x[20000009] No License. Occurs either when no license was entered, license has expired, license was not entered correctly. Contact wd_li.nosp@m.cens.nosp@m.e@jun.nosp@m.go.c.nosp@m.om for more assistance. |
WD_NOT_IMPLEMENTED | [0x2000000a] Function not implemented. Occurs when a certain API is not implemented for the platform that is being used. |
WD_KERPLUG_FAILURE | [0x2000000b] Kernel PlugIn failure. Occurs when trying to open a KP which is not currently installed, or when the KP was not implemented correctly. |
WD_FAILED_ENABLING_INTERRUPT | [0x2000000c] Failed Enabling Interrupts. Occurs when the OS fails to enable interrupts for the device or when trying to enable MSI interrupts for a device that doesn't support them. Note that an INF file MUST be installed in order to enable interrupts under Windows. |
WD_INTERRUPT_NOT_ENABLED | [0x2000000d] Interrupt not enabled. Occurs when calling WD_IntWait() with an invalid interrupt handle, or when trying to disable a shared interrupt that was not enabled. |
WD_RESOURCE_OVERLAP | [0x2000000e] Resource Overlap. Happens when trying to open the same device with more than one user application (when that device was not defined to be opened by more than one process). |
WD_DEVICE_NOT_FOUND | [0x2000000f] Device not found. Occurs when trying to open a device that was not detected by the OS. |
WD_WRONG_UNIQUE_ID | [0x20000010] Wrong unique ID (USB). Occurs when trying to access a USB device with an invalid unique ID. |
WD_OPERATION_ALREADY_DONE | [0x20000011] Operation Already Done. Occurs when trying to perform twice an operation that should be done once (i.e. Enabling interrupts) |
WD_USB_DESCRIPTOR_ERROR | [0x20000012] USB Descriptor Error. Occurs when WinDriver recieves faulty USB descriptor data, might be a result of an invalid parameter to the WinDriver API or a result of a bug in the device's firmware. |
WD_SET_CONFIGURATION_FAILED | [0x20000013] Set Configuration Failed (USB). Occurs when WinDriver failed to set a configuration for a USB device. |
WD_CANT_OBTAIN_PDO | [0x20000014] Obsolete |
WD_TIME_OUT_EXPIRED | [0x20000015] Time Out Expired. Occurs when operations that have a timeout limit run out of time (i.e. DMA or USB transfers) |
WD_IRP_CANCELED | [0x20000016] IRP Cancelled. Occurs on Windows when an interrupt was cancelled by the user in the middle of an operation. |
WD_FAILED_USER_MAPPING | [0x20000017] Failed to map memory to User Space. Occurs when there is not enough available memory to map a PCI device's BARs to user space memory. Possible ways to deal with this are to decrease the BAR size through the firmware, add more RAM to your computer or free up more RAM. |
WD_FAILED_KERNEL_MAPPING | [0x20000018] Failed to map memory to Kernel Space. Occurs when there is not enough available memory to map a PCI device's BARs to kernel space memory. Possible ways to deal with this are to decrease the BAR size through the firmware, add more RAM to your computer or free up more RAM. |
WD_NO_RESOURCES_ON_DEVICE | [0x20000019] No Resources On Device. Occurs when a user application expects a resource (i.e. BAR, Interrupt...) to be available on a device but that resource is unavailable. This is usually a result of how the device was designed/programmed. |
WD_NO_EVENTS | [0x2000001a] No Events. Occurs when calling WD_EventSend(), WD_EventPull() without registering events using WD_EventRegister() beforehand. |
WD_INVALID_PARAMETER | [0x2000001b] Invalid Parameter. Occurs when providing an invalid parameter to an API. Try fixing the parameters provided to the function. |
WD_INCORRECT_VERSION | [0x2000001c] Incorrect version. Occurs when
|
WD_TRY_AGAIN | [0x2000001d] Try Again. Occurs when an operation has failed due to a device being busy. When trying again later the operation may succeed. |
WD_WINDRIVER_NOT_FOUND | [0x2000001e] Obsolete |
WD_INVALID_IOCTL | [0x2000001f] Invalid IOCTL. Occurs when providing an invalid API to the WinDriver kernel module. Use only APIs that are defined in this user manual. |
WD_OPERATION_FAILED | [0x20000020] Operation Failed. Occurs either because of an invalid input from user, or an internal system error. |
WD_INVALID_32BIT_APP | [0x20000021] Invalid 32 Bit User Application. Occurs when compiling a 32 bit user application on a 64-bit platform without adding the KERNEL_64BIT define. |
WD_TOO_MANY_HANDLES | [0x20000022] Too Many Handles. Occurs when too many handles to WinDriver or to a certain WinDriver feature have been opened. Try closing some handles to prevent this from happening. |
WD_NO_DEVICE_OBJECT | [0x20000023] No Device Object.
|
WD_MORE_PROCESSING_REQUIRED | [0xC0000016] More Processing Required. Occurs when a part of the operation was complete but more calls to an API for continuing to process the data will be required. |
WD_USBD_STATUS_SUCCESS | [0x00000000] Success |
WD_USBD_STATUS_PENDING | [0x40000000] Operation pending |
WD_USBD_STATUS_ERROR | [0x80000000] Error |
WD_USBD_STATUS_HALTED | [0xC0000000] Halted |
WD_USBD_STATUS_CRC | [0xC0000001] HC status: CRC |
WD_USBD_STATUS_BTSTUFF | [0xC0000002] HC status: Bit stuffing |
WD_USBD_STATUS_DATA_TOGGLE_MISMATCH | [0xC0000003] HC status: Data toggle mismatch |
WD_USBD_STATUS_STALL_PID | [0xC0000004] HC status: PID stall |
WD_USBD_STATUS_DEV_NOT_RESPONDING | [0xC0000005] HC status: Device not responding |
WD_USBD_STATUS_PID_CHECK_FAILURE | [0xC0000006] HC status: PID check failed |
WD_USBD_STATUS_UNEXPECTED_PID | [0xC0000007] HC status: Unexpected PID |
WD_USBD_STATUS_DATA_OVERRUN | [0xC0000008] HC status: Data overrun |
WD_USBD_STATUS_DATA_UNDERRUN | [0xC0000009] HC status: Data underrrun |
WD_USBD_STATUS_RESERVED1 | [0xC000000A] HC status: Reserved1 |
WD_USBD_STATUS_RESERVED2 | [0xC000000B] HC status: Reserved1 |
WD_USBD_STATUS_BUFFER_OVERRUN | [0xC000000C] HC status: Buffer overrun |
WD_USBD_STATUS_BUFFER_UNDERRUN | [0xC000000D] HC status: Buffer underrun |
WD_USBD_STATUS_NOT_ACCESSED | [0xC000000F] HC status: Not accessed |
WD_USBD_STATUS_FIFO | [0xC0000010] HC status: FIFO |
WD_USBD_STATUS_XACT_ERROR | [0xC0000011] HC status: The host controller has set the Transaction Error (XactErr) bit in the transfer descriptor's status field |
WD_USBD_STATUS_BABBLE_DETECTED | [0xC0000012] HC status: Babble detected |
WD_USBD_STATUS_DATA_BUFFER_ERROR | [0xC0000013] HC status: Data buffer error |
WD_USBD_STATUS_CANCELED | [0xC0010000] USBD: Transfer canceled |
WD_USBD_STATUS_ENDPOINT_HALTED | Returned by HCD (Host Controller Driver) if a transfer is submitted to an endpoint that is stalled: |
WD_USBD_STATUS_NO_MEMORY | [0x80000100] USBD: Out of memory |
WD_USBD_STATUS_INVALID_URB_FUNCTION | [0x80000200] USBD: Invalid URB function |
WD_USBD_STATUS_INVALID_PARAMETER | [0x80000300] USBD: Invalid parameter |
WD_USBD_STATUS_ERROR_BUSY | [0x80000400] Returned if client driver attempts to close an endpoint/interface or configuration with outstanding transfers: |
WD_USBD_STATUS_REQUEST_FAILED | [0x80000500] Returned by USBD if it cannot complete a URB request. Typically this will be returned in the URB status field when the Irp is completed with a more specific error code. [The Irp status codes are indicated in WinDriver's Debug Monitor tool (wddebug/wddebug_gui): |
WD_USBD_STATUS_INVALID_PIPE_HANDLE | [80000600] USBD: Invalid pipe handle |
WD_USBD_STATUS_NO_BANDWIDTH | [0x80000700] Returned when there is not enough bandwidth available to open a requested endpoint: |
WD_USBD_STATUS_INTERNAL_HC_ERROR | [0x80000800] Generic HC (Host Controller) error: |
WD_USBD_STATUS_ERROR_SHORT_TRANSFER | [0x80000900] Returned when a short packet terminates the transfer i.e. USBD_SHORT_TRANSFER_OK bit not set: |
WD_USBD_STATUS_BAD_START_FRAME | [0x80000A00] Returned if the requested start frame is not within USBD_ISO_START_FRAME_RANGE of the current USB frame,
|
WD_USBD_STATUS_ISOCH_REQUEST_FAILED | [0xC0000B00] Returned by HCD (Host Controller Driver) if all packets in an isochronous transfer complete with an error: |
WD_USBD_STATUS_FRAME_CONTROL_OWNED | [0xC0000C00] Returned by USBD if the frame length control for a given HC (Host Controller) is already taken by another driver: |
WD_USBD_STATUS_FRAME_CONTROL_NOT_OWNED | [0xC0000D00] Returned by USBD if the caller does not own frame length control and attempts to release or modify the HC frame length: |
WD_USBD_STATUS_NOT_SUPPORTED | [0xC0000E00] Returned for APIS not supported/implemented |
WD_USBD_STATUS_INAVLID_CONFIGURATION_DESCRIPTOR | [0xC0000F00] USBD: Invalid configuration descriptor |
WD_USBD_STATUS_INSUFFICIENT_RESOURCES | [0xC0001000] USBD: Insufficient resources |
WD_USBD_STATUS_SET_CONFIG_FAILED | [0xC0002000] USBD: Set configuration failed |
WD_USBD_STATUS_BUFFER_TOO_SMALL | [0xC0003000] USBD: Buffer too small |
WD_USBD_STATUS_INTERFACE_NOT_FOUND | [0xC0004000] USBD: Interface not found |
WD_USBD_STATUS_INAVLID_PIPE_FLAGS | [0xC0005000] USBD: Invalid pipe flags |
WD_USBD_STATUS_TIMEOUT | [0xC0006000] USBD: Timeout |
WD_USBD_STATUS_DEVICE_GONE | [0xC0007000] USBD: Device Gone |
WD_USBD_STATUS_STATUS_NOT_MAPPED | [0xC0008000] USBD: Status not mapped |
WD_USBD_STATUS_ISO_NOT_ACCESSED_BY_HW | Extended isochronous error codes returned by USBD. These errors appear in the packet status field of an isochronous transfer. [0xC0020000] For some reason the controller did not access the TD associated with this packet: |
WD_USBD_STATUS_ISO_TD_ERROR | [0xC0030000] Controller reported an error in the TD. Since TD errors are controller specific they are reported generically with this error code: |
WD_USBD_STATUS_ISO_NA_LATE_USBPORT | [0xC0040000] The packet was submitted in time by the client but failed to reach the miniport in time: |
WD_USBD_STATUS_ISO_NOT_ACCESSED_LATE | [0xC0050000] The packet was not sent because the client submitted it too late to transmit: |