Information Technology Reference
In-Depth Information
dCBWDataTransferLength bytes and set dCSWDataResidue to the appro-
priate value.
If the device expects to receive more than dCBWDataTransferLength bytes
(case 13) or expects to send data to the host (case 10), the device may accept
up to dCBWDataTransferLength bytes or may end the transfer early by
stalling the bulk OUT endpoint. In either case, the device sets bCSWStatus
to 02h. If bCSWStatus = 02h, the device may stall the bulk IN endpoint as
well. On receiving bCSWStatus = 02h, the host ignores dCSWDataResidue
and performs a reset recovery or resets the device's port.
PC Support
Major operating systems include drivers to support communications with
mass-storage devices
Windows
Windows 2000 and later include a driver that supports USB devices that use
the bulk-only transport protocol and CBI. When a device's descriptors iden-
tify the device as mass-storage class with a supported bInterfaceSubClass,
the operating system loads the USB storage port driver (usbstor.sys). This
driver manages communications between the lower-level USB drivers and
Windows' storage-class drivers. The operating system assigns a drive letter to
the device's volume or volumes, which appear in My Computer. Mass-stor-
age devices don't need a vendor-specific INF file to specify a driver. The
Windows file usbstor.inf causes Windows to load the mass-storage drivers
for any mass-storage device in a supported bInterfaceSubClass.
The mass-storage driver in Windows XP supports bInterfaceSubClass codes
02h, 05h, and 06h. Support for drives with multiple LUNs was added in
Windows 2000 SP3.
Users with administrator access rights can run applications that send SCSI
commands to devices using the IOCTL_SCSI_PASS_THROUGH func-
tion. To open a device for sending SCSI pass-through requests, the applica-
tion must call CreateFile with the dwDesiredAccess parameter requesting
both GENERIC_READ and GENERIC_WRITE access.
Search WWH ::




Custom Search