xref: /freebsd/share/misc/scsi_modes (revision b1f9167f94059fd55c630891d359bcff987bd7eb)
1# SCSI mode page data base.
2
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.
31#
32# $FreeBSD$
33#
34# The ordering is alphabetical by page name, as it appears in the SCSI spec.
35
36# 'i' is a byte-sized integral types, followed by a field width of
37#  1 through 4 (1 to 4 bytes).
38#
39# 'b' is a bit-sized integral type
40# 't' is a bitfield type- followed by a bit field width
41#
42# 'c' values are character arrays
43# 'z' values are null-padded strings
44#
45#
46# '*' suppresses assignment (for 'seeking').
47# Bitfields are MSB to LSB.
48
49
50# ALL DEVICE TYPES
51
520x0a "Control Mode Page" {
53	{TST} t3
54	{TMF_ONLY} t1
55	{DPICZ} t1
56	{D_SENSE} t1
57	{GLTSD} t1
58	{RLEC} t1
59	{Queue Algorithm Modifier} t4
60	{NUAR} t1
61	{QErr} t2
62	{DQue} t1
63	{EECA} t1
64	{RAC} t1
65	{UA_INTLCK_CTRL} t2
66	{SWP} t1
67	{RAENP} t1
68	{UAAENP} t1
69	{EAENP} t1
70	{ATO} t1
71	{TAS} t1
72	{ATMPE} t1
73	{RWWP} t1
74	{Reserved} *t1
75	{Autoload Mode} t3
76	{Ready AEN Holdoff Period} i2
77	{Busy Timeout Period} i2
78	{Extended Self-Test Completion Time} i2
79}
80
810x02 "Disconnect-Reconnect Page" {
82	{Buffer Full Ratio} i1
83	{Buffer Empty Ratio} i1
84	{Bus Inactivity Limit} i2
85	{Disconnect Time Limit} i2
86	{Connect Time Limit} i2
87	{Maximum Burst Size} i2
88	{Reserved} *t6
89	{DTDC} t2
90	{Reserved} *i1
91	{Reserved} *i1
92	{Reserved} *i1
93}
94
950x15 "Extended Page";
96
970x16 "Extended Device-Type Specific Page";
98
990x1c "Informational Exceptions Control Page" {
100	{PERF} t1
101	{Reserved} *t1
102	{EBF} t1
103	{EWasc} t1
104	{DExcpt} t1
105	{TEST} t1
106	{EBACKERR} t1
107	{LogErr} t1
108	{Reserved} *t4
109	{MRIE} b4
110	{Interval Timer} i4
111	{Report Count} i4
112}
113
1140x09 "Peripheral Device Page" {
115	{Interface Identifier} i2
116	{Reserved} *i1
117	{Reserved} *i1
118	{Reserved} *i1
119	{Reserved} *i1
120}
121
1220x1a "Power Condition Page" {
123	{Reserved} *i1
124	{Reserved} *t6
125	{Idle} t1
126	{Standby} t1
127	{Idle Condition Timer} i4
128	{Standby Condition Timer} i4
129}
130
1310x18 "Protocol-Specific LUN Page";
132
1330x19 "Protocol-Specific Port Page";
134
135# DIRECT ACCESS DEVICES
1360x08 "Caching Page" {
137	{IC} t1
138	{ABPF} t1
139	{CAP} t1
140	{DISC} t1
141	{SIZE} t1
142	{WCE} t1
143	{MF} t1
144	{RCD} t1
145	{Demand Retention Priority} t4
146	{Write Retention Priority} t4
147	{Disable Pre-fetch Transfer Length} i2
148	{Minimum Pre-fetch} i2
149	{Maximum Pre-fetch} i2
150	{Maximum Pre-fetch Ceiling} i2
151}
152
1530x05 "Flexible Disk Page" {
154	{Transfer rate} i2
155	{Number of heads} i1
156	{Sectors per track} i1
157	{Data bytes per sector} i2
158	{Number of cylinders} i2
159	{Starting cylinder-write precompensation} i2
160	{Starting cylinder-reduced write current} i2
161	{Drive step rate} i2
162	{Drive step pulse width} i1
163	{Head settle delay} i2
164	{Motor on delay} i1
165	{Motor off delay} i1
166	{TRDY} t1
167	{SSN} t1
168	{MO} t1
169	{Reserved} *t5
170	{Reserved} *t4
171	{SPC} t4
172	{Write Compensation} i1
173	{Head load delay} i1
174	{Head unload delay} i1
175	{Pin 34} t4
176	{Pin 2} t4
177	{Pin 4} t4
178	{Pin 1} t4
179	{Medium rotation rate} i2
180	{Reserved} *i1
181	{Reserved} *i1
182}
183
1840x03 "Format Device Page" {
185	{Tracks per Zone} i2
186	{Alternate Sectors per Zone} i2
187	{Alternate Tracks per Zone} i2
188	{Alternate Tracks per Logical Unit} i2
189	{Sectors per Track} i2
190	{Data Bytes per Physical Sector} i2
191	{Interleave} i2
192	{Track Skew Factor} i2
193	{Cylinder Skew Factor} i2
194	{SSEC} t1
195	{HSEC} t1
196	{RMB} t1
197	{SURF} t1
198	{Reserved} *t4
199}
200
2010x0b "Medium Types Supported Page" {
202	{Reserved} *i1
203	{Reserved} *i1
204	{Medium type one supported} i1
205	{Medium type two supported} i1
206	{Medium type three supported} i1
207	{Medium type four supported} i1
208}
209
210# Notch page (0x0c)
2110x0c "Notch and Partition Page";
212
2130x01 "Read-Write Error Recovery Page" {
214	{AWRE (Auto Write Reallocation Enbld)} t1
215	{ARRE (Auto Read Reallocation Enbld)} t1
216	{TB (Transfer Block)} t1
217	{RC (Read Continuous)} t1
218	{EER (Enable Early Recovery)} t1
219	{PER (Post Error)} t1
220	{DTE (Disable Transfer on Error)} t1
221	{DCR (Disable Correction)} t1
222	{Read Retry Count} i1
223	{Correction Span} i1
224	{Head Offset Count} i1
225	{Data Strobe Offset Count} i1
226	{Reserved} *i1
227	{Write Retry Count} i1
228	{Reserved} *i1
229	{Recovery Time Limit} i2
230}
231
2320x04 "Rigid Disk Drive Geometry Page" {
233	{Number of Cylinders} i3
234	{Number of Heads} i1
235	{Starting Cylinder-Write Precompensation} i3
236	{Starting Cylinder-Reduced Write Current} i3
237	{Drive Step Rate} i2
238	{Landing Zone Cylinder} i3
239	{Reserved} *t6
240	{RPL} t2
241	{Rotational Offset} i1
242	{Reserved} *i1
243	{Medium Rotation Rate} i2
244	{Reserved} *i1
245	{Reserved} *i1
246}
247
2480x07 "Verify Error Recovery Page" {
249	{Reserved} *t4
250	{EER} t1
251	{PER} t1
252	{DTE} t1
253	{DCR} t1
254	{Verify Retry Count} i1
255	{Verify Correction Span} i1
256	{Reserved} *i1
257	{Reserved} *i1
258	{Reserved} *i1
259	{Reserved} *i1
260	{Reserved} *i1
261	{Verify Recovery Time Limit} i2
262}
263
2640x0E "CD-ROM Audio Control Parameters Page" {
265	{Reserved} *t5
266	{Immed} t1
267	{SOTC} t1
268	{Reserved} *t1
269	{Reserved} *i2
270	{APRVal} t1
271	{Reserved} *t3
272	{Format of LBAs / sec.} t4
273	{Logical Blocks per Second of Audio Playback} i2
274	{Reserved} *t4
275	{Output Port 0 Channel Selection} t4
276	{Output Port 0 Volume} i1
277	{Reserved} *t4
278	{Output Port 1 Channel Selection} t4
279	{Output Port 1 Volume} i1
280	{Reserved} *t4
281	{Output Port 2 Channel Selection} t4
282	{Output Port 2 Volume} i1
283	{Reserved} *t4
284	{Output Port 3 Channel Selection} t4
285	{Output Port 3 Volume} i1
286}
287
288# SEQUENTIAL ACCESS DEVICES
2890x10 "Device Configuration Page" {
290	{Reserved} *t1
291	{Change Active Partition} t1
292	{Change Active Format} t1
293	{Active Format} t5
294	{Active Partition} i1
295	{Write Buffer Full Ratio} i1
296	{Write Buffer Empty Ratio} i1
297	{Write Delay Time} i2
298	{Data Buffer Recovery} t1
299	{Block Identifiers Support} t1
300	{Report Setmarks} t1
301	{Automatic Velocity Control} t1
302	{Stop on Consecutive Filemarks} t2
303	{Recover Buffer Order} t1
304	{Report Early-Warning} t1
305	{Gap Size} i1
306	{EOD Defined} t3
307	{Enable EOD Generation} t1
308	{Synchronize at Early-Warning} t1
309	{Reserved} *t3
310	{Buffer Size at Early-Warning} i3
311	{Select Data Compression Algorithm} i1
312	{Reserved} *t5
313	{SCSI-3 Associated Write Protect} t1
314	{SCSI-3 Persistent Write Protect} t1
315	{SCSI-3 Permanent Write Protect} t1
316}
317
3180x0f "Data Compression Page" {
319	{Data Compression Enabled} t1
320	{Date Compression Capable} t1
321	{Reserved} *t6
322	{Data Decompression Capable} t1
323	{Data Decompression Report on Exception} t2
324	{Reserved} *t5
325	{Compression Algorithm} i4
326	{Decompression Algorithm} i4
327	{Reserved} *i4
328}
329
330# Removable devices
3310x1b "Removable Block Access Capacities Page" {
332	{System Floppy Type Device} t1
333	{Supports Reporting Format Progress} t1
334	{Reserved} *t6
335	{Non CD Optical Device} t1
336	{Single or Multiple LUN Supported} t1
337	{Reserved} *t3
338	{Total Logical Units Supported} t3
339	{Reserved} *i8
340}
341
342# CD-ROM (and CD-R[W]) devices
3430x2a "CD capabilities and mechanical status page" {
344	{Reserved} *t4
345	{Method 2} t1
346	{CD-RW Read} t1
347	{CD-R Read} t1
348	{Reserved} *t4
349	{Test Write} t1
350	{CD-RW Write} t1
351	{CD-R Write} t1
352	{Reserved} *t1
353	{Multi Session} t1
354	{Mode 2 Form 2} t1
355	{Mode 2 Form 1} t1
356	{Digital Port (2)} t1
357	{Digital Port (1)} t1
358	{Composite} t1
359	{Audio Play} t1
360	{Read Bar Code} t1
361	{UPC} t1
362	{ISRC} t1
363	{C2 Pointers are supported} t1
364	{R-W De-interleaved & corrected} t1
365	{R-W Supported} t1
366	{CD-DA Stream is Accurate} t1
367	{CD-DA Commands Supported} t1
368	{Loading Mechanism Type} t3
369	{Reserved} *t1
370	{Eject} t1
371	{Prevent Jumper} t1
372	{Lock State} t1
373	{Lock} t1
374	{Reserved} *t4
375	{S/W Slot Selection} t1
376	{Changer Supports Disc Present reporting} t1
377	{Separate Channel Mute Supported} t1
378	{Separate volume levels per channel} t1
379	{Maximum Read Speed Supported (kBps)} i2
380	{Number of Volume Leves Supported} i2
381	{Buffer Size supported by Drive (KB)} i2
382	{Current Read Speed Selected (kBps)} i2
383	{Reserved} *i1
384	{Reserved} *t2
385	{Length} t2
386	{LSBF} t1
387	{RCK} t1
388	{BCK} t1
389	{Reserved} *t1
390	{Maximum Write Speed Supported (kBps)} i2
391	{Current Write Speed Supported (kBps)} i2
392};
393
3940x00 "Vendor-Specific";
395