0% found this document useful (0 votes)
168 views14 pages

Universal Serial Bus Mass Storage Class Specification Overview

UASP Mass Storage Overview Class Specification Overview Revision 1. February 19, 2010 Document Status Revision History Rev 1. 1. 1. 1. Date October 22, 1998 June 28, 2000 June 23, 2003 September 5, 2008 John Geldman Author 1) Initial release 1) Update 1) Update list of specs 2) Restrict CBI to full-speed floppies only 1) updated related documents and subclass references, 2) added MSC-Lock and IEEE 1667 subclasses, 3) added Vendor Specific subclass and protocol, 4) updated protocol list, added section on request

Uploaded by

borland6538
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
168 views14 pages

Universal Serial Bus Mass Storage Class Specification Overview

UASP Mass Storage Overview Class Specification Overview Revision 1. February 19, 2010 Document Status Revision History Rev 1. 1. 1. 1. Date October 22, 1998 June 28, 2000 June 23, 2003 September 5, 2008 John Geldman Author 1) Initial release 1) Update 1) Update list of specs 2) Restrict CBI to full-speed floppies only 1) updated related documents and subclass references, 2) added MSC-Lock and IEEE 1667 subclasses, 3) added Vendor Specific subclass and protocol, 4) updated protocol list, added section on request

Uploaded by

borland6538
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

Universal Serial Bus Mass Storage Class Specification Overview

Revision 1.4 February 19, 2010

MSCO Revision 1.4

February 19, 2010

Document Status
Revision History Rev 1.0 1.1 1.2 1.3 Date October 22, 1998 June 28, 2000 June 23, 2003 September 5, 2008 John Geldman Author 1) Initial release 1) Update 1) Update list of specs 2) Restrict CBI to full-speed floppies only 1) Updated related documents & subclass references, 2) added MSC-Lock & IEEE 1667 subclasses, 3) added Vendor Specific subclass & protocol, 4) updated protocol list, added section on Request Codes 1) Corrected references to obsolete SubClass Codes in Table 2.1 2) Adds USB Attached SCSI Protocol Reference 3) Adds Protocol UASP subgroup approved for usage in T10 UAS work 4) Updated list of contributors 5) Performed spelling and grammar check 6) Updated formatting for consistency. 1) Updated with letter ballot comment corrections 2) Added list of previous contributors 3) Added USB-2 as core Spec 1) Changed the introduction to the contributers list to match USB-IF requirements. Description

1.4rc1

June 23, 2009

John Geldman Curtis E. Stevens

1.4rc2

August 5, 2009

Curtis E. Stevens

1.4rc3

February 19, 2010

Curtis E, Stevens

ii

Specification Overview

February 19, 2010

MSCO Revision 1.4

The authors of this specification would like to thank the people from the Promoter companies, the people who participated in the UASP Specification technical working group, and those throughout the industry who contributed to the development of this specification. The following people have contributed to the Mass Storage Overview Class Specification. MSC Specification Overview Contributors Name Amit Nanda Hans van Antwerpen Chuck Trefts Mario Pasquali Yuji Oishi Steve McGowan Boris Dinkevich Joel Silverman Daniel Jacobs John Geldman Jason R. Oliver Cristian Chis John Garney Jim Bovee Kiran Bangalore Eugene Gryazin Matthew Stephens Shigekatsu Tateno Thomas Friend Dave Landsman Martin Furuhjelm Tony Priborsky Cindy Lee Shannon Cash Gideon Intrater Biao Jia Rudy Liang Christopher Thomas Grant Ley Ed Beeman Paul E. Berg Curtis E. Stevens [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] E-Mail Company Cypress Semiconductor Cypress Semiconductor Ellisys Ellisys Hagiwara Sys-Com Intel Jungo Kawasaki Microelectronics Lecroy Lexar Media MCCI MCCI MCCI Microsoft Microsoft Nokia PLX/Oxford PLX/Oxford PLX/Oxford SanDisk Seagate Technology Seagate Technology SMSC SMSC Symwave Symwave Symwave Symwave Texas Instruments USB-IF USB-IF Western Digital Technologies

Specification Overview

iii

MSCO Revision 1.4 Contributors to Previous Versions Name Company Shing F. Lin Adaptec Bill Stanley Adaptec Masayuki Kitagawa Alpha Peripherals Bill Russell Canon Dave Gilbert Cypress Semiconductor Steve Kolokowsky Cypress Semiconductor David Luke Cypress Semiconductor Eric Luttmann Cypress Semiconductor David Cho Genesys Logic Sean S. Cho Genesys Logic Hiromichi Oribe Hagiwara Sys-Com Co. David L. Jolley Iomega Corporation Mike Poulsen Iomega Corporation James Quigley Iomega Corporation Darrell Redford Iomega Corporation Jim Sandman Iomega Corporation Martin Furuhjelm Lexar Media John Geldman Lexar Media Pat LaVarre Lexar Media Alex Afshar Matsushita Semiconductor Nathan Obr Microsoft Corporation Glen Slick Microsoft Corporation Mark Williams Microsoft Corporation Al Rickey Phoenix Technologies Johan Craeybeckk PIMC/Philips Jan Matejica PIMC/Philips Peter S'Heeren PIMC/Philips Yoni Shternhell SanDisk Trenton Henry SMSC Shigenori Tagami Sony Corporation Frits Vanderlinden Sun Microsystems Curtis E. Stevens Western Digital Masahiro Ito Yamagata Fujitsu Toyoko Shimizu Y-E Data, Inc Jim Blackson Y-E Data, Inc

February 19, 2010

iv

Specification Overview

February 19, 2010 Copyright 2009, USB Implementers Forum, Inc. All rights reserved.

MSCO Revision 1.4

A LICENSE IS HEREBY GRANTED TO REPRODUCE THIS SPECIFICATION FOR INTERNAL USE ONLY. NO OTHER LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, IS GRANTED OR INTENDED HEREBY. USB-IF AND THE AUTHORS OF THIS SPECIFICATION EXPRESSLY DISCLAIM ALL LIABILITY FOR INFRINGEMENT OF INTELLECTUAL PROPERTY RIGHTS, RELATING TO IMPLEMENTATION OF INFORMATION IN THIS SPECIFICATION. USB-IF AND THE AUTHORS OF THIS SPECIFICATION ALSO DO NOT WARRANT OR REPRESENT THAT SUCH IMPLEMENTATION(S) WILL NOT INFRINGE THE INTELLECTUAL PROPERTY RIGHTS OF OTHERS. THIS SPECIFICATION IS PROVIDED "AS IS" AND WITH NO WARRANTIES, EXPRESS OR IMPLIED, STATUTORY OR OTHERWISE. ALL WARRANTIES ARE EXPRESSLY DISCLAIMED. NO WARRANTY OF MERCHANTABILITY, NO WARRANTY OF NON-INFRINGEMENT, NO WARRANTY OF FITNESS FOR ANY PARTICULAR PURPOSE, AND NO WARRANTY ARISING OUT OF ANY PROPOSAL, SPECIFICATION, OR SAMPLE. IN NO EVENT WILL USB-IF OR USB-IF MEMBERS BE LIABLE TO ANOTHER FOR THE COST OF PROCURING SUBSTITUTE GOODS OR SERVICES, LOST PROFITS, LOSS OF USE, LOSS OF DATA OR ANY INCIDENTAL, CONSEQUENTIAL, INDIRECT, OR SPECIAL DAMAGES, WHETHER UNDER CONTRACT, TORT, WARRANTY, OR OTHERWISE, ARISING IN ANY WAY OUT OF THE USE OF THIS SPECIFICATION, WHETHER OR NOT SUCH PARTY HAD ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES.

Specification Overview

MSCO Revision 1.4

February 19, 2010

vi

Specification Overview

February 19, 2010

MSCO Revision 1.4

Table of Contents
Page Document Status ..................................................................................................................................................ii Table of Contents ................................................................................................................................................ vii List of Tables ...................................................................................................................................................... viii 1 Introduction ........................................................................................................................................................ 1 1.1 Overview ................................................................................................................................................... 1 1.2 Specification Relationships ....................................................................................................................... 1 1.3 Purpose .................................................................................................................................................... 1 1.4 Terms and Abbreviations .......................................................................................................................... 1 1.5 Related Documents .................................................................................................................................. 2 2 Subclass Codes ................................................................................................................................................. 3 3 Protocol Codes .................................................................................................................................................. 4 4 Request Codes .................................................................................................................................................. 5 5 Class Specific Descriptor Codes ........................................................................................................................ 6

Specification Overview

vii

MSCO Revision 1.4

February 19, 2010

List of Tables
Page Table 1 - SubClass Codes Mapped to Command Block Specifications............................................................... Table 2 - Mass Storage Transport Protocol ......................................................................................................... Table 3 - Mass Storage Request Codes .............................................................................................................. Table 4 - Mass Storage Class Specific Descriptors ............................................................................................. 3 4 5 6

viii

Specification Overview

February 19, 2010

MSCO Revision 1.4

1 Introduction 1.1 Overview


This document gives an overview of the USB Mass Storage Class specifications. How mass storage devices behave on the USB bus is the subject of this and other USB Mass Storage Class specifications. In addition to this Overview specification, several other USB Mass Storage Class specifications are supported by the USB Mass Storage Class Working Group (CWG). The titles of these specifications are: USB Mass Storage Class Control/Bulk/Interrupt (CBI) Transport USB Mass Storage Class Bulk-Only (BBB) Transport USB Mass Storage Class UFI (UFI) Command Specification USB Mass Storage Class Bootability Specification USB Mass Storage Class Compliance Test Specification USB Lockable Storage Devices Feature Specification (LSD FS) USB Mass Storage Class USB Attached SCSI Protocol (UASP) The USB Mass Storage Class Control/Bulk/Interrupt (CBI) Transport specification is approved for use only with full-speed floppy disk drives. CBI shall not be used in high-speed capable devices, or in devices other than floppy disk drives. CBI shall not be used in devices that implement LSDFS. Usage of CBI for any new design is discouraged.
NOTE 1 The Compliance Test specifications are still under development, and are not yet publicly available.

1.2 Specification Relationships


This is a normative document for USB Mass Storage Class devices. If there is a code assignment conflict between this document and another USB document, then the assignments in this document override the other document. The CBI and Bulk-Only transport protocol specifications are each intended to be stand-alone documents for the USB Mass Storage class, enabling development of a USB Mass Storage compliant device. A device manufacturer may choose to implement both CBI and Bulk-Only, but shall follow each specification as applicable. Booting an operating system from a USB Mass Storage Class device requires no special considerations with regard to Mass Storage Class support. Either CBI or Bulk-Only devices may be bootable. Bootability may, however, require other considerations such as particular types of media formatting, etc. Such considerations are hardware- or operating system dependent, and are beyond the scope of the Mass Storage Class specifications.

1.3 Purpose
The purpose of this document is to provide an overview of all the specifications that describe how Mass Storage devices behave on the USB bus. Section 1.1 gives the rules for using the different USB Mass Storage class specifications. Note that these rules can change. As other companies with different USB Mass Storage Class device projects in mind join the USB Mass Storage Class CWG, other specifications may be developed by the CWG and added to the set of specifications that fully describe how a Mass Storage Class device behaves on the USB bus. If and when that happens, the USB Mass Storage CWG will reconsider the rules specified in section 1.1 of this document.

1.4 Terms and Abbreviations


May: A keyword that indicates an option. Shall: A keyword that indicates a requirement. Specification Overview 1

MSCO Revision 1.4

February 19, 2010

1.5 Related Documents


USB Mass Storage specifications use the command sets from several existing protocols. The command blocks of these command sets are placed in a USB wrapper which follows USB protocol. The following specifications are referenced by the USB Mass Storage specifications: a) b) c) d) Universal Serial Bus Specification revision 2.0 (core USB), available at http://www.usb.org Reduced Block Commands (RBC), INCITS 330:2000, available at http://www.t10.org Multi-Media Command Set 5 (MMC-5), T10/1675-D available at http://www.t10.org Standard Protocol for Authentication in Host Attachments of Transient Storage Devices (IEEE 1667) available at www.ieee1667.com e) USB Attached SCSI (UAS) T10/2095-D Available at http://www.t10.org

Specification Overview

February 19, 2010

MSCO Revision 1.4

2 Subclass Codes
The Interface Descriptor of a USB Mass Storage Class device includes a bInterfaceSubClass field. This field denotes the industry-standard command set transported by a Mass Storage Class interface. The value of the bInterfaceSubClass field shall be set to one of the Subclass codes as shown in table 1. The Subclass code values used in the bInterfaceSubClass field specify the industry-standard specification that defines transport command sets transported by the interface; these Subclass codes do not specify a type of storage device (such as a CD-ROM or floppy disk drive). Table 1 SubClass Codes Mapped to Command Block Specifications Subclass Command Block Specification 00h SCSI command set not reported De facto use 01h 02h 03h 04h 05h RBC MMC-5 (ATAPI) Obsolete UFI Obsolete Allocated by USB-IF for RBC. RBC is defined outside of USB. Allocated by USB-IF for MMC-5. MMC-5 is defined outside of USB. Was QIC-157 Specifies how to interface Floppy Disk Drives to USB Was SFF-8070i Comment

06h SCSI transparent command set Allocated by USB-IF for SCSI. SCSI standards are defined outside of USB. 07h 08h 09h - FEh FFh LSD FS IEEE 1667 Reserved Specific to device vendor LSDFS specifies how host has to negotiate access before trying SCSI Allocated by USB-IF for IEEE 1667. IEEE 1667 is defined outside of USB. Reserved De facto use

Specification Overview

MSCO Revision 1.4

February 19, 2010

3 Protocol Codes
The Interface Descriptor of a USB Mass Storage Class device includes a bInterfaceProtocol field. This field denotes the transport protocol used by this interface. Table 2 Mass Storage Transport Protocol bInterfaceProtocol 00h Protocol Implementation CBI (with command completion interrupt) Comment USB Mass Storage Class Control/Bulk/Interrupt (CBI) Transport

01h CBI (with no command completion interrupt) USB Mass Storage Class Control/Bulk/Interrupt (CBI) Transport 02h 03h-4Fh 50h 51h - 61h 62h 63h-FEh FFh Obsolete Reserved BBB Reserved UAS Reserved Specific to device vendor Reserved USB Mass Storage Class Bulk-Only (BBB) Transport Reserved Allocated by USB-IF for UAS. UAS is defined outside of USB. Reserved De facto use

The USB Mass Storage Class Control/Bulk/Interrupt (CBI) Transport specification (Protocol codes 0x00 and 0x01) is approved for use only with full-speed floppy disk drives. CBI shall not be used in high-speed capable devices, or in devices other than floppy disk drives. Usage of CBI for any new design is discouraged.

Specification Overview

February 19, 2010

MSCO Revision 1.4

4 Request Codes
Core USB specifies that a USB control Request addressed to wIndex = bInterfaceNumber of a USB Mass Storage Class device interface includes a bRequest field. The meaning of the bRequest code is specific to the device vendor when the bmRequestType. Type is Vendor, but the meaning of the bRequest code is specific to the interface class when the bmRequestType.Type is Class. Table 3 Mass Storage Request Codes bRequest 00h Name Accept Device-Specific Command (ADSC) Reserved Reserved Get Requests Put Requests Get Max LUN (GML) Bulk-Only Mass Storage Reset (BOMSR) Comment Assigned in context by USB Mass Storage Class Control/Bulk/Interrupt (CBI) Transport, also aliases core USB request 00h Get Status. Aliases of core USB bRequest codes Reserved Assigned by Lockable Storage Devices Feature Specification Assigned by Lockable Storage Devices Feature Specification Assigned by USB Mass Storage Class Bulk-Only (BBB) Transport Assigned by USB Mass Storage Class Bulk-Only (BBB) Transport

01h - 0Dh 0Eh - FBh FCh FDh FEh FFh

Specification Overview

MSCO Revision 1.4

February 19, 2010

5 Class Specific Descriptor Codes


Some Mass Storage subclass and protocol specifications require class specific descriptors. Table 4 lists the class specific descriptors used by the Mass Storage Class. Table 4 Mass Storage Class Specific Descriptors Descriptor Code 00h - 23h 24h 25h - FFh Pipe Usage Class Specific Descriptor Name Comment Not defined by Mass Storage Allocated by USB-IF for UAS. UAS is defined outside of USB. Not defined by Mass Storage

Specification Overview

You might also like