Working Draft Project American National T13/1699-D Standard Revision 6a September 6, 2008 Information technology - AT Attachment 8 - ATA/ATAPI Command Set (ATA8-ACS) This is a draft proposed American National Standard of Accredited Standards Committee INCITS. As such this is not a completed standard. The T13 Technical Committee may modify this document as a result of comments received during public review and its approval as a standard. Use of the information contained here in is at your own risk. Permission is granted to members of INCITS, its technical committees, and their associated task groups to reproduce this document for the purposes of INCITS standardization activities without further permission, provided this notice is included. All other rights are reserved. Any commercial or for-profit replication or republication is prohibited. T13 Technical Editor: Curtis E. Stevens Western Digital Technologies, Inc. 20511 Lake Forest Dr. Lake Forest, Ca. 92630 USA Telephone:949-672-7933 Email: [email protected] Reference number ISO/IEC xxxx-xxx:200x ANSI INCITS 452-2008 T13/1699-D Revision 6a September 6, 2008 Points of Contact T13 Chair T13 Vice-Chair Dan Colgrove Jim Hatfield Hitachi Global Storage Technologies Seagate Technology 2903 Carmelo Dr 389 Disc Drive Henderson, NV 89502 Longmont CO 80503 Tel: 702-614-6119 Tel: 720-684-2120 Fax: 702-614-7955 Fax: 720-684-2766 INCITS Secretariat INCITS Secretariat Tel: 202-737-8888 1250 Eye Street, NW Suite 200 Fax: 202-638-4922 Washington, DC 20005 Email: [email protected] T13 Reflector See the T13 Web Site at http://www.t13.org for reflector information. T13 Web Site http://www.t13.org T13 FTP Site ftp.t13.org (see www.t13.org for login information) Document Distribution INCITS Online Store http://www.techstreet.com/incits.html managed by Techstreet Telephone: 1-734-302-7801 1327 Jones Drive or 1-800-699-9277 Ann Arbor, MI 48105 Facsimile: 1-734-302-7811 or Global Engineering http://global.ihs.com/H 15 Inverness Way East Telephone: 1-303-792-2181 Englewood, CO 80112-5704 or 1-800-854-7179 Facsimile: 1-303-792-2192 American National Standard for Information Technology ii Working Draft AT Attachment 8 - ATA/ATAPI Command Set (ATA8-ACS) September 6, 2008 T13/1699-D Revision 6a Draft Secretariat Information Technology Industry Council Approved mm.dd.yy American National Standards Institute, Inc. ABSTRACT This standard specifies the AT Attachment command set used to communicate between host systems and storage devices. This provides a common command set for systems manufacturers, system integrators, software suppliers, and suppliers of storage devices. The AT Attachment command set includes the PACKET feature set implemented by devices commonly known as ATAPI devices. This standard maintains a high degree of compatibility with the AT Attachment Interface with Packet Interface - 7 (ATA/ATAPI-7) volume 1 (see ANSI INCITS 397-2004). Draft Working Draft AT Attachment 8 - ATA/ATAPI Command Set (ATA8-ACS) iii T13/1699-D Revision 6a September 6, 2008 American Approval of an American National Standard requires verification by ANSI that the requirements for due process, consensus, and other criteria for approval have been met by National the standards developer. Consensus is established when, in the judgment of the ANSI Board of Standards Review, substantial agreement has been reached by directly and Standard materially affected interests. Substantial agreement means much more than a simple majority, but not necessarily unanimity. Consensus requires that all views and objections be considered, and that effort be made towards their resolution. The use of American National Standards is completely voluntary; their existence does not in any respect preclude anyone, whether he has approved the standards or not, from manufacturing, marketing, purchasing, or using products, processes, or procedures not conforming to the standards. The American National Standards Institute does not develop standards and will in no circumstances give interpretation on any American National Standard. Moreover, no person shall have the right or authority to issue an interpretation of an American National Standard in the name of the American National Standards Institute. Requests for interpretations should be addressed to the secretariat or sponsor whose name appears on the title page of this standard. CAUTION NOTICE: This American National Standard may be revised or withdrawn at any time. The procedures of the American National Standards Institute require that action be taken periodically to reaffirm, revise, or withdraw this standard. Purchasers of American National Standards may receive current information on all standards by calling or writing the American National Standards Institute. The patent statement goes here. If no patents have been disclosed place the statement in 5.5.2 shall be used. If any patents have been disclosed place the statement in 5.5.3 shall be used. Published by American National Standards Institute 11 W. 42nd Street, New York, New York 10036 Copyright © 2007 by Information Technology Industry Council (ITI). All rights reserved. No part of this publication may by reproduced in any form, in an electronic retrieval system or otherwise, without prior written permission of ITI, 1250 Eye Street NW, Suite 200, Washington, DC 20005. Printed in the United States of America iv Working Draft AT Attachment 8 - ATA/ATAPI Command Set (ATA8-ACS) September 6, 2008 T13/1699-D Revision 6a Document Status Document e06122 is the issues list for this draft. e06122 contains a list of the issues associated with the document, an issue number that remains assigned to the issue for the life of document development, a resolution to the issue, an owner for the issue, and a disposition for the issue. All major changes associated with this draft starting with Rev 3b are first documented in e06122 and given a number. This includes proposals which are targeted for inclusion into this draft. This text which is highlighted in green may affect backward compatibility. Revision History (part 1 of 21) Rev Date Description 0 August 17, 2004 1) Initial revision created from ATA/ATAPI-7 Volume 1 (1532D Rev 4b). 2) Removed 3 volume structure and changed abstract to reflect a command set document 3) Removed sections on signal, bit, and timing conventions 4) Removed clause 5, I/O register descriptions 5) Kept informative annex’s A-C 1 September 7, 2004 1) Restructured all commands to conform to format agreed to in e04139r4. 2) Added a section defining status bits 3) Added a section defining error bits 4) Added a section describing protocols 5) Added a section describing interrupt reason 6) Incorporated single log table e04143r0 table. Did not add wording to status that host VS pages are common between SMART and GPL. 7) Removed prohibited statements from command definitions. These reside in the feature set definitions. 1a October 6, 2004 1) Replaced duplicate Normal Outputs tables with a see clause to the first usage. 2) Replaced many Error Outputs with a see clause. 1b February 17, 2005 1) Stripped unused informative references 2) Changed the definition of ordered and unordered lists to make the numeric form ordered. 3) Changed all the lists to conform to the changes in #2 4) Reserved 5Ch-5Fh for TCG. This was done by added command headers and a reserved statement in the command section. Also marked the commands with T in the command matrix table. 5) Moved Normal and Error Outputs to their own section. Commands now have a hotlink to the tables. 6) Moved IDENTIFY (PACKET) DATA to its own section (Input Data) 7) Changed more of the titles to be consistent with the front cover. 8) Deleted unused definitions 9) Changed the General feature set to only apply to non-packet devices 10) Changed the packet feature set to include all the commands in the packet feature set. 11) The command prohibitions are now found in the feature set description and not with each command. 12) Integrated e04127r0 – This makes SATA signatures reserved with no description. Working Draft AT Attachment 8 - ATA/ATAPI Command Set (ATA8-ACS) v T13/1699-D Revision 6a September 6, 2008 Revision History (part 2 of 21) Rev Date Description 1c April 15, 2005 1) Added proposal e04143r1 – Notes that the Host Vendor Specific pages are common to both SMART READ LOG and READ LOG EXTENDED 2) Added e04130r2 – Tightens the definition of SMART first polling time. Also adds a field that enables longer times. 3) Added proposal e05103r0 – Changes the features register to log page specific for read and write log commands 4) Added e04153r1 – Historical annex of command documentation to Annex B 5) Added e05102r1 as amended – Reserves some set features and DCO fields as vendor specific 6) Added back in FEATURE SET Clause in front of the description 1d June 20, 2005 1) Added code 1Dh to IDENTFY DEVICE for ATA/ATAPI-7 Table 14. 2) Added placeholder for reporting alignment. 3) Updated SET FEATURES table 41 to include reserved entries instead of just saying all other entries are reserved. 4) Partially Incorporated e04129r5. Assigned Set Features 0Bh and 8Bh for the enable and disable capability. Had to make several modifications to the proposal to fill in missing pieces. Unable to fill in IDENTIFY DEVICE info, data is incomplete. Stopped incorporation 1e June 21, 2005 1) Modified Selective self-test description last sentence to be more clear. 2) Updated definition based on WG review. 3) Integrated e05133r3. This conflicts with the definition of IDENTIFY DEVICE which is defined to not return an error. 4) Incorporated e04129r6. Assigned IDENTIFY DEVICE words 210-213 and DCO word 7 bit 14. 1f July 5, 2005 1) Added several technical reports to the approved references. They need to be there since they are mentioned in the body of the document. 2) Updated DCO to refer to TR37 (TLC) for word 7 bit 10. 3) Updated the Scope to match ATA8-AAM 4) Replaced sector with logical sector in many places 5) Replaced all references to the Features register with features field. 6) Replaced all references to the Sector Count register with Count field. There are some places that use the count field in calculations. These places refer to the register. I have chosen to keep the word field although I think it may read better just saying count. 7) Replaced archaic references to sector number register with references to the LBA field. 8) Replaced references to LBA Low, LBA Mid, and LBA high to LBA field. 9) Replaced all references to device/head or device register 10) Deleted references to the device control register. 11) Updated overview in clause 7. 12) Updated security commands to have an output data structure where appropriate 13) Updated SETMAX commands to have an output data structure where appropriate. 14) Removed remaining hardware references from commands. Transport documents will have to reference 1e for notes on information that needs to move. This includes most references to BSY, RDY, DRQ, and bus. 15) Implemented e04161r0 (obsoleted ATAPI overlap and queue) 16) Moved host vendor specific log description into its own clause. 17) Integrated e05130r0 18) Integrated e05131r1 19) Integrated e05120r2 – Needed to add text to 4.21 to support the examples. vi Working Draft AT Attachment 8 - ATA/ATAPI Command Set (ATA8-ACS) September 6, 2008 T13/1699-D Revision 6a Revision History (part 3 of 21) Rev Date Description 2 August 22, 2005 1) Updated SET MAX ADDRESS to indicate that on drives with a capacity that is greater than 28 bits, that issues SET MAX ADDRESS to the NATIVE MAX address clears the HPA and returns the full capacity of the drive, not just 137GB. 2) Added e04132r1 – Defines sub-command 03 for download microcode 3) Incorporated e04162r0 – Obsolete Download Microcode 4) Incorporated e05151r1 – Reserve opcodes for e05106. The following resources were assigned: 1) CHECK POWER MODE normal returns 40h and 41h 2) IDENTIFY DEVICE data words 214-221 3) New opcode B6h – NV CACHE (Sorry, B8h is reserved for CFA) 4) DCO data structure Word 21 bits 14 and 15 5) Incorporated e02126r6 – WRITE UNCORRECTABLE. The following resources were assigned: 1) Opcode 45h 2) IDENTIFY DEVICE data words 119/120 bit 2 3) DCO Data word 21 bit 13 6) Modified DCO to indicate that the data is not an overlay, it is just data that can be used to enable or disable reporting of features as well as responding to features. 7) Incorporated e05127r2 – Updated the definition of the DF bit. 8) Incorporated e05129r1 – READ/WRITE LOG DMA EXT. The following resources were assigned: 1) Opcodes 47h and 57h 2) IDENTIFY DEVICE data words 119/120 bit 2 9) Incorporated e05132r1 – Report transport standard. IDENTIFY DEVICE words 222 and 223 were assigned for this purpose. 10) Incorporated e05140r0 – Media Serial Number Endianess 11) Performed a major re-work of the IDENTIFY DEVICE table data. Added a column to indicate applicable transport. 12) Received side-band E-Mail comments from [email protected] UT resulting in the following changes: 1) CFA Translate Sector Features and Count fields S/B N/A as in ATA7 2) Page number was deleted from the clause reference in 4.4.1 13) Marked bits 15:13 obsolete. This was accidently left out when e04161 was incorporated. 14) Reformatted Table 117, Table 118, Table 119, Table 120. The command code table serves as the master. All of the command codes are now listed. I believe this will cause the table to be maintained better. I also discovered some inconsistencies in the table during the reformat. 15) Performed consistency pass on command tables, several links have been corrupted. Working Draft AT Attachment 8 - ATA/ATAPI Command Set (ATA8-ACS) vii T13/1699-D Revision 6a September 6, 2008 Revision History (part 4 of 21) Rev Date Description 2a December 10, 2005 1) Added cross reference to tables. This is required since several commands point to the same tables. 2) Fixed command tables to match ATA7. 3) e05141r2 was voted in however, no document has been posted. 4) Incorporated e05162r0 5) Incorporated e05161r0 6) Incorporated e05167r0. 7) Incorporated e05109r3 as modified by Mark Evans 8) Addressed ATA/ATAPI-7 public review comment by inserting the statement “If write cache is enabled unrecoverable errors may not be reliably reported as they may occur after the completion of the command. “after the statement that says the first error block is returned in the response fields. 9) Replaced Master password with Master password as per E-Mail review comment. 10) Replaced is specified with is specified as per E-Mail review comment 2b January 10, 2006 1) Made READ and WRITE LOG EXT optional for ATAPI devices 2) Reincorporated SCT using e05109r4 3) Changed Long Segment Access to Write Same 4) Incorporated e05170r1 5) Incorporated e05154r4 6) Incorporated e05150r2 viii Working Draft AT Attachment 8 - ATA/ATAPI Command Set (ATA8-ACS) September 6, 2008 T13/1699-D Revision 6a Revision History (part 5 of 21) Rev Date Description 2c February 7, 2006 1) Changed IDENTIFY DEVICE description that involve different behavior for serial and parallel to have separate paragraphs. 2) Added change to support e04132r1. This proposal uses word 86 bit 15 to indicate support. Word 86 bit 15 has been used to indicate that words 119/120 have valid data. Support for segmented download microcode shall be indicated by words 119/120 bit 4. 3) Removed unreferenced references. I checked AAM and the referenced were duplicated there… 4) Made editorial changes based on working group review 5) Reworded all statements that included the word “will”. 6) Reworded all statements that included the word “can” 7) Was asked to reword statements with the word presently. I found none of these in the document. 8) Removed the word clause from references that were actually subclauses. Fixed the case of the word clause, there were random Clause/clause in the text. 9) Replaced all occurrences of space space with space. Then replaced all occurrences of period space with period space space. This will have the effect of making the document use the same convention for sentence completion. This was done with change bars off. 10) Removed inappropriate references to LBA Low, Mid, and High in annex D. 11) Scrubbed the word register… Most of this was just changing the word register to field. There were some usages where more extensive wording changes were required. 12) Fixed cut and paste error in WRITE STREAM DMA EXT during the incorporation of e05154. Added the description of WC and removed the description of CCTL in favor of a reference to the same description in the READ STREAM DMA EXT command. 13) Normalized Not Applicable to N/A. Replaced all na with N/A. 14) Changed “Host Shall” statements to “Host Should”. The device can not enforce a requirement on the host. The device can only respond to what it receives. Working Draft AT Attachment 8 - ATA/ATAPI Command Set (ATA8-ACS) ix T13/1699-D Revision 6a September 6, 2008 Revision History (part 6 of 21) Rev Date Description 2d February 9, 2006 1) Changed “Hosts” the “A Host”. A drive only converses with a single host. 2) Reformatted the IDENTIFY PACKET DEVICE table and added notes regarding some of the inconsistencies. 3) Added an overview subclause to clause 4. The overview includes a table which lists all the feature sets and if each feature set is option mandatory or not a part of this standard. 4) Changed the name of clause 4 to Feature set definitions 5) Merged 4.1 command delivery with the overview 6) Removed the see 4.2 in ID words 60,61 because 4.2 has been removed from the document. 7) Updated Table 6 to include READ/WRITE LOG DMA EXT. Also reformatted table to match other table formatting 8) Added MMCA and CE-ATA references 9) Reformatted approved references and references under development to use tables instead of text and tabs 10) Updated Figure 3 to include Qword. 11) Replaced occurrences of logical sector and sector with 512-byte block of data. This introduces the concept of data block which is a 512 byte fixed unit. There was a previous pass through the document that replaced sector with logical sector. However, new proposals reintroduced the ambiguity. At this point, the doc should have consistent usage of Logical sector for a unit of measure that is reflected in IDENTIFY DEVICE words (118:117). 512-byte block of data refers to transfer units that are fixed at 512 bytes regardless of logical sector size. The phrase data blocks refers to 512 byte units. Modified Table 25 - Extended Self-test log data structure. The byte numbering indicates that there can be 19 log entries, but the description indicates 18 entries 12) Modified Table 26 - Extended Self-test log descriptor entry. The vendors specific values were obviously mis numbered. The Extended Self-test log data structure indicates that there should be 26 bytes. However, the descriptor entry is only 24 bytes long. It looks like the VS bytes were added later and the ending value was not properly updated. 13) Modified the text description of ID words 83 & 86 to read Removable Media Status Notification feature set. Previously they read Removable Media Feature Set. The correct entry was in the table. Words 82 and 85 bit 2 document the removable media feature set. 14) Made minor corrections to Annex C as requested in E-Mail by Rob Elliott 1) Modified C.1 to reference ATA standards prior to ATA/ATAPI-7. The previous statement was a bit strong 2) Softened C.2 to reference Logical Sectors instead of 512-byte sectors. 3) Changed C.3 to reference the logical sector size instead of 512-byte sectors 4) Corrected an inaccuracy in C.3 figure which skipped LBA7… 15) Implemented responses to Rob Elliot comments for e06105. 16) Changed IDENTIFY DEIVCE words 85-87 to read supported instead of enabled for features that can not be disabled 17) Updated the definition of N/A 18) In 7.17.6 removed the statement that an ICRC error can occur in IDENTIFY DEVICE. ICRC for SATA has no provision to report a CRC error on one block commands or the last block of the command. 19) Made changes requested at meeting held 21-24 Feb. 20) Added minor revision for ATA8-ACSr2d. 3a March 20, 2006 1) Converted document from Word to Frame x Working Draft AT Attachment 8 - ATA/ATAPI Command Set (ATA8-ACS)
Description: