Partager via


USB Function Mass Storage Client Driver Development Concepts (Windows Embedded CE 6.0)

1/6/2010

To use the USB function mass storage client driver, you must have a USB function controller and a USB function controller driver that are compliant with the Windows Embedded CE USB function driver architecture.

To include the USB mass storage function driver in your run-time image, configure the following sysgen variables:

  • Set SYSGEN_USBFN_STORAGE equal to 1.
  • Set a BSP-specific SYSGEN to include a supported USB function controller driver.
    For example, for a CEPC with a NetChip Net2280 PCI USB 2.0 High Speed Peripheral Controller, set SYSGEN_USBFN_NET2280=1.

The USB mass storage client driver operates directly above the USB function controller driver to expose the mass storage capabilities of a target device to a USB host controller. The USB mass storage client driver contains a transport specified by the USB mass storage client driver, which is a SCSI-2 direct-access device emulator, and a transport-to-emulator proxy. The USB mass storage client driver supports the SCSI transparent command set subclass described in the USB Mass Storage Class Specification.

The USB mass storage client driver supports control/bulk/interrupt transport (CBIT) and bulk-only transport (BOT). The SCSI-2 direct-access device emulator provides an interface with which an arbitrary transport module can interact. By using a SCSI-2 direct-access device emulator, the USB mass storage client driver provides portable mass storage functionality by translating supported SCSI-2 direct-access commands to a medium-specific IOCTL and then emulating unsupported aspects of a SCSI-2 direct-access device.

A block driver implements the SCSI-2 direct-access device emulator. Because the USB mass storage class driver emulates a SCSI-2 direct-access device through a block driver, the block driver translates supported SCSI-2 direct-access commands to IOCTL_DISK_* during calls to DeviceIoControl. For more information about block driver IOCTLs, see Block Driver IOCTLs.

See Also

Concepts

USB Function Mass Storage Client Driver
USB Function Mass Storage Client Driver SCSI-2 Command Support
USB Function Mass Storage Client Driver Transport
USB Function Mass Storage Client Driver SCSI-2 Direct-Access Device Emulator
USB Function Mass Storage Client Driver Execution Sequence
USB Function Mass Storage Client Driver Configuration and Implementation
USB Function Mass Storage Client Driver Samples