root / hw / scsi-defs.h @ 7157e2e2
History | View | Annotate | Download (5 kB)
1 | 0d65e1f8 | Gerd Hoffmann | /* Copyright (C) 1998, 1999 Free Software Foundation, Inc.
|
---|---|---|---|
2 | 0d65e1f8 | Gerd Hoffmann | This file is part of the GNU C Library.
|
3 | 0d65e1f8 | Gerd Hoffmann | |
4 | 0d65e1f8 | Gerd Hoffmann | The GNU C Library is free software; you can redistribute it and/or
|
5 | 0d65e1f8 | Gerd Hoffmann | modify it under the terms of the GNU Lesser General Public
|
6 | 0d65e1f8 | Gerd Hoffmann | License as published by the Free Software Foundation; either
|
7 | 0d65e1f8 | Gerd Hoffmann | version 2.1 of the License, or (at your option) any later version.
|
8 | 0d65e1f8 | Gerd Hoffmann | |
9 | 0d65e1f8 | Gerd Hoffmann | The GNU C Library is distributed in the hope that it will be useful,
|
10 | 0d65e1f8 | Gerd Hoffmann | but WITHOUT ANY WARRANTY; without even the implied warranty of
|
11 | 0d65e1f8 | Gerd Hoffmann | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
12 | 0d65e1f8 | Gerd Hoffmann | Lesser General Public License for more details.
|
13 | 0d65e1f8 | Gerd Hoffmann | |
14 | 0d65e1f8 | Gerd Hoffmann | You should have received a copy of the GNU Lesser General Public
|
15 | 70539e18 | Blue Swirl | License along with this library; if not, see <http://www.gnu.org/licenses/>.
|
16 | 70539e18 | Blue Swirl | */
|
17 | 0d65e1f8 | Gerd Hoffmann | |
18 | 0d65e1f8 | Gerd Hoffmann | /*
|
19 | 0d65e1f8 | Gerd Hoffmann | * This header file contains public constants and structures used by
|
20 | 0d65e1f8 | Gerd Hoffmann | * the scsi code for linux.
|
21 | 0d65e1f8 | Gerd Hoffmann | */
|
22 | 0d65e1f8 | Gerd Hoffmann | |
23 | 0d65e1f8 | Gerd Hoffmann | /*
|
24 | 0d65e1f8 | Gerd Hoffmann | * SCSI opcodes
|
25 | 0d65e1f8 | Gerd Hoffmann | */
|
26 | 0d65e1f8 | Gerd Hoffmann | |
27 | 0d65e1f8 | Gerd Hoffmann | #define TEST_UNIT_READY 0x00 |
28 | 0d65e1f8 | Gerd Hoffmann | #define REZERO_UNIT 0x01 |
29 | 0d65e1f8 | Gerd Hoffmann | #define REQUEST_SENSE 0x03 |
30 | 0d65e1f8 | Gerd Hoffmann | #define FORMAT_UNIT 0x04 |
31 | 0d65e1f8 | Gerd Hoffmann | #define READ_BLOCK_LIMITS 0x05 |
32 | 0d65e1f8 | Gerd Hoffmann | #define REASSIGN_BLOCKS 0x07 |
33 | 0d65e1f8 | Gerd Hoffmann | #define READ_6 0x08 |
34 | 0d65e1f8 | Gerd Hoffmann | #define WRITE_6 0x0a |
35 | 0d65e1f8 | Gerd Hoffmann | #define SEEK_6 0x0b |
36 | 0d65e1f8 | Gerd Hoffmann | #define READ_REVERSE 0x0f |
37 | 0d65e1f8 | Gerd Hoffmann | #define WRITE_FILEMARKS 0x10 |
38 | 0d65e1f8 | Gerd Hoffmann | #define SPACE 0x11 |
39 | 0d65e1f8 | Gerd Hoffmann | #define INQUIRY 0x12 |
40 | 0d65e1f8 | Gerd Hoffmann | #define RECOVER_BUFFERED_DATA 0x14 |
41 | 0d65e1f8 | Gerd Hoffmann | #define MODE_SELECT 0x15 |
42 | 0d65e1f8 | Gerd Hoffmann | #define RESERVE 0x16 |
43 | 0d65e1f8 | Gerd Hoffmann | #define RELEASE 0x17 |
44 | 0d65e1f8 | Gerd Hoffmann | #define COPY 0x18 |
45 | 0d65e1f8 | Gerd Hoffmann | #define ERASE 0x19 |
46 | 0d65e1f8 | Gerd Hoffmann | #define MODE_SENSE 0x1a |
47 | 0d65e1f8 | Gerd Hoffmann | #define START_STOP 0x1b |
48 | 0d65e1f8 | Gerd Hoffmann | #define RECEIVE_DIAGNOSTIC 0x1c |
49 | 0d65e1f8 | Gerd Hoffmann | #define SEND_DIAGNOSTIC 0x1d |
50 | 0d65e1f8 | Gerd Hoffmann | #define ALLOW_MEDIUM_REMOVAL 0x1e |
51 | 0d65e1f8 | Gerd Hoffmann | |
52 | 0d65e1f8 | Gerd Hoffmann | #define SET_WINDOW 0x24 |
53 | 0d65e1f8 | Gerd Hoffmann | #define READ_CAPACITY 0x25 |
54 | 0d65e1f8 | Gerd Hoffmann | #define READ_10 0x28 |
55 | 0d65e1f8 | Gerd Hoffmann | #define WRITE_10 0x2a |
56 | 0d65e1f8 | Gerd Hoffmann | #define SEEK_10 0x2b |
57 | 0d65e1f8 | Gerd Hoffmann | #define WRITE_VERIFY 0x2e |
58 | 0d65e1f8 | Gerd Hoffmann | #define VERIFY 0x2f |
59 | 0d65e1f8 | Gerd Hoffmann | #define SEARCH_HIGH 0x30 |
60 | 0d65e1f8 | Gerd Hoffmann | #define SEARCH_EQUAL 0x31 |
61 | 0d65e1f8 | Gerd Hoffmann | #define SEARCH_LOW 0x32 |
62 | 0d65e1f8 | Gerd Hoffmann | #define SET_LIMITS 0x33 |
63 | 0d65e1f8 | Gerd Hoffmann | #define PRE_FETCH 0x34 |
64 | 0d65e1f8 | Gerd Hoffmann | #define READ_POSITION 0x34 |
65 | 0d65e1f8 | Gerd Hoffmann | #define SYNCHRONIZE_CACHE 0x35 |
66 | 0d65e1f8 | Gerd Hoffmann | #define LOCK_UNLOCK_CACHE 0x36 |
67 | 0d65e1f8 | Gerd Hoffmann | #define READ_DEFECT_DATA 0x37 |
68 | 0d65e1f8 | Gerd Hoffmann | #define MEDIUM_SCAN 0x38 |
69 | 0d65e1f8 | Gerd Hoffmann | #define COMPARE 0x39 |
70 | 0d65e1f8 | Gerd Hoffmann | #define COPY_VERIFY 0x3a |
71 | 0d65e1f8 | Gerd Hoffmann | #define WRITE_BUFFER 0x3b |
72 | 0d65e1f8 | Gerd Hoffmann | #define READ_BUFFER 0x3c |
73 | 0d65e1f8 | Gerd Hoffmann | #define UPDATE_BLOCK 0x3d |
74 | 0d65e1f8 | Gerd Hoffmann | #define READ_LONG 0x3e |
75 | 0d65e1f8 | Gerd Hoffmann | #define WRITE_LONG 0x3f |
76 | 0d65e1f8 | Gerd Hoffmann | #define CHANGE_DEFINITION 0x40 |
77 | 0d65e1f8 | Gerd Hoffmann | #define WRITE_SAME 0x41 |
78 | 0d65e1f8 | Gerd Hoffmann | #define READ_TOC 0x43 |
79 | 0d65e1f8 | Gerd Hoffmann | #define LOG_SELECT 0x4c |
80 | 0d65e1f8 | Gerd Hoffmann | #define LOG_SENSE 0x4d |
81 | 0d65e1f8 | Gerd Hoffmann | #define MODE_SELECT_10 0x55 |
82 | 0d65e1f8 | Gerd Hoffmann | #define RESERVE_10 0x56 |
83 | 0d65e1f8 | Gerd Hoffmann | #define RELEASE_10 0x57 |
84 | 0d65e1f8 | Gerd Hoffmann | #define MODE_SENSE_10 0x5a |
85 | 0d65e1f8 | Gerd Hoffmann | #define PERSISTENT_RESERVE_IN 0x5e |
86 | 0d65e1f8 | Gerd Hoffmann | #define PERSISTENT_RESERVE_OUT 0x5f |
87 | ea3bd56f | Christoph Hellwig | #define WRITE_SAME_16 0x93 |
88 | c7126d5b | Nicholas Bellinger | #define MAINTENANCE_IN 0xa3 |
89 | c7126d5b | Nicholas Bellinger | #define MAINTENANCE_OUT 0xa4 |
90 | 0d65e1f8 | Gerd Hoffmann | #define MOVE_MEDIUM 0xa5 |
91 | 0d65e1f8 | Gerd Hoffmann | #define READ_12 0xa8 |
92 | 0d65e1f8 | Gerd Hoffmann | #define WRITE_12 0xaa |
93 | 0d65e1f8 | Gerd Hoffmann | #define WRITE_VERIFY_12 0xae |
94 | 0d65e1f8 | Gerd Hoffmann | #define SEARCH_HIGH_12 0xb0 |
95 | 0d65e1f8 | Gerd Hoffmann | #define SEARCH_EQUAL_12 0xb1 |
96 | 0d65e1f8 | Gerd Hoffmann | #define SEARCH_LOW_12 0xb2 |
97 | 0d65e1f8 | Gerd Hoffmann | #define READ_ELEMENT_STATUS 0xb8 |
98 | 0d65e1f8 | Gerd Hoffmann | #define SEND_VOLUME_TAG 0xb6 |
99 | 0d65e1f8 | Gerd Hoffmann | #define WRITE_LONG_2 0xea |
100 | 0d65e1f8 | Gerd Hoffmann | |
101 | 0d65e1f8 | Gerd Hoffmann | /* from hw/scsi-generic.c */
|
102 | 0d65e1f8 | Gerd Hoffmann | #define REWIND 0x01 |
103 | 0d65e1f8 | Gerd Hoffmann | #define REPORT_DENSITY_SUPPORT 0x44 |
104 | 38215553 | Gerd Hoffmann | #define GET_CONFIGURATION 0x46 |
105 | bd536cf3 | Gerd Hoffmann | #define READ_16 0x88 |
106 | bd536cf3 | Gerd Hoffmann | #define WRITE_16 0x8a |
107 | bd536cf3 | Gerd Hoffmann | #define WRITE_VERIFY_16 0x8e |
108 | 5dd90e2a | Gerd Hoffmann | #define SERVICE_ACTION_IN 0x9e |
109 | 39ec9a50 | Gerd Hoffmann | #define REPORT_LUNS 0xa0 |
110 | 0d65e1f8 | Gerd Hoffmann | #define LOAD_UNLOAD 0xa6 |
111 | 0d65e1f8 | Gerd Hoffmann | #define SET_CD_SPEED 0xbb |
112 | 0d65e1f8 | Gerd Hoffmann | #define BLANK 0xa1 |
113 | 0d65e1f8 | Gerd Hoffmann | |
114 | 0d65e1f8 | Gerd Hoffmann | /*
|
115 | f0171327 | Hannes Reinecke | * SAM Status codes
|
116 | 0d65e1f8 | Gerd Hoffmann | */
|
117 | 0d65e1f8 | Gerd Hoffmann | |
118 | 0d65e1f8 | Gerd Hoffmann | #define GOOD 0x00 |
119 | f0171327 | Hannes Reinecke | #define CHECK_CONDITION 0x02 |
120 | f0171327 | Hannes Reinecke | #define CONDITION_GOOD 0x04 |
121 | f0171327 | Hannes Reinecke | #define BUSY 0x08 |
122 | f0171327 | Hannes Reinecke | #define INTERMEDIATE_GOOD 0x10 |
123 | f0171327 | Hannes Reinecke | #define INTERMEDIATE_C_GOOD 0x14 |
124 | f0171327 | Hannes Reinecke | #define RESERVATION_CONFLICT 0x18 |
125 | f0171327 | Hannes Reinecke | #define COMMAND_TERMINATED 0x22 |
126 | f0171327 | Hannes Reinecke | #define TASK_SET_FULL 0x28 |
127 | f0171327 | Hannes Reinecke | #define ACA_ACTIVE 0x30 |
128 | f0171327 | Hannes Reinecke | #define TASK_ABORTED 0x40 |
129 | 0d65e1f8 | Gerd Hoffmann | |
130 | 0d65e1f8 | Gerd Hoffmann | #define STATUS_MASK 0x3e |
131 | 0d65e1f8 | Gerd Hoffmann | |
132 | 0d65e1f8 | Gerd Hoffmann | /*
|
133 | 0d65e1f8 | Gerd Hoffmann | * SENSE KEYS
|
134 | 0d65e1f8 | Gerd Hoffmann | */
|
135 | 0d65e1f8 | Gerd Hoffmann | |
136 | 0d65e1f8 | Gerd Hoffmann | #define NO_SENSE 0x00 |
137 | 0d65e1f8 | Gerd Hoffmann | #define RECOVERED_ERROR 0x01 |
138 | 0d65e1f8 | Gerd Hoffmann | #define NOT_READY 0x02 |
139 | 0d65e1f8 | Gerd Hoffmann | #define MEDIUM_ERROR 0x03 |
140 | 0d65e1f8 | Gerd Hoffmann | #define HARDWARE_ERROR 0x04 |
141 | 0d65e1f8 | Gerd Hoffmann | #define ILLEGAL_REQUEST 0x05 |
142 | 0d65e1f8 | Gerd Hoffmann | #define UNIT_ATTENTION 0x06 |
143 | 0d65e1f8 | Gerd Hoffmann | #define DATA_PROTECT 0x07 |
144 | 0d65e1f8 | Gerd Hoffmann | #define BLANK_CHECK 0x08 |
145 | 0d65e1f8 | Gerd Hoffmann | #define COPY_ABORTED 0x0a |
146 | 0d65e1f8 | Gerd Hoffmann | #define ABORTED_COMMAND 0x0b |
147 | 0d65e1f8 | Gerd Hoffmann | #define VOLUME_OVERFLOW 0x0d |
148 | 0d65e1f8 | Gerd Hoffmann | #define MISCOMPARE 0x0e |
149 | 0d65e1f8 | Gerd Hoffmann | |
150 | 0d65e1f8 | Gerd Hoffmann | |
151 | 0d65e1f8 | Gerd Hoffmann | /*
|
152 | 0d65e1f8 | Gerd Hoffmann | * DEVICE TYPES
|
153 | 0d65e1f8 | Gerd Hoffmann | */
|
154 | 0d65e1f8 | Gerd Hoffmann | |
155 | 0d65e1f8 | Gerd Hoffmann | #define TYPE_DISK 0x00 |
156 | 0d65e1f8 | Gerd Hoffmann | #define TYPE_TAPE 0x01 |
157 | 0d65e1f8 | Gerd Hoffmann | #define TYPE_PROCESSOR 0x03 /* HP scanners use this */ |
158 | 0d65e1f8 | Gerd Hoffmann | #define TYPE_WORM 0x04 /* Treated as ROM by our system */ |
159 | 0d65e1f8 | Gerd Hoffmann | #define TYPE_ROM 0x05 |
160 | 0d65e1f8 | Gerd Hoffmann | #define TYPE_SCANNER 0x06 |
161 | 0d65e1f8 | Gerd Hoffmann | #define TYPE_MOD 0x07 /* Magneto-optical disk - |
162 | 0d65e1f8 | Gerd Hoffmann | * - treated as TYPE_DISK */
|
163 | 0d65e1f8 | Gerd Hoffmann | #define TYPE_MEDIUM_CHANGER 0x08 |
164 | 0d65e1f8 | Gerd Hoffmann | #define TYPE_ENCLOSURE 0x0d /* Enclosure Services Device */ |
165 | 0d65e1f8 | Gerd Hoffmann | #define TYPE_NO_LUN 0x7f |