Add precautions so that threads won't race to exit1() and get stuck there.
[dragonfly.git] / share / misc / scsi_modes
blob692d7eb04bf85d6ca8d2398958d6862ea98cbd3e
1 # SCSI mode page data base.
3 # Copyright (c) 1995 HD Associates
4 # Copyright (c) 2001 The FreeBSD Project
5 # (contact: dufault@hda.com)
6 # All rights reserved.
7
8 # Redistribution and use in source and binary forms, with or without
9 # modification, are permitted provided that the following conditions
10 # are met:
11 # 1. Redistributions of source code must retain the above copyright
12 #    notice, this list of conditions and the following disclaimer.
13 # 2. Redistributions in binary form must reproduce the above copyright
14 #    notice, this list of conditions and the following disclaimer in the
15 #    documentation and/or other materials provided with the distribution.
16 # 3. The name of HD Associates
17 #    may not be used to endorse or promote products derived from this software
18 #    without specific prior written permission.
19
20 # THIS SOFTWARE IS PROVIDED BY HD ASSOCIATES ``AS IS'' AND
21 # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 # ARE DISCLAIMED.  IN NO EVENT SHALL HD ASSOCIATES BE LIABLE
24 # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25 # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26 # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27 # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 # SUCH DAMAGE.
32 # $FreeBSD: src/share/misc/scsi_modes,v 1.6.6.4 2002/03/14 16:18:48 joerg Exp $
33 # $DragonFly: src/share/misc/scsi_modes,v 1.2 2003/06/17 04:37:01 dillon Exp $
35 # The ordering is alphabetical by page name, as it appears in the SCSI spec.
37 # 'i' is a byte-sized integral types, followed by a field width of 
38 #  1 through 4 (1 to 4 bytes).
40 # 'b' is a bit-sized integral type
41 # 't' is a bitfield type- followed by a bit field width
43 # 'c' values are character arrays
44 # 'z' values are null-padded strings
47 # '*' suppresses assignment (for 'seeking').
48 # Bitfields are MSB to LSB.
51 # ALL DEVICE TYPES
53 0x0a "Control Mode Page" {
54         {Reserved} *t7
55         {RLEC} t1
56         {Queue Algorithm Modifier} t4
57         {Reserved} *t2
58         {QErr} t1
59         {DQue} t1
60         {EECA} t1
61         {Reserved} *t4
62         {RAENP} t1
63         {UAAENP} t1
64         {EAENP} t1
65         {Reserved} *i1
66         {Ready AEN Holdoff Period} i2
69 0x02 "Disconnect-Reconnect Page" {
70         {Buffer Full Ratio} i1
71         {Buffer Empty Ratio} i1
72         {Bus Inactivity Limit} i2
73         {Disconnect Time Limit} i2
74         {Connect Time Limit} i2
75         {Maximum Burst Size} i2
76         {Reserved} *t6
77         {DTDC} t2
78         {Reserved} *i1
79         {Reserved} *i1
80         {Reserved} *i1
83 0x09 "Peripheral Device Page" {
84         {Interface Identifier} i2
85         {Reserved} *i1
86         {Reserved} *i1
87         {Reserved} *i1
88         {Reserved} *i1
91 0x1a "Power Control" {
92         {Reserved} *i1
93         {Reserved} *t6
94         {Idle} t1
95         {Standby} t1
96         {Idle Condition Timer} i4
97         {Standby Condition Timer} i4
100 # DIRECT ACCESS DEVICES
101 0x08 "Caching Page" {
102         {IC} t1
103         {ABPF} t1
104         {CAP} t1
105         {DISC} t1
106         {SIZE} t1
107         {WCE} t1
108         {MF} t1
109         {RCD} t1
110         {Demand Retention Priority} t4
111         {Write Retention Priority} t4
112         {Disable Pre-fetch Transfer Length} i2
113         {Minimum Pre-fetch} i2
114         {Maximum Pre-fetch} i2
115         {Maximum Pre-fetch Ceiling} i2
118 0x05 "Flexible Disk Page" {
119         {Transfer rate} i2
120         {Number of heads} i1
121         {Sectors per track} i1
122         {Data bytes per sector} i2
123         {Number of cylinders} i2
124         {Starting cylinder-write precompensation} i2
125         {Starting cylinder-reduced write current} i2
126         {Drive step rate} i2
127         {Drive step pulse width} i1
128         {Head settle delay} i2
129         {Motor on delay} i1
130         {Motor off delay} i1
131         {TRDY} t1
132         {SSN} t1
133         {MO} t1
134         {Reserved} *t5
135         {Reserved} *t4
136         {SPC} t4
137         {Write Compensation} i1
138         {Head load delay} i1
139         {Head unload delay} i1
140         {Pin 34} t4
141         {Pin 2} t4
142         {Pin 4} t4
143         {Pin 1} t4
144         {Medium rotation rate} i2
145         {Reserved} *i1
146         {Reserved} *i1
149 0x03 "Format Device Page" {
150         {Tracks per Zone} i2
151         {Alternate Sectors per Zone} i2
152         {Alternate Tracks per Zone} i2
153         {Alternate Tracks per Logical Unit} i2
154         {Sectors per Track} i2
155         {Data Bytes per Physical Sector} i2
156         {Interleave} i2
157         {Track Skew Factor} i2
158         {Cylinder Skew Factor} i2
159         {SSEC} t1
160         {HSEC} t1
161         {RMB} t1
162         {SURF} t1
163         {Reserved} *t4
166 0x0b "Medium Types Supported Page" {
167         {Reserved} *i1
168         {Reserved} *i1
169         {Medium type one supported} i1
170         {Medium type two supported} i1
171         {Medium type three supported} i1
172         {Medium type four supported} i1
175 # Notch page (0x0c)
176 0x0c "Notch and Partition Page";
178 0x01 "Read-Write Error Recovery Page" {
179         {AWRE (Auto Write Reallocation Enbld)} t1
180         {ARRE (Auto Read Reallocation Enbld)} t1
181         {TB (Transfer Block)} t1
182         {RC (Read Continuous)} t1
183         {EER (Enable Early Recovery)} t1
184         {PER (Post Error)} t1
185         {DTE (Disable Transfer on Error)} t1
186         {DCR (Disable Correction)} t1
187         {Read Retry Count} i1
188         {Correction Span} i1
189         {Head Offset Count} i1
190         {Data Strobe Offset Count} i1
191         {Reserved} *i1
192         {Write Retry Count} i1
193         {Reserved} *i1
194         {Recovery Time Limit} i2
197 0x04 "Rigid Disk Drive Geometry Page" {
198         {Number of Cylinders} i3
199         {Number of Heads} i1
200         {Starting Cylinder-Write Precompensation} i3
201         {Starting Cylinder-Reduced Write Current} i3
202         {Drive Step Rate} i2
203         {Landing Zone Cylinder} i3
204         {Reserved} *t6
205         {RPL} t2
206         {Rotational Offset} i1
207         {Reserved} *i1
208         {Medium Rotation Rate} i2
209         {Reserved} *i1
210         {Reserved} *i1
213 0x07 "Verify Error Recovery Page" {
214         {Reserved} *t4
215         {EER} t1
216         {PER} t1
217         {DTE} t1
218         {DCR} t1
219         {Verify Retry Count} i1
220         {Verify Correction Span} i1
221         {Reserved} *i1
222         {Reserved} *i1
223         {Reserved} *i1
224         {Reserved} *i1
225         {Reserved} *i1
226         {Verify Recovery Time Limit} i2
229 0x0E "CD-ROM Audio Control Parameters Page" {
230         {Reserved} *t5
231         {Immed} t1
232         {SOTC} t1
233         {Reserved} *t1
234         {Reserved} *i2
235         {APRVal} t1
236         {Reserved} *t3
237         {Format of LBAs / sec.} t4
238         {Logical Blocks per Second of Audio Playback} i2
239         {Reserved} *t4
240         {Output Port 0 Channel Selection} t4
241         {Output Port 0 Volume} i1
242         {Reserved} *t4
243         {Output Port 1 Channel Selection} t4
244         {Output Port 1 Volume} i1
245         {Reserved} *t4
246         {Output Port 2 Channel Selection} t4
247         {Output Port 2 Volume} i1
248         {Reserved} *t4
249         {Output Port 3 Channel Selection} t4
250         {Output Port 3 Volume} i1
253 # SEQUENTIAL ACCESS DEVICES
254 0x10 "Device Configuration Page" {
255         {Reserved} *t1
256         {Change Active Partition} t1
257         {Change Active Format} t1
258         {Active Format} t5
259         {Active Partition} i1
260         {Write Buffer Full Ratio} i1
261         {Write Buffer Empty Ratio} i1
262         {Write Delay Time} i2
263         {Data Buffer Recovery} t1
264         {Block Identifiers Support} t1
265         {Report Setmarks} t1
266         {Automatic Velocity Control} t1
267         {Stop on Consecutive Filemarks} t2
268         {Recover Buffer Order} t1
269         {Report Early-Warning} t1
270         {Gap Size} i1
271         {EOD Defined} t3
272         {Enable EOD Generation} t1
273         {Synchronize at Early-Warning} t1
274         {Reserved} *t3
275         {Buffer Size at Early-Warning} i3
276         {Select Data Compression Algorithm} i1
277         {Reserved} *t5
278         {SCSI-3 Associated Write Protect} t1
279         {SCSI-3 Persistent Write Protect} t1
280         {SCSI-3 Permanent Write Protect} t1
283 0x0f "Data Compression Page" {
284         {Data Compression Enabled} t1
285         {Date Compression Capable} t1
286         {Reserved} *t6
287         {Data Decompression Capable} t1
288         {Data Decompression Report on Exception} t2
289         {Reserved} *t5
290         {Compression Algorithm} i4
291         {Decompression Algorithm} i4
292         {Reserved} *i4
295 # CD-ROM (and CD-R[W]) devices
296 0x2a "CD capabilities and mechanical status page" {
297         {Reserved} *t4
298         {Method 2} t1
299         {CD-RW Read} t1
300         {CD-R Read} t1
301         {Reserved} *t4
302         {Test Write} t1
303         {CD-RW Write} t1
304         {CD-R Write} t1
305         {Reserved} *t1
306         {Multi Session} t1
307         {Mode 2 Form 2} t1
308         {Mode 2 Form 1} t1
309         {Digital Port (2)} t1
310         {Digital Port (1)} t1
311         {Composite} t1
312         {Audio Play} t1
313         {Read Bar Code} t1
314         {UPC} t1
315         {ISRC} t1
316         {C2 Pointers are supported} t1
317         {R-W De-interleaved & corrected} t1
318         {R-W Supported} t1
319         {CD-DA Stream is Accurate} t1
320         {CD-DA Commands Supported} t1
321         {Loading Mechanism Type} t3
322         {Reserved} *t1
323         {Eject} t1
324         {Prevent Jumper} t1
325         {Lock State} t1
326         {Lock} t1
327         {Reserved} *t4
328         {S/W Slot Selection} t1
329         {Changer Supports Disc Present reporting} t1
330         {Separate Channel Mute Supported} t1
331         {Separate volume levels per channel} t1
332         {Maximum Read Speed Supported (kBps)} i2
333         {Number of Volume Leves Supported} i2
334         {Buffer Size supported by Drive (KB)} i2
335         {Current Read Speed Selected (kBps)} i2
336         {Reserved} *i1
337         {Reserved} *t2
338         {Length} t2
339         {LSBF} t1
340         {RCK} t1
341         {BCK} t1
342         {Reserved} *t1
343         {Maximum Write Speed Supported (kBps)} i2
344         {Current Write Speed Supported (kBps)} i2
347 0x00 "Vendor-Specific";