xref: /freebsd/share/misc/scsi_modes (revision 70e0bbedef95258a4dadc996d641a9bebd3f107d)
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
950x09 "Peripheral Device Page" {
96	{Interface Identifier} i2
97	{Reserved} *i1
98	{Reserved} *i1
99	{Reserved} *i1
100	{Reserved} *i1
101}
102
1030x1a "Power Control" {
104	{Reserved} *i1
105	{Reserved} *t6
106	{Idle} t1
107	{Standby} t1
108	{Idle Condition Timer} i4
109	{Standby Condition Timer} i4
110}
111
112# DIRECT ACCESS DEVICES
1130x08 "Caching Page" {
114	{IC} t1
115	{ABPF} t1
116	{CAP} t1
117	{DISC} t1
118	{SIZE} t1
119	{WCE} t1
120	{MF} t1
121	{RCD} t1
122	{Demand Retention Priority} t4
123	{Write Retention Priority} t4
124	{Disable Pre-fetch Transfer Length} i2
125	{Minimum Pre-fetch} i2
126	{Maximum Pre-fetch} i2
127	{Maximum Pre-fetch Ceiling} i2
128}
129
1300x05 "Flexible Disk Page" {
131	{Transfer rate} i2
132	{Number of heads} i1
133	{Sectors per track} i1
134	{Data bytes per sector} i2
135	{Number of cylinders} i2
136	{Starting cylinder-write precompensation} i2
137	{Starting cylinder-reduced write current} i2
138	{Drive step rate} i2
139	{Drive step pulse width} i1
140	{Head settle delay} i2
141	{Motor on delay} i1
142	{Motor off delay} i1
143	{TRDY} t1
144	{SSN} t1
145	{MO} t1
146	{Reserved} *t5
147	{Reserved} *t4
148	{SPC} t4
149	{Write Compensation} i1
150	{Head load delay} i1
151	{Head unload delay} i1
152	{Pin 34} t4
153	{Pin 2} t4
154	{Pin 4} t4
155	{Pin 1} t4
156	{Medium rotation rate} i2
157	{Reserved} *i1
158	{Reserved} *i1
159}
160
1610x03 "Format Device Page" {
162	{Tracks per Zone} i2
163	{Alternate Sectors per Zone} i2
164	{Alternate Tracks per Zone} i2
165	{Alternate Tracks per Logical Unit} i2
166	{Sectors per Track} i2
167	{Data Bytes per Physical Sector} i2
168	{Interleave} i2
169	{Track Skew Factor} i2
170	{Cylinder Skew Factor} i2
171	{SSEC} t1
172	{HSEC} t1
173	{RMB} t1
174	{SURF} t1
175	{Reserved} *t4
176}
177
1780x0b "Medium Types Supported Page" {
179	{Reserved} *i1
180	{Reserved} *i1
181	{Medium type one supported} i1
182	{Medium type two supported} i1
183	{Medium type three supported} i1
184	{Medium type four supported} i1
185}
186
187# Notch page (0x0c)
1880x0c "Notch and Partition Page";
189
1900x01 "Read-Write Error Recovery Page" {
191	{AWRE (Auto Write Reallocation Enbld)} t1
192	{ARRE (Auto Read Reallocation Enbld)} t1
193	{TB (Transfer Block)} t1
194	{RC (Read Continuous)} t1
195	{EER (Enable Early Recovery)} t1
196	{PER (Post Error)} t1
197	{DTE (Disable Transfer on Error)} t1
198	{DCR (Disable Correction)} t1
199	{Read Retry Count} i1
200	{Correction Span} i1
201	{Head Offset Count} i1
202	{Data Strobe Offset Count} i1
203	{Reserved} *i1
204	{Write Retry Count} i1
205	{Reserved} *i1
206	{Recovery Time Limit} i2
207}
208
2090x04 "Rigid Disk Drive Geometry Page" {
210	{Number of Cylinders} i3
211	{Number of Heads} i1
212	{Starting Cylinder-Write Precompensation} i3
213	{Starting Cylinder-Reduced Write Current} i3
214	{Drive Step Rate} i2
215	{Landing Zone Cylinder} i3
216	{Reserved} *t6
217	{RPL} t2
218	{Rotational Offset} i1
219	{Reserved} *i1
220	{Medium Rotation Rate} i2
221	{Reserved} *i1
222	{Reserved} *i1
223}
224
2250x07 "Verify Error Recovery Page" {
226	{Reserved} *t4
227	{EER} t1
228	{PER} t1
229	{DTE} t1
230	{DCR} t1
231	{Verify Retry Count} i1
232	{Verify Correction Span} i1
233	{Reserved} *i1
234	{Reserved} *i1
235	{Reserved} *i1
236	{Reserved} *i1
237	{Reserved} *i1
238	{Verify Recovery Time Limit} i2
239}
240
2410x0E "CD-ROM Audio Control Parameters Page" {
242	{Reserved} *t5
243	{Immed} t1
244	{SOTC} t1
245	{Reserved} *t1
246	{Reserved} *i2
247	{APRVal} t1
248	{Reserved} *t3
249	{Format of LBAs / sec.} t4
250	{Logical Blocks per Second of Audio Playback} i2
251	{Reserved} *t4
252	{Output Port 0 Channel Selection} t4
253	{Output Port 0 Volume} i1
254	{Reserved} *t4
255	{Output Port 1 Channel Selection} t4
256	{Output Port 1 Volume} i1
257	{Reserved} *t4
258	{Output Port 2 Channel Selection} t4
259	{Output Port 2 Volume} i1
260	{Reserved} *t4
261	{Output Port 3 Channel Selection} t4
262	{Output Port 3 Volume} i1
263}
264
265# SEQUENTIAL ACCESS DEVICES
2660x10 "Device Configuration Page" {
267	{Reserved} *t1
268	{Change Active Partition} t1
269	{Change Active Format} t1
270	{Active Format} t5
271	{Active Partition} i1
272	{Write Buffer Full Ratio} i1
273	{Write Buffer Empty Ratio} i1
274	{Write Delay Time} i2
275	{Data Buffer Recovery} t1
276	{Block Identifiers Support} t1
277	{Report Setmarks} t1
278	{Automatic Velocity Control} t1
279	{Stop on Consecutive Filemarks} t2
280	{Recover Buffer Order} t1
281	{Report Early-Warning} t1
282	{Gap Size} i1
283	{EOD Defined} t3
284	{Enable EOD Generation} t1
285	{Synchronize at Early-Warning} t1
286	{Reserved} *t3
287	{Buffer Size at Early-Warning} i3
288	{Select Data Compression Algorithm} i1
289	{Reserved} *t5
290	{SCSI-3 Associated Write Protect} t1
291	{SCSI-3 Persistent Write Protect} t1
292	{SCSI-3 Permanent Write Protect} t1
293}
294
2950x0f "Data Compression Page" {
296	{Data Compression Enabled} t1
297	{Date Compression Capable} t1
298	{Reserved} *t6
299	{Data Decompression Capable} t1
300	{Data Decompression Report on Exception} t2
301	{Reserved} *t5
302	{Compression Algorithm} i4
303	{Decompression Algorithm} i4
304	{Reserved} *i4
305}
306
307# Removable devices
3080x1b "Removable Block Access Capacities Page" {
309	{System Floppy Type Device} t1
310	{Supports Reporting Format Progress} t1
311	{Reserved} *t6
312	{Non CD Optical Device} t1
313	{Single or Multiple LUN Supported} t1
314	{Reserved} *t3
315	{Total Logical Units Supported} t3
316	{Reserved} *i8
317}
318
319# CD-ROM (and CD-R[W]) devices
3200x2a "CD capabilities and mechanical status page" {
321	{Reserved} *t4
322	{Method 2} t1
323	{CD-RW Read} t1
324	{CD-R Read} t1
325	{Reserved} *t4
326	{Test Write} t1
327	{CD-RW Write} t1
328	{CD-R Write} t1
329	{Reserved} *t1
330	{Multi Session} t1
331	{Mode 2 Form 2} t1
332	{Mode 2 Form 1} t1
333	{Digital Port (2)} t1
334	{Digital Port (1)} t1
335	{Composite} t1
336	{Audio Play} t1
337	{Read Bar Code} t1
338	{UPC} t1
339	{ISRC} t1
340	{C2 Pointers are supported} t1
341	{R-W De-interleaved & corrected} t1
342	{R-W Supported} t1
343	{CD-DA Stream is Accurate} t1
344	{CD-DA Commands Supported} t1
345	{Loading Mechanism Type} t3
346	{Reserved} *t1
347	{Eject} t1
348	{Prevent Jumper} t1
349	{Lock State} t1
350	{Lock} t1
351	{Reserved} *t4
352	{S/W Slot Selection} t1
353	{Changer Supports Disc Present reporting} t1
354	{Separate Channel Mute Supported} t1
355	{Separate volume levels per channel} t1
356	{Maximum Read Speed Supported (kBps)} i2
357	{Number of Volume Leves Supported} i2
358	{Buffer Size supported by Drive (KB)} i2
359	{Current Read Speed Selected (kBps)} i2
360	{Reserved} *i1
361	{Reserved} *t2
362	{Length} t2
363	{LSBF} t1
364	{RCK} t1
365	{BCK} t1
366	{Reserved} *t1
367	{Maximum Write Speed Supported (kBps)} i2
368	{Current Write Speed Supported (kBps)} i2
369};
370
3710x00 "Vendor-Specific";
372