Microsoft KB Archive/222600

From BetaArchive Wiki
Knowledge Base


INFO: Bulk Transfer URB's Can Specify More Than 64 Bytes

Article ID: 222600

Article Last Modified on 1/24/2007



APPLIES TO

  • Microsoft Windows 98 Standard Edition
  • Microsoft Windows 98 Driver Development Kit (DDK)



This article was previously published under Q222600

SUMMARY

The Universal Serial Bus 1.00 specification defines bulk transfers to be 4, 8, 16, 32 or 64 bytes in length. However, the TransferBufferLength field of _URB_BULK_OR_INTERRUPT_TRANSFER can specify a much larger byte size.

MORE INFORMATION

A developer using the USBD UsbBuildInterruptOrBulkTransferRequest service can specify a TransferBufferLength larger than 64 bytes. When a larger than 64 byte buffer is used, the USB port driver (UHCD.SYS or OPENHCI.SYS) breaks up the transfer into the correct size based on the USB controller type and the state of the controller.

The USB specification limits the bulk transfer size to a maximum of 64 bytes at the port driver level.

Keywords: kbinfo kbkmode KB222600