xref: /onnv-gate/usr/src/uts/common/sys/scsi/adapters/pmcs/ata8-acs.h (revision 10696:cd0f390dd9e2)
1*10696SDavid.Hollister@Sun.COM /*
2*10696SDavid.Hollister@Sun.COM  * CDDL HEADER START
3*10696SDavid.Hollister@Sun.COM  *
4*10696SDavid.Hollister@Sun.COM  * The contents of this file are subject to the terms of the
5*10696SDavid.Hollister@Sun.COM  * Common Development and Distribution License (the "License").
6*10696SDavid.Hollister@Sun.COM  * You may not use this file except in compliance with the License.
7*10696SDavid.Hollister@Sun.COM  *
8*10696SDavid.Hollister@Sun.COM  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*10696SDavid.Hollister@Sun.COM  * or http://www.opensolaris.org/os/licensing.
10*10696SDavid.Hollister@Sun.COM  * See the License for the specific language governing permissions
11*10696SDavid.Hollister@Sun.COM  * and limitations under the License.
12*10696SDavid.Hollister@Sun.COM  *
13*10696SDavid.Hollister@Sun.COM  * When distributing Covered Code, include this CDDL HEADER in each
14*10696SDavid.Hollister@Sun.COM  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15*10696SDavid.Hollister@Sun.COM  * If applicable, add the following below this CDDL HEADER, with the
16*10696SDavid.Hollister@Sun.COM  * fields enclosed by brackets "[]" replaced with your own identifying
17*10696SDavid.Hollister@Sun.COM  * information: Portions Copyright [yyyy] [name of copyright owner]
18*10696SDavid.Hollister@Sun.COM  *
19*10696SDavid.Hollister@Sun.COM  * CDDL HEADER END
20*10696SDavid.Hollister@Sun.COM  *
21*10696SDavid.Hollister@Sun.COM  *
22*10696SDavid.Hollister@Sun.COM  * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
23*10696SDavid.Hollister@Sun.COM  * Use is subject to license terms.
24*10696SDavid.Hollister@Sun.COM  */
25*10696SDavid.Hollister@Sun.COM /*
26*10696SDavid.Hollister@Sun.COM  * ATA8-ACS Definitions (subset) Working Draft AT Attachment 8 - ATA/ATAPI
27*10696SDavid.Hollister@Sun.COM  * Command Set (D1699r4c)
28*10696SDavid.Hollister@Sun.COM  */
29*10696SDavid.Hollister@Sun.COM #ifndef	_ATA8_ACS_H
30*10696SDavid.Hollister@Sun.COM #define	_ATA8_ACS_H
31*10696SDavid.Hollister@Sun.COM #ifdef	__cplusplus
32*10696SDavid.Hollister@Sun.COM extern "C" {
33*10696SDavid.Hollister@Sun.COM #endif
34*10696SDavid.Hollister@Sun.COM 
35*10696SDavid.Hollister@Sun.COM /*
36*10696SDavid.Hollister@Sun.COM  * ATA Command Set
37*10696SDavid.Hollister@Sun.COM  */
38*10696SDavid.Hollister@Sun.COM enum ata_opcode {
39*10696SDavid.Hollister@Sun.COM 	ATA_NOP					= 0x00,
40*10696SDavid.Hollister@Sun.COM 	CFA_REQUEST_EXTENDED_ERROR		= 0x03,
41*10696SDavid.Hollister@Sun.COM 	DEVICE_RESET				= 0x08,
42*10696SDavid.Hollister@Sun.COM 	READ_SECTORS				= 0x20,
43*10696SDavid.Hollister@Sun.COM 	READ_SECTORS_EXT			= 0x24,
44*10696SDavid.Hollister@Sun.COM 	READ_DMA_EXT				= 0x25,
45*10696SDavid.Hollister@Sun.COM 	READ_DMA_QUEUED_EXT			= 0x26,
46*10696SDavid.Hollister@Sun.COM 	READ_NATIVE_MAX_ADDRESS_EXT		= 0x27,
47*10696SDavid.Hollister@Sun.COM 	READ_MULTIPLE_EXT			= 0x29,
48*10696SDavid.Hollister@Sun.COM 	READ_STREAM_DMA_EXT			= 0x2A,
49*10696SDavid.Hollister@Sun.COM 	READ_STREAM_EXT				= 0x2B,
50*10696SDavid.Hollister@Sun.COM 	READ_LOG_EXT				= 0x2F,
51*10696SDavid.Hollister@Sun.COM 	WRITE_SECTORS				= 0x30,
52*10696SDavid.Hollister@Sun.COM 	WRITE_SECTORS_EXT			= 0x34,
53*10696SDavid.Hollister@Sun.COM 	WRITE_DMA_EXT				= 0x35,
54*10696SDavid.Hollister@Sun.COM 	WRITE_DMA_QUEUED_EXT			= 0x36,
55*10696SDavid.Hollister@Sun.COM 	SET_MAX_ADDRESS_EXT			= 0x37,
56*10696SDavid.Hollister@Sun.COM 	CFA_WRITE_SECTORS_WITHOUT_ERASE		= 0x38,
57*10696SDavid.Hollister@Sun.COM 	WRITE_MULTIPLE_EXT			= 0x39,
58*10696SDavid.Hollister@Sun.COM 	WRITE_STREAM_DMA_EXT			= 0x3A,
59*10696SDavid.Hollister@Sun.COM 	WRITE_STREAM_EXT			= 0x3B,
60*10696SDavid.Hollister@Sun.COM 	WRITE_DMA_FUA_EXT			= 0x3D,
61*10696SDavid.Hollister@Sun.COM 	WRITE_DMA_QUEUED_FUA_EXT		= 0x3E,
62*10696SDavid.Hollister@Sun.COM 	WRITE_LOG_EXT				= 0x3F,
63*10696SDavid.Hollister@Sun.COM 	READ_VERIFY_SECTORS			= 0x40,
64*10696SDavid.Hollister@Sun.COM 	READ_VERIFY_SECTORS_EXT			= 0x42,
65*10696SDavid.Hollister@Sun.COM 	WRITE_UNCORRECTABLE_EXT			= 0x45,
66*10696SDavid.Hollister@Sun.COM 	READ_LOG_DMA_EXT			= 0x47,
67*10696SDavid.Hollister@Sun.COM 	CONFIGURE_STREAM			= 0x51,
68*10696SDavid.Hollister@Sun.COM 	WRITE_LOG_DMA_EXT			= 0x57,
69*10696SDavid.Hollister@Sun.COM 	TRUSTED_NON_DATA			= 0x5B,
70*10696SDavid.Hollister@Sun.COM 	TRUSTED_RECEIVE				= 0x5C,
71*10696SDavid.Hollister@Sun.COM 	TRUSTED_RECEIVE_DMA			= 0x5D,
72*10696SDavid.Hollister@Sun.COM 	TRUSTED_SEND				= 0x5E,
73*10696SDavid.Hollister@Sun.COM 	TRUSTED_SEND_DMA			= 0x5E,
74*10696SDavid.Hollister@Sun.COM 	READ_FPDMA_QUEUED			= 0x60,
75*10696SDavid.Hollister@Sun.COM 	WRITE_FPDMA_QUEUED			= 0x61,
76*10696SDavid.Hollister@Sun.COM 	CFA_TRANSLATE_SECTOR			= 0x87,
77*10696SDavid.Hollister@Sun.COM 	EXECUTE_DEVICE_DIAGNOSTIC		= 0x90,
78*10696SDavid.Hollister@Sun.COM 	DOWNLOAD_MICROCODE			= 0x92,
79*10696SDavid.Hollister@Sun.COM 	PACKET					= 0xA0,
80*10696SDavid.Hollister@Sun.COM 	IDENTIFY_PACKET_DEVICE			= 0xA1,
81*10696SDavid.Hollister@Sun.COM 	SERVICE					= 0xA2,
82*10696SDavid.Hollister@Sun.COM 	SMART					= 0xB0,
83*10696SDavid.Hollister@Sun.COM 	DEVICE_CONFIGURATION_OVERLAY		= 0xB1,
84*10696SDavid.Hollister@Sun.COM 	NV_CACHE				= 0xB6,
85*10696SDavid.Hollister@Sun.COM 	CFA_ERASE_SECTORS			= 0xC0,
86*10696SDavid.Hollister@Sun.COM 	READ_MULTIPLE				= 0xC4,
87*10696SDavid.Hollister@Sun.COM 	WRITE_MULTIPLE				= 0xC5,
88*10696SDavid.Hollister@Sun.COM 	SET_MULTIPLE_MODE			= 0xC6,
89*10696SDavid.Hollister@Sun.COM 	READ_DMA_QUEUED				= 0xC7,
90*10696SDavid.Hollister@Sun.COM 	READ_DMA				= 0xC8,
91*10696SDavid.Hollister@Sun.COM 	WRITE_DMA				= 0xCA,
92*10696SDavid.Hollister@Sun.COM 	WRITE_DMA_QUEUED			= 0xCC,
93*10696SDavid.Hollister@Sun.COM 	CFA_WRITE_MULTIPLE_WITHOUT_ERASE	= 0xCD,
94*10696SDavid.Hollister@Sun.COM 	WRITE_MULTIPLE_FUA_EXT			= 0xCE,
95*10696SDavid.Hollister@Sun.COM 	CHECK_MEDIA_CARD_TYPE			= 0xD1,
96*10696SDavid.Hollister@Sun.COM 	STANDBY_IMMEDIATE			= 0xE0,
97*10696SDavid.Hollister@Sun.COM 	IDLE_IMMEDIATE				= 0xE1,
98*10696SDavid.Hollister@Sun.COM 	STANDBY					= 0xE2,
99*10696SDavid.Hollister@Sun.COM 	IDLE					= 0xE3,
100*10696SDavid.Hollister@Sun.COM 	ATA_READ_BUFFER				= 0xE4,
101*10696SDavid.Hollister@Sun.COM 	CHECK_POWER_MODE			= 0xE5,
102*10696SDavid.Hollister@Sun.COM 	SLEEP					= 0xE6,
103*10696SDavid.Hollister@Sun.COM 	FLUSH_CACHE				= 0xE7,
104*10696SDavid.Hollister@Sun.COM 	ATA_WRITE_BUFFER			= 0xE8,
105*10696SDavid.Hollister@Sun.COM 	FLUSH_CACHE_EXT				= 0xEA,
106*10696SDavid.Hollister@Sun.COM 	IDENTIFY_DEVICE				= 0xEC,
107*10696SDavid.Hollister@Sun.COM 	MEDIA_EJECT				= 0xED,
108*10696SDavid.Hollister@Sun.COM 	SET_FEATURES				= 0xEF,
109*10696SDavid.Hollister@Sun.COM 	SECURITY_SET_PASSWORD			= 0xF1,
110*10696SDavid.Hollister@Sun.COM 	SECURITY_UNLOCK				= 0xF2,
111*10696SDavid.Hollister@Sun.COM 	SECURITY_ERASE_PREPARE			= 0xF3,
112*10696SDavid.Hollister@Sun.COM 	SECURITY_ERASE_UNIT			= 0xF4,
113*10696SDavid.Hollister@Sun.COM 	SECURITY_FREEZE_LOCK			= 0xF5,
114*10696SDavid.Hollister@Sun.COM 	SECURITY_DISABLE_PASSWORD		= 0xF6,
115*10696SDavid.Hollister@Sun.COM 	READ_NATIVE_MAX_ADDRESS			= 0xF8,
116*10696SDavid.Hollister@Sun.COM 	SET_MAX_ADDRESS				= 0xF9
117*10696SDavid.Hollister@Sun.COM };
118*10696SDavid.Hollister@Sun.COM 
119*10696SDavid.Hollister@Sun.COM #ifdef	__cplusplus
120*10696SDavid.Hollister@Sun.COM }
121*10696SDavid.Hollister@Sun.COM #endif
122*10696SDavid.Hollister@Sun.COM #endif	/* _ATA8_ACS_H */
123