Home |
Media Transfer Protocol Class Driver RTUSB-32 Error Codes and Diagnostics Diagnostic Messages |
Diagnostic MessagesRTUSB-32 calls RTUDiagMessage whenever some event detected may or may not indicate a problem. Most diagnostic messages do not indicate a severe problem. For release versions of an application, RTUSetMessageHandler(NULL) can be called to suppress all diagnostic messages. Audio Interface with no AC Descriptor The Audio driver has detected an Audio device with no Audio Control Interface Descriptor. The device cannot be used. can't cleanup endpoint The OHCI driver has found an endpoint descriptor which completed with an error, but is not halted by the host controller. This condition violates the OHCI specification. can't do EHCI iso transfer to/from physical page 0 It was attempted to transfer data to/from physical address 0. Since the driver cannot distinguish address 0 from NULL (no address), the transfer will fail. To avoid this problem, do not use the first physical page of memory for data accessible to RTUSB-32. EHCI Int System Error An EHCI controller has reported a fatal, unrecoverable error and will stop functioning. Such an error indicates that RTUSB-32 internal data structures or the host controller's data in the host communication shared memory has been corrupted. hub Error: ... This error message is followed by a standard RTUSB-32 error code. It is displayed by the RTUSB-32 internal hub class driver when communication with a hub of a newly attached device fails. hub local power changed An external hub was disconnected or connected to its local power supply. This causes all of its connected devices to disconnect and then reconnect. hub overcurrent A hub has reported a general overcurrent error. hub without hub interface The hub class driver has detected a device which identifies itself as a hub, but does not expose a hub interface. The device is not USB compliant. interface number larger than highest interface index Function RTUClaimInterface has encountered an interface descriptor specifying an interface number higher than the number of interfaces given in the device descriptor. The device is not USB spec compliant and RTUClaimInterface will return error code RTU_NOT_AVAIL. Isochronous IN transaction buffer must be cache line aligned The address of the buffer passed to RTUStartIO for an Isochronous IN transaction is not an integral multiple of the system's cache line size please section RTUStartIO and Porting RTUSB-32 to other Platforms for details. MTP Response: 0xXXXX The MTP Class driver has received an unexpected return code from the MTP device. The Media Transfer Protocol Specification, Revision 1.1, Appendix F lists all possible response codes and what they mean. no pending transactions in RTUIOWait/RTUWaitTimed RTUIOWait or RTUIOWaitTimed has been called with no preceding RTUStartIO. This is OK if RTUStartIO will be called by another thread. Otherwise, RTUIOWait will deadlock and RTUIOWaitTimed will time out. OHCI root hub overcurrent An OHCI controller has reported an overcurrent situation and will disconnect the respective port. Use self-powered hubs to avoid this error. OHCI.HcInterruptStatus: unrecoverable error An OHCI controller has reported a fatal, unrecoverable error and will stop functioning. Such an error indicates that RTUSB-32 internal data structures or the host controller's data in the host communication shared memory has been corrupted. overcurrent, configuration denied A client has called RTUClaimInterface which will return error code RTU_OVER_CURRENT. pipe closed with pending events A pipe in Asynch notification mode is being closed without first retrieving all transaction notification events using RTUIOWait or RTUIOWaitTimed. RTUSB-32 will discard all such events. port disconnected while resetting A device was disconnected (or reports itself as disconnected) while the hub driver tried to initialize it. port overcurrent A hub has reported an overcurrent error on one of its ports. QH not found in ?HCI.ClosePipe The UHCI, OHCI, or EHCI driver did not find data structures associated with a pipe. Possibly, the same pipe was closed twice. RTURegisterCallback called after RTURegister?HCI RTURegisterCallback has been called even though RTURegisterUHCI, RTURegisterOHCI, RTURegisterEHCI, or RTURegisterXHCI have already been called. Devices already connected to the USB when the program was initialized will not receive the RTUConnect event. RTUSBMTPConfig.BufferSize too small Config parameter RTUSBMTPConfig.BufferSize is too small to hold a data message sent from the MTP device. RTUSBMTPConfig.BufferSize must be increased before function USBMTP is registered. RTUSendSetup: out of sequence RTUSendSetup has received an unexpected notification on the respective pipe (for example, a notification for a different setup packet). skip bit not set in OHCI.CancelIO, retrying The OHCI driver was unable to set the "skip" bit in an endpoint descriptor. The driver will retry the operation. stale messages in control pipe RTUSendSetup found a notification message in a pipe's event queue even though no transactions have previously been started. too many pending isochronous transactions More Isochronous transactions than supported by the host controller were queued. At any one time, at most 1 second worth of transactions may be pending on each endpoint. UHCI Host System Error A UHCI controller has reported a fatal, unrecoverable error and will stop functioning. Such an error indicates that RTUSB-32 internal data structures or the host controller's data in the host communication shared memory has been corrupted. USB Audio device with unsupported Type II format The Audio driver has detected an Audio device which requires Type II audio data formats. Such devices are currently not supported by RTUSB-32. USB Audio driver out of memory The Audio class driver was unable to allocate a Isochronous I/O buffer list array. USB Audio failed to claim AS interface The Audio driver was unable to claim the interface required to play sound or record sound. Possibly, the USB bus is overloaded or the Audio device's firmware has crashed. USB Audio: GetCurrentFreq failed Even though an Audio function supports different frequencies, the attempt to query the current frequencies failed. The device cannot be used. USB Audio: GetCurrentFreq returned bad value A USB Audio device has returned an invalid frequency, due to a firmware bug. The Audio driver attempt to guess at the correct frequency. USB printer: can't handle IEEE 1284 protocol The printer class driver has found a USB printer using a protocol it does not support. USB printer: unknown printer protocol The printer class driver has found a USB printer using a protocol it does not support. USBAudio: UnitID not found The Audio class driver did not find a unit which is referenced by some other unit. The USB Audio device firmware is faulty. USBAudioGetFeature/USBAudioSetFeature: invalid feature selector An invalid parameter was passed to USBAudioGetFeature or USBAudioSetFeature. USBAudioPlay error: endpoint can't handle such a high frequency The maximum packet size of the isochronous endpoint of an Audio function cannot handle the amount of data required by the currently selected frequency. The Audio device is miconfigured. USBAudioPlay error: too much data The amount of data submitted to USBAudioPlay is too large and is truncated. Please see function USBAudioPlay for details. USBAudioPlay warning: not an integral number of milliseconds The amount of data submitted to USBAudioPlay does not correspond to an integral number of milliseconds. This warning can be ignored if the data segment is the last segment of an audio stream. This warning is displayed only if flag USB_PLAY_VERBOSE has been specified. USBAudioRecord warning: too much data The amount of data submitted to USBAudioRecord is too large and is truncated. Please see function USBAudioRecord for details. USBAudioSetFrequency failed Even though an Audio function supports different frequencies, the attempt to change the current frequencies failed. The previously set frequency stays in effect. USBAudioTranslate warning: incomplete output frame The amount of data submitted to USBAudioTranslate will not produce an integral number of milliseconds in the output data. This warning can be ignored if the data segment is the last segment of an audio stream. This warning is displayed only if flag USB_TRANSLATE_VERBOSE has been specified. USBAudioWaitDone: RTU_NOT_ACCESSED Function USBAudioWaitDone has detected that some or all of the data submitted to USBAudioPlay or USBAudioRecord has not been processed. This indicates an internal error.
|